
Code
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then
begin
obm:=a[i];
a[i]:=a[j];
a[j]:=obm;
end;
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
Провинциалка |
![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 57 Пол: Женский Реальное имя: Ольга Репутация: ![]() ![]() ![]() |
Здравствуйте форумчане! Есть фрагмент программы на сортировку по возрастанию. Может ли кто-нибудь подсказать комментарии к строкам текста?
![]() Code for i:=1 to n-1 do for j:=i+1 to n do if a[i]>a[j] then begin obm:=a[i]; a[i]:=a[j]; a[j]:=obm; end; |
TarasBer |
![]()
Сообщение
#2
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
for i:=1 to n-1 do
for j:=i+1 to n do // по всем парам элементов смотрим
if a[i]>a[j] then // если они стоят не в том порядке
begin
obm:=a[i]; // то меняем их местами
a[i]:=a[j];
a[j]:=obm;
end;
-------------------- |
Провинциалка |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 57 Пол: Женский Реальное имя: Ольга Репутация: ![]() ![]() ![]() |
Спасибо! Но почему мы пишем n-1 и i+1 ???
Сообщение отредактировано: Провинциалка - |
TarasBer |
![]()
Сообщение
#4
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
Потому что в любой паре первый элемент (i) не может быть равен n, и второй элемент (j) не может быть равен первому.
-------------------- |
Провинциалка |
![]()
Сообщение
#5
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 57 Пол: Женский Реальное имя: Ольга Репутация: ![]() ![]() ![]() |
Благодарю!
Добавлено через 10 мин. Теперь понятно почему я задаю тут глупые вопросы - оказывается я не понимаю смысл значений i и j в этом примере! Может подскажете? ![]() program info_write; uses CRT; type inform=record num:byte; fio:string; adress:string; god_post: integer; end; var fv: file of inform; rv: array [1..20] of inform; n, i, j: byte; inf: inform; begin clrscr; WriteLn ('Vvedi kolichectvo sotrudnikov:'); ReadLn (n); WriteLn ('Vvedi informaciu o cheloveke: '); for i:=1 to n do begin ReadLn (rv[i].num); ReadLn (rv[i].fio); ReadLn (rv[i].adress); ReadLn (rv[i].god_post); end; for i:=1 to n-1 do for j:=i+1 to n do if rv[i].god_post > rv[j].god_post then begin inf:=rv[i]; rv[i]:=rv[j]; rv[j]:=inf; end; assign (fv, 'inform.doc'); rewrite (fv); for i:=1 to n do begin inf:=rv[i]; Write (fv, inf); end; close (fv); reset (fv); WriteLn ('Sortirovka po godam:'); While not eof (fv) do begin read (fv, inf); Write (inf.num, ' ', inf.fio, ' ', inf.adress, ' ', inf.god_post); WriteLn; end; Close (fv); readln; end. |
TarasBer |
![]()
Сообщение
#6
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
i, j - временные индексы.
-------------------- |
Lapp |
![]()
Сообщение
#7
|
|||||||||
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
|||||||||
![]() ![]() |
![]() |
Текстовая версия | 10.04.2025 9:23 |