Файлы
Добавлено: 05 мар 2011, 14:15
я почти все сделала....2 день мучаюсь...осталось одно то что не могу сделать: считывание из файла помогите как(
т.е, все данные я через эту программу должна вводить , они должны храниться в файле и считываться помогите как, мне сказали что несколько строчек добавить...но не понимаю
вот моя програмка почти готовая:
т.е, все данные я через эту программу должна вводить , они должны храниться в файле и считываться помогите как, мне сказали что несколько строчек добавить...но не понимаю
вот моя програмка почти готовая:
Код: Выделить всё
Program Nino;
uses crt;
const nmax=8;
type anketa=record
name:string[5];
pol:char;
rost:140..200;
end;
mass=array[1..100] of anketa;
var i,n,k,y:integer;
a:mass;
o:text;
f:file of anketa;
s,p:string;
procedure SredRost(a:mass;n:integer);
var sred:real;
i,j:integer;
begin
sred:=0;
j:=0;
for i:=1 to n do
if a[i].pol='w' then
begin
inc(j);
sred:=sred+a[i].rost;
end;
if j=0 then writeln('Zenshin net!')
else
begin
sred:=sred/j;
writeln('Srednij rost zenshin=',sred:0:2);
end;
readln;
end;
Procedure dob(a:mass;n:integer);
begin
writeln('skolko zapisey dobavit?');
readln(y);
for i:=n+1 to n+y do
with a[i] do
begin
write('Imia: ');
readln(name);
repeat
write('Pol (m or w): ');
readln(pol);
until pol in ['m','w'];
repeat
write('rost: '); readln(rost);
until rost in [140..200];
end;
n:=n+y;
assign(o,'Ank.txt');
rewrite(o);
for i:=1 to n do
begin
writeln(o,a[i].name);
writeln(o,a[i].pol);
writeln(o,a[i].rost);
end;
close(o);
end;
begin
clrscr;
write('Vvedite kol-vo zapisey: ');
readln(n);
for i:= 1 to n do
begin
writeln('vvedite svedenia o cheloveke ',i);
with a[i] do
begin
write('Imia: ');
readln(name);
repeat
write('Pol (m or w): ');
readln(pol);
until pol in ['m','w'];
repeat
write('rost: '); readln(rost);
until rost in [140..200];
end;
end;
begin
repeat
clrscr;
Writeln ('Viberite deistvie:');
writeln('1-srednii rost zhenshin');
writeln('2-imia samogo visokogo muzhchini');
writeln('3- est li 2 cheloveka odnogo rosta');
writeln('4-dob');
writeln('5-vyhod');
writeln('Spisok:');
for i:=1 to n do
with a[i] do
writeln(name:7,pol:3,rost:5);
writeln;
repeat
Write('Vash vibor: ');
readln(k);
until k in [1..6];
case k of
1: SredRost(a,n);
2: ImyaVys(a,n);
3: OdnRost(a,n);
4: dob(a,n);
5: exit;
end;
until k=6;
end; readln
end.