| [ домой ] | [ следующий ] [ начало главы ] [ предыдущий ] | [ содержание ] |
|
|
|
|
|
|
|
|
|
|
|
|
Школьный АЯ
алг Перевертыш (арг лит Slovo, рез лит Otvet)
надо | Otvet = "Перевертыш", если Slovo совпадает с собой
| после переворачивания
нач цел Dlina, i, лог Flag Dlina:=длин(Slovo) i:=1; Flag:=да нц пока (i<=Dlina/2) и Flag | цикл пока с прерыванием до Flag:=(Slovo[i]=Slovo[Dlina-i+1]) | первой несовпавшей пары букв, i:=i+1 | если такая имеется в слове кц
если Flag то Otvet:="Перевертыш" иначе Otvet:="Не перевертыш" все конИсполнение алгоритма
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- |
|
|
Program TurnOver;
Uses Crt;
Var Slovo : String;
Dlina, i : Integer;
Flag : Boolean;
BEGIN
ClrScr;
Write('Введите слово : '); ReadLn(Slovo);
Dlina:= Length(Slovo);
{Сравниваются пары букв: первая буква с последней, }
{вторая буква с предпоследней и т.д. }
i:=1; Flag := TRUE;
While (i <= Dlina/2) and Flag do {цикл до первой несовпавшей }
begin {пары букв (если такая есть)}
Flag := (Slovo[i]=Slovo[Dlina-i+1]);
i := i+1
end;
WriteLn; Write( 'О т в е т : слово ', Slovo);
If Flag then WriteLn(' перевертыш. ')
else WriteLn(' не перевертыш');
ReadLn
END.
CLS : INPUT "Введите слово : ", SLOVO$ Dlina = LEN(SLOVO$) ' Сравниваются пары букв: первая буква с последней, ' вторая буква с предпоследней и т.д. i = 1 : Flag = 0 WHILE (i<=Dlina/2) AND (Flag=0) 'цикл до первой несовпавшей пары букв Letter1$ = MID$(SLOVO$, i, 1) 'первая буква пары Letter2$ = MID$(SLOVO$, Dlina-i+1, 1) 'вторая буква пары IF Letter1$ = Letter2$ THEN i=i+1 ELSE Flag=1 WEND PRINT : PRINT "О т в е т : слово "; SLOVO$; IF Flag = 0 THEN PRINT " перевертыш." ELSE PRINT " не перевертыш." END
| [ домой ] | [ следующий ] [ начало главы ] [ предыдущий ] | [ содержание ] |