Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2010, 14:20   #1
darika
Пользователь
 
Аватар для darika
 
Регистрация: 25.03.2009
Сообщений: 47
По умолчанию таблица с записями

нужно составить таблицу...с 8 выборками. 5 я уже сделала.Таблица о отчете компьюторного магазина. как сосчитать сумму всех товаров.. и можно ли по алфавиту вывести товар?


Код:
Program Pr82;
uses crt;
type Magaz=record 
tov,proi:string[10];
kol:0..1000;
many:200..50000;
zakyp:100..35000;
skidki:3..20;
garan:1..5;
end;
var x:array[1..12] of Magaz;
i,m:word; sum:real;
f:file of Magaz;
Begin
{textbackground(0);clrscr;
window(2,1,79,24);textbackground(7) ;textcolor(14); clrscr; window(25,1,77,6);textbackground(3) ;textcolor(14);clrscr;
window(26,2,76,5);textbackground(4) ;textcolor(14); clrscr; writeln ( ' JIa6opaTOpHan pa6oTa N" 7 ');
window(5,4,74,23);textbackground(3) ;textcolor(14);clrscr; window(6,5,73,22);textbackground(4) ;textcolor(14);clrscr; }
clrscr;
assign(f,'C:\Users\Darika\Desktop\A ll.txt');
m:=12;
rewrite(f);
with x[1] do begin
tov:='копм';proi:='россия';kol:=150 ; many:=200;
skidki:=3 ;garan:=3;
end;
with x[2] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:= 3;garan:=3; end;
with x[3] do begin
tov:='копм';proi:='росиия';kol:=150 ;many:=200;
skidki:= 3;garan:=3; end;
with x[4] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:= 3;garan:=3; end;
with x[5] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:=3;garan:=3; end;
with x[6] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:=3 ;garan:=3; end;
with x[7] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:=3 ;garan:=3; end;
with x[8] do begin
tov:='копм';proi:='россия';kol:=150 ;many:=200;
skidki:=3 ;garan:=3; end;
with x[9] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:=3 ;garan:=3; end;
with x[10] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:= 3 ;garan:=3;end;
with x[11] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:=3 ;garan:=3; end;
with x[12] do begin
tov:='комп';proi:='россия';kol:=150 ;many:=200;
skidki:= 3 ;garan:=3; end;
for i:=1 to m do write(f,x[i]);
close(f);reset(f);
writeln(' Список');
writeln('+-----------------------------------------------------------------------+');
writeln('|Товар |производитель| количество| цена |скидки |гарантия |');
write('+--------------------------------------------------------------------------+');
for i:=1 to m do read(f,x[i]);
for i:=1 to m do with x[i] do
writeln(' |',tov:10,'|',proi:10,'|', kol:6,'|',many:10,'|',zakyp:10,'|', skidki:7,'|',garan:7,'|');
writeln('+--------------------------------------------------------------------+');
close(f);
readln;
write(' больше 20000');
writeln('+-------------------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| ');
writeln('+--------------------------------------------------------------------------+');
for i:=1 to m do with x[i] do begin
if many > 2000 then
writeln('|',tov:10,'|',proi:10,'|', many:10,'|'); end;
writeln('+------------------------------------------------------------------------+');
close(f);
readkey;
write;
reset(f);
writeln;
writeln('гарантия меньше года');
writeln('+--------------------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| Гарантия|');
write('+--------------------------------------------------------------------------+');
for i:=1 to m do with x[i] do begin 
if garan < 3 then
writeln('|',tov:10,'|',proi:10,'|', many:10,'|',garan:7,'|');end;
writeln('+--------------------------------------------------------------------------+');
close(f);
write(' Страна производителя Германия');
writeln('+-------------------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| ');
writeln('+--------------------------------------------------------------------------+');
for i:=1 to m do with x[i] do begin
if proi='Германия' then
writeln('|',tov:10,'|',proi:10,'|', many:10,'|'); end;
writeln('+------------------------------------------------------------------------+');
close(f);
write(' с А');
writeln('+-------------------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| ');
writeln('+--------------------------------------------------------------------------+');
for i:=1 to m do with x[i] do
if copy(proi,2,1)='A' then
writeln('|',tov:10,'|',proi:10,'|', many:10,'|');
writeln('+------------------------------------------------------------------------+');
close(f);


readkey;
End.

Последний раз редактировалось Stilet; 20.04.2010 в 07:53.
darika вне форума Ответить с цитированием
Старый 17.04.2010, 14:33   #2
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

