IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> задача с текстовым файлом *, с игрушками
Димас
сообщение 12.03.2007 19:01
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 90
Пол: Мужской
Реальное имя: Дима

Репутация: -  1  +


вот ещё одну задачу никак осилить не могу wacko.gif

Дано файл Assort , содержащий свединья об игрушках: указывается название игрушки, ее стоимость в рублях и возрастные границы(например, игрушка может предназаначатся для детей от двух до пяти лет)
Определить:
б.) Стоимость самого дорогого конструктора


тут вообще то удобней бы было использовать БД а не файл, хотя мы этого ещё не учили.
&
предположения такие(мысли в слух):

так я вижу структуру:

*************************************** ***********
* ID * Название игрушки * Цена р * Возраст. категория *
*************************************** ***********
* 1 * Конструктор Lego * 100 * 2-5 *
......................................................................................... и т.д

предпологаю сделать так (если так возможно):

загнать всё это в двухмерный массив(или в одномерный но с record'дами) и как то записать в файл... потом считывать с файла и в цыкле по "Цене"
вывести на Дисплей самый догогой продукт!

по дргуму пока ни вижу(глаза закрыты ещё) blink.gif

----
обясните как это сделать или как по другому поступить ? smile.gif

Сообщение отредактировано: Димас - 12.03.2007 19:04


--------------------
Каждый человек , которого я знаю встречаю, превосходит меня в какой нить области, и я готов у него этому учится:)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Димас
сообщение 14.03.2007 20:49
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 90
Пол: Мужской
Реальное имя: Дима

Репутация: -  1  +


Посидел я пасатрел и понял что для меня это будет сложно...

решил написать по своему....

Итак написал две проги. Первая - записывает в типизированый файл данные, вторая считывает эти данные
и считает наибольшую цену...


вот исходник первой проги:

 
Program Z1280b;

uses crt;

const n = 5;

type
Assort = record
title : string; {Hазвание}
price : integer; {Цена}
age1,age2 : integer; {Возрастные границы}
end;

var
f: file of Assort;

mass:array[1..n] of Assort;

i:integer;

{---------------main program----------------}
Begin
Clrscr;
textcolor(4);
writeln(' ____________________________________________________________');
textcolor(7);
writeln('Програма для ввода данных в массив и запись в файл data.txt ');
textcolor(4);
writeln(' ____________________________________________________________');

textcolor(7);
{---Ввод данных в массив---}
for i:=1 to n do
begin
writeln('Введите название игрушки, для id=',i);
readln(mass[i].title);

writeln('Введите цену игрушки, для id=',i);
readln(mass[i].price);

writeln('Введите первую возрастную границу игрушки, для id=',i);
readln(mass[i].age1);

writeln('Введите вторую возрастную границу игрушки, для id=',i);
readln(mass[i].age2);
textcolor(4);
writeln(' ____________________________________________________________');
textcolor(7);
end;
{------------------------}

{________________Действия с файлом____________________}
assign(f,'data.txt');

rewrite(f);

{Цыкл записи с массива в типизированый файл}
for i:=1 to n do
begin
write(f,mass[i]);
end;

close(f);
{______________________________________________________}

{-----------Цыкл для вывода с массива уже введенных данных-----------------}
for i:=1 to n do
begin
writeln(mass[i].title,' ',mass[i].price,' ',mass[i].age1,'-',mass[i].age2);
textcolor(2);
writeln(' ____________________________________________________________');
textcolor(7);
end;
{------------------------}

writeln('press key');
readkey;
end.



а это вторая:
 
Program Z1280b;

uses crt;

const n = 5;

type
Assort = record
title : string; {Hазвание}
price : integer; {Цена}
age1,age2 : integer; {Возрастные границы}
end;

var
f: file of Assort;

mass:array[1..n] of Assort;

i,max,price:integer;

{---------------main program----------------}
Begin
Clrscr;
textcolor(4);
writeln(' ____________________________________________________________');
textcolor(7);
writeln('Програма для чтения данных из файла data.txt и вывод на дисплей:');
writeln('Название,цену,возрастные границы - Самой дорогой игрушки!');
textcolor(4);
writeln(' ____________________________________________________________');

textcolor(7);

{________________Действия с файлом____________________}
assign(f,'data.txt');

reset(f);

{Цыкл чтения из типизированого файла и занесения данных в массив}
for i:=1 to n do
begin
read(f,mass[i]);
end;

close(f);
{______________________________________________________}

{-----------Цыкл для вывода с массива данных которые были прочитаны из файла-----------------}
textcolor(2);
writeln('Ниже таблица отображения всех данных с файла:');
Writeln('*************************************************************************');
textcolor(7);
textcolor(4); writeln('id | Название | цена | Возрастыне границы |');
textcolor(2);
Writeln('*************************************************************************');
textcolor(7);
{------------------------цыкл для вывода на дисплей всех данных-----------------------------}
for i:=1 to n do
begin
writeln(' ',i,' | ',mass[i].title,' | ',mass[i].price,' | ',mass[i].age1,' - ',mass[i].age2,' |');
textcolor(2);
writeln('____________________________________________________________');
textcolor(7);
end;
{------------------------------------------------------------------------------}

{Цыкл для вичисления самой дорогой игрушки}
for i:=1 to n do
Begin
if (price < mass[i].price) then
Begin
price:=mass[i].price;
max:=i;
end;

end;
{-----------------------------------------}
textcolor(2);
writeln('Из них самый дорогой конструктор:');
textcolor(4);
writeln('-------------------------------------------------------------------------');
textcolor(7);

writeln(' ',max,' | ',mass[max].title,' | ',mass[max].price,' | ',mass[max].age1,' - ',mass[max].age2,' |');

textcolor(4);
writeln('-------------------------------------------------------------------------');

writeln('press key');
readkey;
end.



вот м всёsmile.gif

--------------------------------------------------------------------------------------------------------------------------------------
Но меня интересует такой вопрос blink.gif :

Почему структура файла такова????(как на скриншоте который я выложил ниже)
Изображение

Что это за система...м? mega_chok.gif

Сообщение отредактировано: Димас - 14.03.2007 21:40


--------------------
Каждый человек , которого я знаю встречаю, превосходит меня в какой нить области, и я готов у него этому учится:)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 20:38
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"