Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Паскаль

qarahunj kar Ученик (96), на голосовании 11 лет назад
В файле имеется список учеников с указанием имени, фамилии, отчества и даты рождения. Вывести на экран тех из них, фамилии которых начинаются на букву В (также вывести даты их рождения и имена) .
Как сделать это в паскале?
Голосование за лучший ответ
Петрина Александр Просветленный (34359) 11 лет назад
записать всех построчно в текстовый файл, считывать оттуда данные в паскале в двумерный массив, потом в цикле пройтись по массив и посмотреть первую букву фамилии.. . если она - В - вывести нужные данные...
Кублен Оракул (97301) 11 лет назад
переделай эту прогу для себя
program zap;
uses crt;
type
b=2..5;
str=record
fam:string[10];
oc:array[1..3] of b;
end;
var
tbl:array[1..100] of str;
y:str;
j,i,n,K:integer;
S:array[1..3] of real;
BEGIN
clrscr;
writeln('rabota s zapisyami');
writeln('-------------------');
writeln;

writeln('vvesti chislo studentov');
readln(n);
writeln('vvesti FIO i 3 ocenki ');
for i:=1 to n do begin writeln(i:2,' student');
with tbl do
readln(fam,oc[1],oc[2],oc[3]);
end;
writeln('isxodniy spisok ');
writeln('-------------------');
for i:=1 to n do
with tbl do
writeln(fam,' ',oc[1]:3,oc[2]:3,oc[3]:3);
for i:=1 to 3 do S [ i ]:=0;
for i:=1 to 3 do
for j:=1 to n do
with tbl[ j ] do
S[ i ]:=S +oc ;
writeln('srednij ball= ',s[1]/n:5:2,s[2]/n:5:2,s[3]/n:5:2);
k:=0;
for i:=1 to n do
with tbl do
if ((oc[1]>3) and (oc[2]>3) and (oc[3]>3)) then
k:=k+1;
writeln('bez troek = ',k,' procent= ',k/n*100:5:2,'%');
writeln('----------------------------');
writeln('konec zadachi');
readkey;
END.
Николай Гуру (2889) 11 лет назад
Как-то так:

program spisok;
var
f:textfile;
s:string;
begin
AssignFile(f, 'C:\Users\akmas\Desktop\Новый текстовый документ (3).txt');
reset(f);
while not Eof(f) do begin
readln(f,s);
if s[1] ='В' then writeln(s);
end;
closefile(f);

end.
Похожие вопросы