Помощь - Поиск - Пользователи - Календарь
Полная версия: Записи
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
KATYSHA
Нужно создать файл "Обувь",включающий информацию:наименование,артикул(с указанием:м-мужская,ж-женская,д-детская),стоимость,кол-во пар на складе.Определить,какая обувь есть на складе в большем кол-ве.Обуви какой категории больше всего.

give_rose.gif
volvo
KATYSHA,
посмотри здесь:
Расчётная работа - было нечто подобное (только про магазин игрушек)... Принцип решения - тот же, останется поменять названия полей и чуть-чуть подправить логику программы
KATYSHA
Спасибо,я там смотрела,но видимо плохо. smile.gif Volvo,посмотри пожалуйста в предыдущей темке 2 лабы по строкам и файлам blush.gif
KATYSHA
Я написала вот такую программку,но она не работает.Не подскажите ошибки? rolleyes.gif

Program DemoRecord;
Uses crt;
Type zap=record
naim,art:string[20];
stst,kol:integer;
end;
Var z:zap;
f:file of zap;
n,max:integer;
s:string;
Begin
clrscr;
assign(f,'C:/TP/BIN/K');
{$I-}
reset(f);
{$I+};
if IOResult<>0 then
begin
writeln('File ne dostupen! Sozdayu novii!');
rewrite(f);reset(f);
end;

if FileSize(f)=0 then
begin
writeln('File pust!');
repeat
write('наименование ');readln(z.naim);
if z.naim<>'' then
begin
write('артикул');readln(z.art);
write('стоимость ');readln(z.stst);
write('количество ');readln(z.kol);
write(f,z);
end;
until z.naim='';
end;
writeln;

seek(f,0);
while not eof(f) do
begin
read(f,z);
writeln(z.naim,' ',z.art,' ',z.stst,' ',z.kol);
end;
writeln;

seek(f,0);
while not Eof(f) do
begin
read(f,z);
if z.kol>max then max:=z.kol;
end;
seek(f,0);
writeln('на складе в большем количестве: ');
while not Eof(f) do
begin
read(f,z);
if z.kol=max then writeln(z.naim,' ',z.kol,' ',z.art,' ',z.stst);
end;
writeln;

seek(f,0);
writeln('обуви данной категории больше всего:');
while not Eof(f) do
begin
read(f,z);
if z.kol=max then writeln(z.art);
end;
readln
end.
volvo
KATYSHA, что значит
Цитата
она не работает

? Нормально работает, правда есть несколько недочетов, но это же не ошибки !!!

Где именно ты считаешь, что работает не так, как нужно?
KATYSHA
да программку то я написала,а что вводить не знаю,вот и кажется,что не работает. smile.gif
volvo
KATYSHA, все нормально работает... Я тоже не особо знаю, что вводить - вводил просто данные с потолка: 2 строки, 2 целых числа; еще 2 строки - еще 2 целых... И так пока не надоело (6 записей)... Потом при запросе "наименование" нажал Enter, и программа отработала...

Единственное что сделай - там где СОЗДАЕШЬ новый файл убери сразу Reset, это лишнее... И еще: я бы все Seek(f, 0) тоже заменил на Reset(f)... В конце программы не забудь Close(f) добавить...
KATYSHA
Цитата(volvo @ 1.12.2005 21:35)
KATYSHA, все нормально работает... Я тоже не особо знаю, что вводить - вводил просто данные с потолка: 2 строки, 2 целых числа; еще 2 строки - еще 2 целых... И так пока не надоело (6 записей)... Потом при запросе "наименование" нажал Enter, и программа отработала...

Единственное что сделай - там где СОЗДАЕШЬ новый файл убери сразу Reset, это лишнее... И еще: я бы все Seek(f, 0) тоже заменил на Reset(f)... В конце программы не забудь Close(f) добавить...



!priva1.gif ну спасибочки
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.