|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.12.2007, 09:02 | #1 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
Выяснить, имеются ли в школе однофамильцы. Паскаль.
Сведения об ученике состоят из его имени и фамилии и названия
класса (года обучения и буквы), в котором он учится. Дан файл f, содержащий сведения об учениках школы. Выяснить, имеются ли в школе однофамильцы. Вот мой программный код: <code> Program rgr7; uses crt; type stud=record fam,nam:string; god:integer; klass:char; end; var f:file of stud; a:array[1..30] of stud; j,n,i:integer; b:stud; begin clrscr; assign (f,'D:\stud.int'); rewrite (f); write ('Vvedite kolichestvo elementov: '); readln (n); for i:=1 to n do with a[i] do begin writeln (' Danye pro ',i,' uchenika'); write (' Familiya: '); readln (fam); write (' Imay: '); readln (nam); write (' Klass: '); readln (klass); write (' God: '); readln (god); write (f,a[i]); end; close (f); reset (f); for i:=1 to n do begin read (f,a[i]); inc(i); end; close (f); for j:=1 to n-2 do for i:=1 to j-2-n do if a[i].fam > a[i+1].fam then begin b:=a[i]; a[i]:=a[i+1]; a[i+1]:=b; end; for i:=1 to n-1 do begin if a[i].fam = a[i+1].fam then with a[i] do begin writeln ('============================'); writeln (fam); writeln (' ',nam); writeln (' ',klass); writeln (' ',god); writeln ('============================'); end; end; end. </code> Но он не правильно работает т.е. выдает только вторую запись, а задача то состоит в другом. Нужно вывести однофамильцев. |
01.12.2007, 09:18 | #2 | |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
Цитата:
|
|
01.12.2007, 09:23 | #3 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
|
01.12.2007, 09:50 | #4 | |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
Цитата:
|
|
23.01.2010, 11:08 | #5 |
Пользователь
Регистрация: 21.11.2009
Сообщений: 19
|
Простите за некропост, но все-таки как работать правильно должна данная задача?)
|
23.01.2010, 11:39 | #6 |
Форумчанин
Регистрация: 16.04.2009
Сообщений: 247
|
Вообще-то, сортировка пузырьком работает так: ровно n раз выполняется внешний цикл, и его счётчик никак не используется во внутреннем, а во внутреннем сравниваются подряд идущие элементы, и "прогоняются" нарушающие порядок. Вот так:
Код:
Последний раз редактировалось megachuhancer; 23.01.2010 в 11:49. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
выяснить, встречается ли в данном тексте группа букв one; | hidalgo | Фриланс | 7 | 19.01.2010 10:57 |
Как выяснить каким образом обрабатывается бинарник | yarilo | Помощь студентам | 1 | 22.04.2009 09:57 |
Выяснить,имеются ли в матрице ненулевые элементы. | Брутальный М. | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 06.01.2009 13:20 |
Turbo Pascal, домашнее задание в школе | popkorm | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 18.11.2008 14:57 |