
04.10.2011, 14:37
|
Прохожий
|
|
Регистрация: 06.06.2011
Сообщения: 29
Репутация: 10
|
|
Вставил всю программу,у кого есть время,посмотрите пожалуйста.Много ляпов но главный вопрос-отчего такой размер массива
Код:
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils,
converter in 'converter.pas';
type
Sportsmen = record
Surname:String;//
Name:String; //Имя
Date_of_birth:String;//
Weight:Integer; //
Height:Integer; //
Sex:String; //
end;
Mass = array of Sportsmen;
//
procedure Input_Record(var Zap:Sportsmen;var p:Boolean);
begin
writeln(RUS(''));readln(Zap.Surname);
writeln(RUS(''));readln(Zap.Name);
writeln(RUS(''));readln(Zap.Date_of_birth);
writeln(RUS('()'));readln(Zap.Weight);
writeln(RUS('()'));readln(Zap.Height);
writeln(RUS(''));readln(Zap.Sex);
if (Zap.Surname='0') or (Zap.Name='0') or (Zap.Date_of_birth='0') or (Zap.Weight=0) or (Zap.Height=0) or (Zap.Sex='0') then p:=false
end;
//
procedure Out_Record(var Zap:Sportsmen);
begin
writeln(RUS(':'));
writeln(RUS(':'),Zap.Surname);
writeln(RUS(':'),Zap.Name);
writeln(RUS(':'),Zap.Date_of_birth);
writeln(RUS(':'),Zap.Weight);
writeln(RUS(':'),Zap.Height);
writeln(RUS(':'),Zap.Sex);
end;
//
procedure Add_to_Array(var Massiv:Mass;Zap:Sportsmen);
var
i:word;
begin
writeln(i);
readln;
i:=high(Massiv);
setlength(Massiv,i+1);
Massiv[i]:=Zap;
end;
//
procedure Input_Array(var Massiv:Mass;var p:boolean);
var
otvet:char;
Zap:Sportsmen;
begin
writeln(RUS(''));
repeat
Input_Record(Zap,p); p:=true;
Add_to_Array(Massiv,Zap);
writeln(RUS('? (Y/N)'));
readln(otvet);
until (otvet='N') or (otvet='n');
end;
//
procedure Out_Array(Massiv:Mass);
var
i:integer;
begin
for i:=0 to high(Massiv) do
begin
with Massiv[i] do
writeln(Surname,' ',Name,' ',Date_of_birth,' ',Weight,' ',Height,' ',Sex);
end;
end;
//
procedure Puzyrek(var Massiv:Mass);
begin
end;
//
var
Massiv:Mass;
Num:Integer;//
Zap:Sportsmen;
p:Boolean;//
begin
while true do
begin
writeln(RUS('Набор операций:'));
writeln(RUS('1.Заполнение отдельной записи'));
writeln(RUS('2.Вывод записи'));
writeln(RUS('3.Добавление записи в массив'));
writeln(RUS('4.Создание массива записей'));
writeln(RUS('5.Вывод массива записей'));
writeln(RUS('6.Сортировка "пузырьком""'));
writeln(RUS('0.Выход'));
writeln(RUS('Введите номер операции:'));
Readln(Num);
case num of
1:
begin
Input_Record(Zap,p);
end;
2:
begin
Out_Record(Zap);
end;
3:
begin
Add_to_Array(Massiv,Zap);
end;
4:
begin
Input_Array(Massiv,p);
end;
5:
begin
Out_Array(Massiv);
end;
6:
begin
Puzyrek(Massiv);
end;
0:
begin
halt(0);
end;
end
end;
readln;
end.
|