|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
15.10.2011, 20:50 | #1 (permalink) |
Новичок
Регистрация: 15.10.2011
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Ребят, помогите, пожалуйста, дорешать
uses crt type studlub = record nomerzach:string[30]; FIO:string[20]; mestorojd:string[20]; godrojd:string[6]; nomerstud:string[6]; hobbi:string[10]; end; var stud:studlub; f:file of studlub; g:text; i, max, n:word; begin clrscr; assign(f, 'stud.dat'); rewrite(f); writeln('Vvodite dannie o studentax'); repeat with stud do begin write('nomer zachetki: '); readln(nomerzach); write('FIO: ');readln(Fio); write('mestorojd: ');readln(mestorojd); write('Godrojdeniy: ');readln(godrojd); write('nomer studencheskogo: ');readln(nomerstud); write('hobbi: ');readln(hobbi); end; write(f, stud); clrscr; writeln ('ENTER-prodolghenie vvoda, ESC-zavershenie vvoda'); until readkey=#27; clrscr; reset(f); writeln('Spisok studentov:' :40); writeln; writeln('-----------------------------------------------------------------------'); writeln('| ьzacotki| FIO | Mesto rojd | God rojdeniy | Nomer stud | hobbi |'); writeln('-----------------------------------------------------------------------'); while not eof(f) do begin read(f, stud); with stud do begin gotoXY(1,whereY);write('| ',nomerzach); gotoXY(11,whereY);write('| ',Fio); gotoXY(21,whereY);write('| ',mestorojd); gotoXY(34,whereY);write('| ',godrojd); gotoXY(50,whereY);write('| ',nomerstud); gotoXY(63,whereY);write('| ',hobbi); gotoXY(73,whereY);write('|'); end; writeln; end; writeln; close(f); writeln('ENTER - exit programm'); readkey; end. |
15.10.2011, 20:50 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
У нас есть темы которые похожи на вашу Помогите пожалуйста Ребят, помогите, пожалуйста, с Pascal |
15.10.2011, 21:12 | #3 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Это-то как раз понятно, непонятно другое:
Что значит "произвести сортировку"? Какую сортировку? Что значит, например, "по году рождения" - выстроить в порядке убывания? Выбрать студентов с одинаковым годом рождения? А "по фамилии"? В алфавитном порядке расставить, что ли? Ну неужели трудно нормально сформулировать условие задачи? |
15.10.2011, 22:19 | #5 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
uses crt; type studlub = record nomerzach:string[8]; FIO:string[20]; mestorojd:string[20]; godrojd:word; nomerstud:string[6]; hobbi:string[8]; end; var stud:Array[1..100] of studlub; dummy:studlub; i,j,N:word; sort_type:byte; begin clrscr; N:=0; writeln('Vvodite dannie o studentax'); repeat Inc(N); with stud[N] do begin write('nomer zachetki: '); readln(nomerzach); write('FIO: ');readln(Fio); write('mestorojd: ');readln(mestorojd); write('Godrojdeniy: ');readln(godrojd); write('nomer studencheskogo: ');readln(nomerstud); write('hobbi: ');readln(hobbi); end; clrscr; writeln ('ENTER-prodolghenie vvoda, ESC-zavershenie vvoda'); until (readkey=#27) or (N=100); clrscr; writeln('Spisok studentov:'); writeln; writeln('-----------------------------------------------------------------------'); writeln('| Nzacotki | FIO | Mesto rojd | G.r. | N stud | hobbi |'); writeln('-----------------------------------------------------------------------'); for i:=1 to N do begin with stud[i] do begin gotoXY(1,whereY);write('| ',nomerzach); gotoXY(12,whereY);write('| ',Fio); gotoXY(33,whereY);write('| ',mestorojd); gotoXY(54,whereY);write('| ',godrojd); gotoXY(61,whereY);write('| ',nomerstud); gotoXY(70,whereY);write('| ',hobbi); gotoXY(79,whereY);write('|'); end; writeln; end; writeln; writeln('Press "Enter" to continue'); readln; clrscr; writeln('Sort by:'); writeln(' 1 - Alphabet'); writeln(' 2 - Year of birth'); readln(sort_type); clrscr; if sort_type=1 then begin for i:=1 to N do for j:=1 to N-i do if Ord(stud[j].FIO[1])>Ord(stud[j+1].FIO[1]) then begin dummy:=stud[j]; stud[j]:=stud[j+1]; stud[j+1]:=dummy; end; end else begin for i:=1 to N do for j:=1 to N-i do if stud[j].godrojd<stud[j+1].godrojd then begin dummy:=stud[j]; stud[j]:=stud[j+1]; stud[j+1]:=dummy; end; end; writeln('Spisok studentov posle sortirovki:'); writeln; writeln('-----------------------------------------------------------------------'); writeln('| Nzacotki | FIO | Mesto rojd | G.r. | N stud | hobbi |'); writeln('-----------------------------------------------------------------------'); for i:=1 to N do begin with stud[i] do begin gotoXY(1,whereY);write('| ',nomerzach); gotoXY(12,whereY);write('| ',Fio); gotoXY(33,whereY);write('| ',mestorojd); gotoXY(54,whereY);write('| ',godrojd); gotoXY(61,whereY);write('| ',nomerstud); gotoXY(70,whereY);write('| ',hobbi); gotoXY(79,whereY);write('|'); end; writeln; end; writeln; writeln('ENTER - exit programm'); readkey; end. |
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
16.10.2011, 08:36 | #6 (permalink) |
Новичок
Регистрация: 15.10.2011
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Спасибо большое! буду разбираться
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|