idan1994
چهارشنبه 22 آذر 1391, 23:20 عصر
سلام من این برنامرو تو محیط پاسکال نوشتم اما وقتی ران می کنم پیغام خطایerror 37:end expected میده .
[LEFT]
Program student;
Type
s=Record;
stid: integer;
name,family: string [10];
age: Byte;
file:Text:
End;
st=array [1.. 100] of s;
Var
record: st;
n,i,ch: integer;
Procedure add;
Begin
Assing(file,’student.txt’);
if n=100 then
exit;
inc (n);
Writeln (n);
Readln (file,record [n]. stid,record [n].name,record [n].family,record [n].age);
Close(file);
End;
Procedure delete;
Reset(file);
Var
st,i,j: integer;
Begin
Readln (st);
For i:=1 to n do
if record [i].stid=st then
Begin
For j:=i to n-1 do
record [j]:=record [j+1];
dec (n);
exit;
close(file);
End;
Procedure dispall;
Reset(file);
Var
i: integer;
a: Real;
Begin
For i:=1 to n do
Begin
Writeln (file,record [i].stid,record [i].name ,record [i].family,record [i].age);
End;
Close(file);
End;
Begin
Readln (n);
For i:=1 to n do
Begin
Writeln (i);
Readln (file,record [i].stid ,record[i].name ,record [i].family, record [i].age);
End;
Procedure search;
Reset(file);
Var
I,z: integer;
a: Real;
flag:=false;
k:=0;
fam:string;
Writeln(‘Enter family for search : ‘);
Readln(file,fam);
While(j<=z) and (flag) do
Begin
j:=j+1;
If (file,record [i].family)=fam then
k:=j;
Begin
Flag:=true;
End;
End;
If flag then
Writeln(‘Found!’);
Writeln(file,record [j].stid ,record[j].name ,record [j].family, record [j].age);
Else
Writeln(‘Not Found!’);
Repeat
Writeln(‘Enter your choise : ‘);
Writeln(‘1.Add Student’);
Writeln(‘2.Delete Student’);
Writeln(‘3.Display All Student’);
Writeln(‘4.Search by family’);
Writeln(‘5.Exit’);
Readln (ch);
case ch of
1: add;
2: delete;
3: dispall;
4: search;
5: exit;
End;
Readln (ch);
Until False;
End.
[LEFT]
Program student;
Type
s=Record;
stid: integer;
name,family: string [10];
age: Byte;
file:Text:
End;
st=array [1.. 100] of s;
Var
record: st;
n,i,ch: integer;
Procedure add;
Begin
Assing(file,’student.txt’);
if n=100 then
exit;
inc (n);
Writeln (n);
Readln (file,record [n]. stid,record [n].name,record [n].family,record [n].age);
Close(file);
End;
Procedure delete;
Reset(file);
Var
st,i,j: integer;
Begin
Readln (st);
For i:=1 to n do
if record [i].stid=st then
Begin
For j:=i to n-1 do
record [j]:=record [j+1];
dec (n);
exit;
close(file);
End;
Procedure dispall;
Reset(file);
Var
i: integer;
a: Real;
Begin
For i:=1 to n do
Begin
Writeln (file,record [i].stid,record [i].name ,record [i].family,record [i].age);
End;
Close(file);
End;
Begin
Readln (n);
For i:=1 to n do
Begin
Writeln (i);
Readln (file,record [i].stid ,record[i].name ,record [i].family, record [i].age);
End;
Procedure search;
Reset(file);
Var
I,z: integer;
a: Real;
flag:=false;
k:=0;
fam:string;
Writeln(‘Enter family for search : ‘);
Readln(file,fam);
While(j<=z) and (flag) do
Begin
j:=j+1;
If (file,record [i].family)=fam then
k:=j;
Begin
Flag:=true;
End;
End;
If flag then
Writeln(‘Found!’);
Writeln(file,record [j].stid ,record[j].name ,record [j].family, record [j].age);
Else
Writeln(‘Not Found!’);
Repeat
Writeln(‘Enter your choise : ‘);
Writeln(‘1.Add Student’);
Writeln(‘2.Delete Student’);
Writeln(‘3.Display All Student’);
Writeln(‘4.Search by family’);
Writeln(‘5.Exit’);
Readln (ch);
case ch of
1: add;
2: delete;
3: dispall;
4: search;
5: exit;
End;
Readln (ch);
Until False;
End.