Код:
program kzachetu;
{$APPTYPE CONSOLE}
uses
SysUtils,
Math,
Windows;
const
Tavail=10;
type
tAftor=record
f,e,o:string;
end;
tDate=record
d,m,y:Word;
end;
tWeapon=record
dwriter:tAftor;
title:string;
price:integer;
quantitybook:integer;
quantitypages:integer;
quantipictures:integer;
dateAccept:tDate;
end;
tMagazin=array [1..Tavail] of tWeapon;
function RandomName:string;
var
n,i:integer;
begin
result:=''; n:=random(15)+5; //n:random(2)+5;
for i:=1 to n do
result:=result+chr(ord('A')+random(25));
end;
function RAndomNameX:string;
begin
result:=RandomName+' '+IntToStr(random(100));
end;
procedure ImputCurgo( var a:tMagazin);
var
nm,i:integer;
begin
writeln('введите колличество строк заполняемых в ручную');
readln(nm);
for i:=1 to nm do
begin
writeln('введите имя автора книги');
write('фамилия');readln(a[i].dwriter.f);
write('|');
write('имя'); readln(a[i].dwriter.e);
write('|');
write('отчество'); readln(a[i].dwriter.o);
write('|');
write('введите название книги '); readln(a[i].title);
write('|');
write('введите коллмчество книг в магазине '); readln(a[i].quantitybook);
write('|');
write('введите колличество страниц в книге'); readln(a[i].quantitypages);
write('|');
write('введите колличество картинок в книге'); readln(a[i].quantipictures);
write('|');
writeln('введите дату публикации книги');
write('день '); readln(a[i].dateAccept.d);
write('|');
write('месяц '); readln(a[i].dateAccept.m);
write('|');
write('год '); readln(a[i].dateAccept.y);
write('|');
end;
writeln('');
for i:=nm+1 to Tavail do
begin
a[i].dwriter.f:=RandomNameX;
a[i].dwriter.e:=RandomNameX;
a[i].dwriter.o:=RandomNameX;
a[i].title:=RandomNameX;
a[i].price:=random(500)+600;
a[i].quantitybook:=random(10)+5;
a[i].quantitypages:=random(400)+300;
a[i].quantipictures:=random(10)+2;
a[i].dateAccept.d:=random(28)+1;
a[i].dateAccept.m:=random(11)+1;
a[i].dateAccept.y:=random(19)+1993;
end;
writeln('aaia caaa?oai!..');
end;
function Stabilize(str:string;width:integer):string;
var
i,L:integer;
begin
L:=length(str); // L:=str[0];
result:=str;
if L>width then
result:=copy(str,1,width-3)+'...';
if L<width then
for i:=L to width do
result:=result+' ';
writeln
end;
procedure WriteTabicu (a:Tmagazin);
var i: byte;
begin
write ('вывод таблицы: ');
for i := 1 to Tavail do
writeln (Stabilize(a[i].dwriter.f,100));
writeln(Stabilize(a[i].dwriter.e,100));
writeln(Stabilize(a[i].dwriter.o,100));
writeln(Stabilize(a[i].title,50));
writeln(a[i].price:1000);
writeln(a[i].quantitybook:20);
writeln(a[i].quantitypages:1000);
writeln(a[i].quantipictures:20);
writeln(a[i].dateAccept.d:30);
writeln(a[i].dateAccept.m:12);
writeln(a[i].dateAccept.y:2012);
writeln;
writeln;
end;
var
a:tMagazin;
i, c:integer;
begin
setconsolecp(1251);
setconsoleoutputcp(1251);
ImputCurgo(a);
WriteTabicu(a);
c:=0;
for i:=1 to Tavail do
c:=c+a[i].price*a[i].quantitybook;
writeln(c);
readln;
end.
(программа не правильно выводит таблицу если кто знает где ошибка пожалуйста помогите исправить)
________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.