Как сделать что бы при вводе одного названия группы показывало людей с оценками 3(все оценки 3) а при другом названии аналогично только из другой группы.Чтение произвести из файла
Код:
program lab2;
uses Crt;
type stud=record
lastname:string[15];
byear:integer;
group:string[10];
algebra:integer;
istoria:integer;
fizika:integer;
himia:integer;
geometri:integer;
end;
var f:text; st:stud; gr:string; sm1:string; sm2:string;
begin
clrscr;
assign(f,'student.txt');
rewrite(f);
{Student Ivanov}
st.lastname:='Ivanov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=4;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=5;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Petrov}
writeln(f);
st.lastname:='Petrov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1993;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Mirnik}
writeln(f);
st.lastname:='Murnik';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.istoria:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=3;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
{Student Norni}
writeln(f);
st.lastname:='Norni';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1991;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.istoria:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
close(f);
sm1:='SM.12.1'; sm2:='SM.12.2';
writeln('Write group');
readln(gr);
if gr=sm1 then do
while not eof(f) do begin
if st.
readkey();
end.
uses Crt;
type stud=record
lastname:string[15];
byear:integer;
group:string[10];
algebra:integer;
istoria:integer;
fizika:integer;
himia:integer;
geometri:integer;
end;
var f:text; st:stud; gr:string; sm1:string; sm2:string;
begin
clrscr;
assign(f,'student.txt');
rewrite(f);
{Student Ivanov}
st.lastname:='Ivanov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=4;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=5;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Petrov}
writeln(f);
st.lastname:='Petrov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1993;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Mirnik}
writeln(f);
st.lastname:='Murnik';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.istoria:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=3;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
{Student Norni}
writeln(f);
st.lastname:='Norni';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1991;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.istoria:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
close(f);
sm1:='SM.12.1'; sm2:='SM.12.2';
writeln('Write group');
readln(gr);
if gr=sm1 then do
while not eof(f) do begin
if st.
readkey();
end.
while not eof(f) do begin
if st."
Чёто я смысла не понял. eof всегда будет false.
Нужно открыть фаил для чтения с помощью Reset
Код:
program Project1;
{$APPTYPE CONSOLE}
//uses
// SysUtils;
type
stud = record
lastname: string[15];
byear: integer;
group: string[10];
algebra: integer;
istoria: integer;
fizika: integer;
himia: integer;
geometri: integer;
end;
var
f: TextFile;
st: stud;
gr, sm1, sm2, NameStr, AgeStr, GrStr, AlgStr, IstStr, FizStr, GeomStr , HimStr, a: string;
i: integer;
begin
// try
{ TODO -oUser -cConsole Main : Insert code here }
// clrscr;
AssignFile(f,'C:\student.txt');
Rewrite(f);
{Student Ivanov}
st.lastname:='Ivanov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=4;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=5;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Petrov}
writeln(f);
st.lastname:='Petrov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1993;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Mirnik}
writeln(f);
st.lastname:='Murnik';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=3;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
{Student Norni}
writeln(f);
st.lastname:='Norni';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1991;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
CloseFile(f);
Reset(f);
writeln('Write group');
readln(gr);
while not Eof(f) do
begin
Readln(f, NameStr);
Readln(f, AgeStr);
Readln(f, GrStr);
Readln(f, AlgStr);
Readln(f, IstStr);
Readln(f, FizStr);
Readln(f, GeomStr);
Readln(f, HimStr);
if Copy(GrStr, 7, 255) = gr then
if (Copy(AlgStr, 10, 255) = '3') and (Copy(IstStr, 10, 255) = '3') and (Copy(FizStr, 9, 255) = '3') and (Copy(GeomStr, 11, 255) = '3') and (Copy(HimStr, 8, 255) = '3') then
begin
Writeln(Copy(NameStr, 6, 255));
// И еще какие нибудь действия
end;
Readln(f);
end;
CloseFile(f);
Readln(a);
{ except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end; }
end.
{$APPTYPE CONSOLE}
//uses
// SysUtils;
type
stud = record
lastname: string[15];
byear: integer;
group: string[10];
algebra: integer;
istoria: integer;
fizika: integer;
himia: integer;
geometri: integer;
end;
var
f: TextFile;
st: stud;
gr, sm1, sm2, NameStr, AgeStr, GrStr, AlgStr, IstStr, FizStr, GeomStr , HimStr, a: string;
i: integer;
begin
// try
{ TODO -oUser -cConsole Main : Insert code here }
// clrscr;
AssignFile(f,'C:\student.txt');
Rewrite(f);
{Student Ivanov}
st.lastname:='Ivanov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=4;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=5;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Petrov}
writeln(f);
st.lastname:='Petrov';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1993;
writeln(f,'Age:',st.byear);
st.group:='SM.12.1';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=4;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=5;
writeln(f,'Himia: ',st.himia);
{Student Mirnik}
writeln(f);
st.lastname:='Murnik';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1994;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=3;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
{Student Norni}
writeln(f);
st.lastname:='Norni';
writeln(f,'Name:',st.lastname);
st.byear:=2012-1991;
writeln(f,'Age:',st.byear);
st.group:='SM.12.2';
writeln(f,'Group:',st.group);
st.algebra:=3;
writeln(f,'Algebra: ',st.algebra);
st.istoria:=3;
writeln(f,'Istoria: ',st.istoria);
st.fizika:=3;
writeln(f,'Fizika: ',st.fizika);
st.geometri:=5;
writeln(f,'Geometry: ',st.geometri);
st.himia:=3;
writeln(f,'Himia: ',st.himia);
CloseFile(f);
Reset(f);
writeln('Write group');
readln(gr);
while not Eof(f) do
begin
Readln(f, NameStr);
Readln(f, AgeStr);
Readln(f, GrStr);
Readln(f, AlgStr);
Readln(f, IstStr);
Readln(f, FizStr);
Readln(f, GeomStr);
Readln(f, HimStr);
if Copy(GrStr, 7, 255) = gr then
if (Copy(AlgStr, 10, 255) = '3') and (Copy(IstStr, 10, 255) = '3') and (Copy(FizStr, 9, 255) = '3') and (Copy(GeomStr, 11, 255) = '3') and (Copy(HimStr, 8, 255) = '3') then
begin
Writeln(Copy(NameStr, 6, 255));
// И еще какие нибудь действия
end;
Readln(f);
end;
CloseFile(f);
Readln(a);
{ except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end; }
end.
Это мелоч конечно в наше время, с начала развития компьютерной техники - до начала 90-х вас бы выгнали с работы увидев код и контекст задачи.
Цитата: QWERYTY
Вполне достаточно однобайтового беззнакового
Либо я тебя не понял, либо ты фигню написал :-) Потому как однобайтовое целое больше 256-ти комбинаций не вместит, а 1000 почти в 4 раза >256
Цитата: @pixo $oft
Цитата: QWERYTY
Вполне достаточно однобайтового беззнакового
Либо я тебя не понял, либо ты фигню написал :-) Потому как однобайтовое целое больше 256-ти комбинаций не вместит, а 1000 почти в 4 раза >256
В том то и дело что достаточно 256 положений для оценок. 1000 это не утверждение, а вопрос
Запятую чтоли пропустил, действительно вышло трудночитаемое предложение