Другие языки программирования и технологии
Помогите решить программу (паскаль)
Создать массив записей библиотечного каталога (<21), в котором есть название книги, автор, год издания. Данные пользователя вводит с клавиатуры. Осуществить вывод данных, поиск работ автора, фамилия которого вводится с клавиатуры.
Программу не решают!
Программу создают чтобы она решала.. .
За 100 руб. => Пиши в личку.
Программу создают чтобы она решала.. .
За 100 руб. => Пиши в личку.
Деньги вперед!!!
Лови. только тут данные храняться в отдельном файле, чтобы по 10 раз не воодить. по сути тот же массив, только данные сохраняются=)
program Project23;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
pack=record
NAZ:string[80];
FAM:string[40];
YEA:integer;
end;
tf=file of pack;
var
s:string;
j,a,b,p:integer;
f:tf;
q:pack;
label na4;
begin
s:='d:\katalog.dat';
assign(f,s);
try
reset(f);
except
rewrite(f);
end;
na4:
writeln('add record=1, read file=2, exit=0,clear file=3,vivesti po avtoru=4');
try
readln(p);
except
p:=-1;
end;
if (p<0)or(p>4) then begin
writeln('takoj komandi net');
goto na4;
end;
if p=0 then begin close(f); exit; end;
if p=1 then begin
seek(f,filesize(f));
a:=a xor a;
write('NAZVANIE: ');
readln(q.naz);
write('FAMILY: ');
readln(q.fam);
write('YEAR: ');
try
readln(q.yea);
write(f,q);
writeln('zapis dobavlena');
except
writeln('zapis ne verna');
writeln('zapis otmenena');
end;
readln;
goto na4;
end;
if p=2 then begin
seek(f,0);
while not eof(f) do
begin
writeln;
writeln;
read(f,q);
writeln('NAZVANIE: ',q.naz);
writeln('FAMILY: ',q.fam);
writeln('YEAR: ',q.yea);
end;
writeln('file viveden');
readln;
goto na4;
end;
if p=3 then begin
writeln('vi uvereni? vvedite "delete"');
readln(s);
if s='delete' then
begin
close(f);
rewrite(f);
writeln('file o4is4en');
end;
goto na4;
end;
if p=4 then begin
writeln('vvedite avtora');
readln(s);
seek(f,0);
while not eof(f) do
begin
read(f,q);
if s=q.fam then begin
writeln;
writeln;
writeln('NAZVANIE: ',q.naz);
writeln('FAMILY: ',q.fam);
writeln('YEAR: ',q.yea);
end;
end;
writeln('avtor viveden');
readln;
goto na4;
end;
end.
program Project23;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
pack=record
NAZ:string[80];
FAM:string[40];
YEA:integer;
end;
tf=file of pack;
var
s:string;
j,a,b,p:integer;
f:tf;
q:pack;
label na4;
begin
s:='d:\katalog.dat';
assign(f,s);
try
reset(f);
except
rewrite(f);
end;
na4:
writeln('add record=1, read file=2, exit=0,clear file=3,vivesti po avtoru=4');
try
readln(p);
except
p:=-1;
end;
if (p<0)or(p>4) then begin
writeln('takoj komandi net');
goto na4;
end;
if p=0 then begin close(f); exit; end;
if p=1 then begin
seek(f,filesize(f));
a:=a xor a;
write('NAZVANIE: ');
readln(q.naz);
write('FAMILY: ');
readln(q.fam);
write('YEAR: ');
try
readln(q.yea);
write(f,q);
writeln('zapis dobavlena');
except
writeln('zapis ne verna');
writeln('zapis otmenena');
end;
readln;
goto na4;
end;
if p=2 then begin
seek(f,0);
while not eof(f) do
begin
writeln;
writeln;
read(f,q);
writeln('NAZVANIE: ',q.naz);
writeln('FAMILY: ',q.fam);
writeln('YEAR: ',q.yea);
end;
writeln('file viveden');
readln;
goto na4;
end;
if p=3 then begin
writeln('vi uvereni? vvedite "delete"');
readln(s);
if s='delete' then
begin
close(f);
rewrite(f);
writeln('file o4is4en');
end;
goto na4;
end;
if p=4 then begin
writeln('vvedite avtora');
readln(s);
seek(f,0);
while not eof(f) do
begin
read(f,q);
if s=q.fam then begin
writeln;
writeln;
writeln('NAZVANIE: ',q.naz);
writeln('FAMILY: ',q.fam);
writeln('YEAR: ',q.yea);
end;
end;
writeln('avtor viveden');
readln;
goto na4;
end;
end.
создаешь запись типо такой
type
lib=record;
title,writer:string;
year:integer;
end;
массив записей >21 напр 30
var
mas:array [1..30] of lib;
ну и дальше google.ru в помощь, работа с записями в паскале
type
lib=record;
title,writer:string;
year:integer;
end;
массив записей >21 напр 30
var
mas:array [1..30] of lib;
ну и дальше google.ru в помощь, работа с записями в паскале
напишу вам за вознагрождение быстро и качественно, пишите в личку
Похожие вопросы
- Помогите решить программу в паскале)
- ПОЖАЛУЙСТА ПОМОГИТЕ РЕШИТЬ ПРОГРАММУ НА ПАСКАЛЕ!
- помогите решить программу на паскале
- Помогите решить задачу Паскаль
- Помогите исправить программу паскале(ввести номер месяца и вывести название времени года)
- помогите решить задачу паскаль срочно нужно ответ напишите
- Помогите решить на ПАСКАЛЕ!Увеличить четные числа массива размера N,на исходное значение первого четного числа.
- Помогите решить задачу паскаль (за вознаграждение)
- Помогите решить через Паскаль...
- Помогите решить в паскале