Отдельной темой сделал Дан файл товар, который содержит сведения об экспортируемых товарах с указанным наименованием товара страна импорта товара и объемом постоянной партии. Составить список стран в которые экспортируются данные товары и указать общий объем его экспорта. Вот такая задача, нужно до завтра человеку.
мисс_граффити
12.04.2007 19:45
показывай попытки человека ее решить... З.Ы. Список как динамическая структура или список - в смысле вывести столбиком на экран?
South Fruit
12.04.2007 20:03
Нету рядом человека то там короче что то типа должны вевестисть все страны и общий объем этих стран, или по отдельности, воть
Tan
12.04.2007 20:12
Список как структура данных или просто на экране набор символов в виде списка ??? Ты не ответил на вопрос мисс_граффити.
South Fruit
12.04.2007 20:54
Список как структура данных и вывод на экран. Вывести на экран.
South Fruit
12.04.2007 22:08
Ребят, помогите, а то у человека проблемы будут ...
мисс_граффити
12.04.2007 22:11
а в чем, собственно, проблема? прочитал запись из файла. посмотрел, нужный ли это товар. если да - партию прибавил к объему, страну добавил в список.
South Fruit
12.04.2007 22:58
Я повторюсь что задача не для меня, мне ей некогда заниматься, меня попросили разместить я разместил и прощу помочь. Если кто то способен разместить (написать) код задачи, то девушка Екатерина будет вам безмерно благодарна.
мисс_граффити
12.04.2007 23:13
Цитата
Я повторюсь что задача не для меня, мне ей некогда заниматься
Ты, конечно, извини, но мне эта девушка Екатерина - никто. И если ей неохота заниматься своей задачей, ради чего я буду? Ни у Екатерины, ни у меня от этого знаний не прибавится. Только преподавателя обманем этими действиями.
South Fruit
12.04.2007 23:19
У нее есть знание и задача, но не совсем правильная и ей нужна помощь, ну что у вас совсем души нет? Вам же не сложно, а?
var Tov: file of zap; work: zap; Name,st: string; mas: array[1..10] of string; End_Menu: boolean; vid: byte;
procedure Name_File; begin Name:='Tovar'; end;
procedure AddRec; begin Writeln ('Ввод записи № ',FilePos(Tov)+1); with work do begin Write('Введите название товара: '); readln (Tovar); Write('Введите страну экспортера: '); readln (Strana); Write('Введите объем поставок: '); readln (Obyom); Write(Tov,work); end; end;
procedure Creat_File; var i,kol: integer; begin Name_File; Assign(Tov, name); Rewrite(Tov); Writeln ('Создание сведений о товаре'); Write ('Введите количество записей не большее 10: '); Readln(kol); for i:=1 to kol do AddRec; Writeln ('Создания сведений о товаре завершено'); Writeln ('Файл данных имеет ',FileSize(Tov),' записи'); Close(Tov); end;
procedure OutputRec; begin Read(Tov, work); with work do begin write('Запись № ',FilePos(Tov),' :'); Writeln('Страна: ',Strana,'| товар: ',Tovar,'| объем поставок: ',Obyom:6:4,''); end; end;
procedure OutputAllRec; begin Name_File; Assign(Tov, Name); {$I-} Reset(Tov); {$I+} if Ioresult = 0 then begin Seek(Tov, 0); writeln ('Вывод записей'); while (not Eof(Tov)) do OutputRec; end else writeln('Файла с именем '+Name+' на диске нет'); end;
procedure Poisk_Stran; var mas: array[1..10] of string; Tov: file of zap; work: zap; maska: StTovar; Rez_Find: boolean; CountRec,nom: integer; sum: real; begin sum:=0; nom:=1; Name_File; Assign(Tov, Name); {$I-} Reset(Tov); {$I+} if IOresult = 0 then begin Write('Введите интересующий товар: '); readln(maska); Rez_Find:=false; CountRec:=0; while (not Eof(Tov)) do begin read(Tov,work); with work do if (pos(maska, Tovar) <> 0) and (length(maska) = length(Tovar)) then begin mas[nom]:=Strana; sum:=sum+obyom; writeln (mas[nom]); inc(nom); end; end; writeln ('Общий объем поставок: ',sum:6:4,''); Close(Tov); end else writeln ('Файла с именем '+Name+' на диске нет'); end;
begin ClrScr; End_Menu:=false; repeat writeln('*** Экспорт товаров ***'); writeln('Выберите действие'); writeln('1 - создание нового файла'); writeln('2 - просмотр всех записей'); writeln('3 - создание списка экспортеров'); writeln('0 - завершение работы'); write('Ваш выбор: '); readln(vid); case vid of 1: Creat_File; 2: OutputAllRec; 3: Poisk_Stran; 0: End_Menu:=true; end; writeln('Для продолжения нажмите Enter'); readln; ClrScr; until End_Menu; end.
Но
Цитата
У нее есть знание и задача, но не совсем правильная и ей нужна помощь
пусть эта девушка в следующий раз сама создает темы, задает вопросы и пытается делать программы... А раз у нее есть знания, то она сама сможет разобраться в вышеизложенной проге...
p.p.s. в поиске экспортеров добавила проверку товара еще и по длинне троки:
if (pos(maska, Tovar) <> 0) and (length(maska) = length(Tovar)) then
Теперь вроде должен выводить точно)))
мисс_граффити
13.04.2007 2:10
Небольшие замечания:
StObyom = string[10];
Почему строка? Объем продаж - это число... Вещественное, скорее всего. Зачем тебе заморочки с преобразованиями?
pos(maska, Tovar) <> 0
не стоит так делать... ведь товары могут быть, например: игрушка игрушка1 игрушка2 большая_игрушка и т.д.
внятного ответа про список как структуру данных я так и не услышала...
Айра
13.04.2007 3:42
Цитата
Почему строка? Объем продаж - это число... Вещественное, скорее всего. Зачем тебе заморочки с преобразованиями?
Сначала делала нормально, но что-то не так ввела и компилятор возмущался. Сейчас все работает.
South Fruit
13.04.2007 8:20
Цитата
пусть эта девушка в следующий раз сама создает темы, задает вопросы и пытается делать программы... А раз у нее есть знания, то она сама сможет разобраться в вышеизложенной проге...
Хорошо Айрочка, просто у нее сейчас проблемы с инетом.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.