Цитата:
как сосчитать сумму всех товаров
Код:
S:=0;
for i:=1 to m do
 S:=S+x[i].many;
Цитата:
можно ли по алфавиту вывести товар
конечно можно, бирёте любой метод сортировки и сортируйте массив х по полю tov
Жми на весы!!!

Последний раз редактировалось Chudo4258; 17.04.2010 в 14:42.
Chudo4258 вне форума Ответить с цитированием
Старый 17.04.2010, 14:56   #3
darika
Пользователь
 
Аватар для darika
 
Регистрация: 25.03.2009
Сообщений: 47
По умолчанию

Спасибо!!!

Код:
write(' C 30%');
writeln('+---------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| ');
writeln('+---------------------------------------------------------------+');
for i:=1 to m do with x[i] do
if (x[i].zakyp/(x[i].many))>1,3 then
writeln('|',tov:10,'|',proi:10,'|',many:10,'|',zakyp:10,'|');
writeln('+---------------------------------------------------------------+');
readkey;
End.
в таблице еще добавилась закупочная цена

Последний раз редактировалось Stilet; 20.04.2010 в 07:53.
darika вне форума Ответить с цитированием
Старый 17.04.2010, 17:56   #4
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

А "end" писать уже не надо??? Хотя вроде бы и не надо...
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 17.04.2010 в 18:18.
Grag вне форума Ответить с цитированием
Старый 17.04.2010, 18:00   #5
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

Код:
write(' C 30%');
writeln('+---------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| ');
writeln('+---------------------------------------------------------------+');
for i:=1 to m do 
 with x[i] do
  if (x[i].zakyp/(x[i].many))>1,3 then writeln('|',tov:10,'|',proi:10,'|', many:10,'|',zakyp:10,'|');
writeln('+---------------------------------------------------------------+');
readkey;
End.
x[i] выделенные красным писать наверно не надо уже.???
Жми на весы!!!
Chudo4258 вне форума Ответить с цитированием
Старый 17.04.2010, 18:13   #6
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Можно и не писать конечно, но на ситуацию это никак не повлияет...
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 17.04.2010 в 18:17.
Grag вне форума Ответить с цитированием
Старый 17.04.2010, 18:15   #7
darika
Пользователь
 
Аватар для darika
 
Регистрация: 25.03.2009
Сообщений: 47
По умолчанию

спасибо я сделала

что то не получается вевести по алфавиту товар :
Код:
write(' По алфавиту ');
writeln('+---------------------------------------------------------------+');
writeln(' |Товар |производитель| цена| ');
writeln('+---------------------------------------------------------------+');
for i:=1 to m do with x[i] do
for x[i].tov:=128 to 159 do (chr(x))
writeln('|',tov:10,'|',proi:10,'|',many:10,'|',zakyp:10,'|');
writeln('+---------------------------------------------------------------+');
readkey;  end.
должно типо такого быть?

Последний раз редактировалось Stilet; 20.04.2010 в 07:54.
darika вне форума Ответить с цитированием
Старый 19.04.2010, 18:09   #8
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

а что означет это строчка, что-то я не понимаю
for x[i].tov:=128 to 159 do (chr(x))
поле tov типа string, здесь вообще помоему ошибку должен показать паскаль.

Цитата:
что то не получается вевести по алфавиту товар :
дак вы отсортируйте сначала массив х по полю tov.
Жми на весы!!!
Chudo4258 вне форума Ответить с цитированием
Старый 19.04.2010, 18:23   #9
darika
Пользователь
 
Аватар для darika
 
Регистрация: 25.03.2009
Сообщений: 47
По умолчанию

а как отсортировать!?
darika вне форума Ответить с цитированием
Старый 19.04.2010, 18:25   #10
Филантроп
Форумчанин
 
Аватар для Филантроп
 
Регистрация: 12.04.2010
Сообщений: 134
По умолчанию

Цитата:
а как отсортировать!?
Да как/чем удобнее так/тем и отсортируйте
кому нужна помощь! жду в аське и скайпе!
Филантроп вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с записями Ol_Bak Microsoft Office Access 5 09.02.2010 20:22
работа с записями Андрей.12 Помощь студентам 0 20.12.2009 19:17
работа с записями wawan93 Microsoft Office Word 0 26.06.2009 14:48
Работа с записями Viata Паскаль, Turbo Pascal, PascalABC.NET 3 24.06.2009 09:03