ВУЗ:
Составители:
Рубрика:
For i := 1 to NWords-1 do {лексикографическое упорядочение
слов}
For j := i+1 to NWords do
If Words[i]>Words[j] then
begin
Tmp := Words[i]; Words[i]:=Words[j]; Words[j]:=Tmp
end;
WriteLn; WriteLn('О т в е т');
WriteLn('Лексикографически упорядоченный массив слов:');
For i := 1 to NWords do Write(Words[i], ' ');
WriteLn; ReadLn
END.
Пример 7.5. Проверить, имеется ли в линейной записи заданной математической
формулы баланс открывающих и закрывающих скобок.
Система тестов
Номер
теста
Проверяемый
случай
Данные Результат
1
При просмотре линейной
записи слева направо первой
встречается закрывающая
скобка
''a)b+1('' ''Нет баланса''
2
Первой встречается
открывающая скобка, но число
открывающих и закрывающих
скобок не совпадает
''(a+b))'' ''Нет баланса''
3 Есть баланс скобок ''(a+b/(c*d))'' ''Есть баланс''
Школьный АЯ
алг Баланс скобок(арг лит S, рез лит Otvet)
нач цел Dlina, Flag, i
i:=1; Flag:=0; Dlina:=длин(S)
нц пока (Flag>=0) и (i<=Dlina)
если S[i] = "("
то Flag:=Flag+1
все
если S[i] = ")"
то Flag:=Flag-1
все
i:=i+1
кц
если Flag=0
то Otvet := “Есть баланс”
иначе Otvet := “Нет баланса”
все
кон
Turbo Pascal
Program Balance;
Uses Crt;
Var S : String;
Dlina, Flag, i : Integer;
For i := 1 to NWords-1 do {лексикографическое упорядочение слов} For j := i+1 to NWords do If Words[i]>Words[j] then begin Tmp := Words[i]; Words[i]:=Words[j]; Words[j]:=Tmp end; WriteLn; WriteLn('О т в е т'); WriteLn('Лексикографически упорядоченный массив слов:'); For i := 1 to NWords do Write(Words[i], ' '); WriteLn; ReadLn END. Пример 7.5. Проверить, имеется ли в линейной записи заданной математической формулы баланс открывающих и закрывающих скобок. Система тестов Номер Проверяемый Данные Результат теста случай При просмотре линейной записи слева направо первой 1 ''a)b+1('' ''Нет баланса'' встречается закрывающая скобка Первой встречается открывающая скобка, но число 2 ''(a+b))'' ''Нет баланса'' открывающих и закрывающих скобок не совпадает 3 Есть баланс скобок ''(a+b/(c*d))'' ''Есть баланс'' Школьный АЯ алг Баланс скобок(арг лит S, рез лит Otvet) нач цел Dlina, Flag, i i:=1; Flag:=0; Dlina:=длин(S) нц пока (Flag>=0) и (i<=Dlina) если S[i] = "(" то Flag:=Flag+1 все если S[i] = ")" то Flag:=Flag-1 все i:=i+1 кц если Flag=0 то Otvet := “Есть баланс” иначе Otvet := “Нет баланса” все кон Turbo Pascal Program Balance; Uses Crt; Var S : String; Dlina, Flag, i : Integer;
Страницы
- « первая
- ‹ предыдущая
- …
- 89
- 90
- 91
- 92
- 93
- …
- следующая ›
- последняя »