Переворот строки | Язык Паскаль

Переворот строки

Перевернуть строку, то есть последние символы должны стать первыми, а первые последними.

Перебрать символы строки от начала до ее середины:

  1. очередной символ сохранить в переменной c;
  2. на его место записать противоположный с конца;
  3. на место противоположного записать сохраненный в c.
var
    s: string; // строка
    len: byte; // длина строки
    c: char; // для временного хранения символа
    i: byte;

begin
    write('Введите строку: ');
    readln(s);
    len := length(s);

    for i := 1 to len div 2 do begin
        c := s[i];
        s[i] := s[len-i+1];
        s[len-i+1] := c;
    end;

    writeln(s);
end.

Другой способ решения - это не менять исходную строку, а создать новую с обратным порядком символов. При этом исходная строка перебирается с конца.

var 
    a, b: string;
    i: integer;

begin
    readln(a);

    b := '';

    for i := length(a) downto 1 do 
        b := b + a[i];

    writeln(b); 
end.