Другие языки программирования и технологии

объясните прогу. паскаль

Напишите на Pascal программу, которая принимает строку из трех символов и возвращает эти символы, расставленные по порядку последования. Например, INPUT: CBA OUTPUT: ABC program Help; uses crt; var S:string; i,j:integer; x:char; Begin Write('Введите строку: '); Readln(s); for i:=1 to (length(s)-1) do for j:=i+1 to length(s) do if S>S[j] then begin x:=S; S:=S[j]; S[j]:=x; end; Writeln('Сортированная строка: ',S); readln; End. кому не сложно помочь, объясните плиииз подробно что и для чего здесь использовано) зарание спасибо!
NJ
Nicu Jderu
72
Понимаю так, что программа писана не вами. А если вопрос формулируется "что и для чего здесь использовано", да еще подробно, то могу только посоветовать внимательно слушать на занятиях.

program Help;
uses crt; {это здесь не надо, т. к. не используется ничего из этого модуля}
var {секция объявления переменных}
S:string; {строковая переменная}
i,j:integer; {пара целых}
x:char; {и символьная}
Begin {начало программы}
Write('Введите строку: '); {приглашение ко вводу строки}
Readln(s); {чтение ввода пользователя в строковую переменную}
{начало сортировки пузырьком}
for i:=1 to (length(s)-1) do {цикл от 1 до предпоследнего символа строки }
for j:=i+1 to length(s) do {цикл от следующего символа до последнего}
if S[ i ] > S[j] then begin {если текущий больше последующих}
x:=S[ i ]; {он сохраняется во временной переменной}
S[ i ]:=S[j]; {на его место записывается последующий}
S[j]:=x; {на место последующего записывается бывший текущий}
{эти три строки выполняют перестановку двух символов строки}
end;
Writeln('Сортированная строка: ',S); {вывод результата}
readln; {задержка, чтобы программа не завершилась}
End. {конец программы}

Подробней не могу.
Sheetos
Sheetos
59 613
Лучший ответ
Это метод пузырьковой сортировки для строки произвольной длины. Описание найдешь в Интернете на слова "пузырьковая сортировка".
тут тебе на врядли помогут, спроси здесь http: //www .cyberforum. ru /pascal/ мне там решали такие задачи и обьясняли =)
program Help;
uses crt;
var S:string; описание переменной
i,j:integer; описание переменной
x:char; описание переменной
Begin запуск
Write('Введите строку: '); введенние данных
Readln(s); извлечение данных
for i:=1 to (length(s)-1) do запускается цикл перебора от 1 до (s-1)
for j:=i+1 to length(s) do запускается цикл перебора от 1 до (s-1)
if S>S[j] then оператор условия (проверяет больше ли S S[j])
begin запуск
x:=S; присваивают х значение s
S:=S[j]; присваивают S значение S[j];
S[j]:=x; присваивают S[j] значение x;
end; конец
Writeln('Сортированная строка: ',S); вывод S
readln;
End. конец