|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.06.2010, 15:46 | #1 |
Регистрация: 22.06.2010
Сообщений: 4
|
База данных
Помогите, пожалуйста, поправить программку. Я что-то пыталась делать, но как-то не очень получилось:
Создайте базу данных с возможностью поиска. Введите 10 записей. Данные должны быть сохранены в типизированом файле, а результаты поиска должны быть представлены на екране или в текстовом файле, в зависимости от выбора пользователя: program baza; type student = record familija, imia, data_razdenija: string[15]; end; var stud: student; a: array[1 .. 10] of student; i, n, k: integer; c, t:char; x: integer; f: file of student; s: student; j: longint; procedure new(var s: student); begin with s do begin write('Familija studenta: '); readln(s.familija); write('Imia: '); readln(s.imia); write('Data rozdenija: '); readln(s.data_rozdenija); end; Write(f, s); end; procedure pisem(var s: student); begin with s do begin write('Familija studenta: '); readln(s.familija); write('Imia: '); readln(s.imia); write('Data rozdenija: '); readln(s.data_rozdenija); end; Write(f, s); end; procedure vid(var s: student); begin with s do begin write(a[i].familija:14); write(a[i].imia:12); write(a[i].data_rozdenija:4); end; end; procedure poisk(var x: integer); begin assign(f, 'fail.dat'); WriteLn ('Vvedite familiju studenta: '); writeln('Spisok:'); writeln('Familija studenta':14,'Imia':12,'Data rozdenija':4); vid(a[i]); end; begin assign(f, 'fail.dat'); writeln('Naidiom studenta po familiji'); writeln; repeat writeln('N: sozdanie novogo faila'); writeln('P: popolnenie faila'); writeln('V: soderzanije faila'); writeln('F: poisk'); writeln('X: konec raboti'); readln(t); if (upcase(t)='N') then begin rewrite(f); c:='D'; i:=0; repeat if (upcase(c)='D') then begin i:=i+1; naujas(a[i]); writeln('Escio budete vvodit? D/N'); readln(c); end else begin writeln('Nado bilo vvesti D ili N'); readln(c); end; until (upcase(c)='N'); close(f); end; if (upcase(t)='P') then begin reset(f); j := filesize(f); seek(f, j); writeln('Nacinaem popolnenie faila'); c:='D'; i:=0; repeat if (upcase(c)='D') then begin i:=i+1; pisem(a[i+j]); writeln('Escio budete vvodit? D/N'); readln(c); end else begin writeln('Nado bilo vvesti D ili N'); readln(c); end; until (upcase(c)='N'); close(f); end; if (upcase(t)='V') then begin reset(f); if filesize(f) = 0 then writeln('Faila netu') else begin writeln('Spisok:'); writeln('Familija studenta':14,'Imia':12,'Data rozdenija':4); for i:= 1 to filesize(f) do vid(a[i]); end; close(f); end; if (upcase(t)='F') then begin reset(f); x := 8; poisk(x); close(f); end; if (upcase(t)<>'F') and (upcase(t)<>'N') and (upcase(t)<>'V') and (upcase(t)<>'P') and (upcase(t)<>'X') then writeln('takoi operacii netu'); until upcase(t)='X'; end. Readln; end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
База данных | Spaun | Помощь студентам | 4 | 23.05.2010 14:56 |
Небольшая база в Open Office База данных. | sashaman | Фриланс | 3 | 11.04.2010 20:13 |
База данных | DirtyGari | Помощь студентам | 7 | 02.12.2009 08:04 |
База данных с возможностью приема данных из файлов Excel | Al_Sha | БД в Delphi | 6 | 16.10.2009 15:34 |
База Данных | xxasb07 | Помощь студентам | 2 | 09.12.2008 17:25 |