Помощь - Поиск - Пользователи - Календарь
Полная версия: типизир и текст фаилы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Vd0
1 Таблица: (типизированный фаил)
- ФИО;
- дата рождения;
- пол;
- дата вступления в клуб;
- вид услуги (несколько, но не более 3);
- вид скидки;
- наличие дисконтной карты (при наличии карты дополнительная скидка 5% на все услуги).

2 Таблица: (типизированный фаил)
- вид услуги;
- цена.

3 Таблица: (текстовый фаил)
- вид скидки;
- процент скидки.

Определить стоимость услуг для каждого клиента, общую стоимость услуг, оказанных фирмой по месяцам.


Дополнительные вопросы:
1. Какая самая популярная услуга у владельцев дисконтных карт?
2. Сделайте дополнительную скидку в 3% на все услуги женщинам перед 8 марта и мужчинам перед 23 февраля (за 10 дней).

Для каждого файла должна быть предусмотрена возможность
- загрузки файла (просмотр)
- добавление новой информации в файл
- удаление информации
- корректировка
- сохранение после изменений



буду рад помощи как сделать это всё. а в частности как сделать 3-й фаил текстовый и записывать в формате "
вид скидки1 процент скидки1
вид скидки2 процент скидки2
вид скидки3 процент скидки3
...
"
Amro
Ну ты и загнул, а у самого намётки хоть какие-то есть??? :no:
Тут тебе не бригада отъядлых программёров!!! Выложи хотя бы что сам сделал, и что не понятно!!!
Vd0
1,2 фаил есть. обработка и всё такое.
пока мучаюсь с 3им фаилом!!!! запись/чтение из него не знаю как сделать?!? и потом буду думать как выполнить задания
APAL
Предистория откуда взялся топик:
Цитата
14.10.2004 18:44:56, JACKQUE V00DOO
привет. можно 1 вопрос по делфи паскалю?
14.10.2004 18:45:03, APAL
Давай.
14.10.2004 18:45:53, JACKQUE V00DOO
вид скидки| процент скидки
string[15]  real
как это записать в текстовый файл и как считать?
14.10.2004 18:46:31, JACKQUE V00DOO
если делаю вручную фаил то считывается, а программно не получается. он считывает целую строку.
14.10.2004 18:48:12, APAL
Type
  Rec = record
    skidka : String[15];
    procent : Real;
End;
Var
  f : File of Rec;
  d : Rec;
Begin
  ...
Write(f,d);
  ...
Read(f,d);
...
End.
14.10.2004 18:48:47, JACKQUE V00DOO
это с использованием record! а другой спобос есть?
14.10.2004 18:49:46, APAL
Можно и другим способом. Использую нетипизированные файлы, но тогда надо самому следить за форматом запросов.
14.10.2004 18:49:56, APAL
Аааа. Понял
14.10.2004 18:50:02, APAL
Можно и в текстовом.
14.10.2004 18:50:08, APAL
Только муторно это
14.10.2004 18:50:10, JACKQUE V00DOO
даже нужно )))
14.10.2004 18:50:26, JACKQUE V00DOO
нужно считывать целиком строку и обрезать её?
14.10.2004 18:50:30, APAL
Лучше делать в типизированном, а результат можно выводить в текстовый
14.10.2004 18:51:09, JACKQUE V00DOO
я понимаю, но задание курсовика так гласит sad.gif(( текстовый файл.
14.10.2004 18:51:53, APAL
Так имеется в виду что? Хранить данный в текстовом или выводить информацию в текстовый файл (т.е. результат работы)?
14.10.2004 18:52:15, JACKQUE V00DOO
хранить!
14.10.2004 18:52:36, APAL
мда... и это курсовик... я в печали.
14.10.2004 18:52:46, APAL
можно конечно работать и с текстовым
14.10.2004 18:52:53, APAL
но как я уже говорил - гемморой
14.10.2004 18:53:00, APAL
но МОЖНО
14.10.2004 18:53:01, JACKQUE V00DOO
ну там на самом деле ещё 2 фаила типизированного smile.gif
14.10.2004 18:53:12, JACKQUE V00DOO
а как? принцип какой?
14.10.2004 18:53:51, APAL
А. Так значит с данными мы работаем в типизированных файлах, а втекстовый выводим результат. Тогда тут и проблемы не должно быть.
14.10.2004 18:54:03, JACKQUE V00DOO
нет!
14.10.2004 18:54:17, JACKQUE V00DOO
щас всё задание дам чтобы понятно было всё сразу
14.10.2004 18:54:22, APAL
Погодь.
14.10.2004 18:54:28, APAL
Через асю неудобно
14.10.2004 18:54:36, APAL
Давай выкладывай сразу на форум.
14.10.2004 18:54:49, JACKQUE V00DOO
куда именно*
14.10.2004 18:55:07, APAL
В раздел соответствующий вопросу.
14.10.2004 18:55:14, APAL
Думаю - в задачи
14.10.2004 18:55:26, APAL
Хотя можно и в теор. вопросы...
14.10.2004 18:55:33, APAL
есть над чем подумать smile.gif
14.10.2004 18:55:42, JACKQUE V00DOO
в задачи полез уже smile.gif
14.10.2004 18:55:50, APAL
И?
14.10.2004 18:56:04, JACKQUE V00DOO
щас запощу
APAL
Цитата(Vd0 @ 14.10.04 18:59)
буду рад помощи как сделать это всё. а в частности как сделать 3-й фаил текстовый и записывать в формате "
вид скидки1      процент скидки1
вид скидки2      процент скидки2
вид скидки3      процент скидки3
...

Можно использовать Val, Str
Только строки "склеивать" надо однотипно. Т.е., чтобы процент начинался, например, с 30 позиции строки.

И проблемы как таковой я не вижу.
Vd0
реализую всю на делфи. но чота не хочет нормально записывать и считывать!

Код

discountname:string[20];
 percent:real;

// процедура чтения из текстового фаил в стринггрид1
if OpenDialog1.Execute then begin
 AssignFile(f3,OpenDialog1.Filename);
 StringGrid1.Rowcount:=2;
 i:=1;
 reset(f3);

 while not eof(f3) do
  begin
  ReadLN(f3,discountname,percent);
       StringGrid1.Cells[0,i]:=discountname;
       StringGrid1.Cells[1,i]:=floattostrf(percent,ffgeneral,2,0);
  i:=i+1;
  StringGrid1.RowCount:=StringGrid1.RowCount+1;
  end;// while
 closefile(f3);
 StringGrid1.RowCount:=StringGrid1.RowCount-1;

end;//if opendialog

//процедура сохраниени я в фаил из StringGrid1
if SaveDialog1.Execute then
begin
assignfile(f3,SaveDialog1.FileName);
rewrite(f3);

for i:=1 to StringGrid1.RowCount-1 do
 begin
  if (StringGrid1.Cells[0,i]='')or(StringGrid1.Cells[1,i]='') then
   begin
    showmessage('Åñòü ïóñòûå ïîëÿ!');
    exit;
   end;//if


  writeLN(f3,StringGrid1.Cells[0,i],StringGrid1.Cells[1,i]);
 end;//for
 closefile(f3);
 showmessage('Ôàéë ñîõðàí¸í');
 end

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