kazooie21
asked on
Getting error in statement in both programs
I'm getting an error in statement in both of these. The error in statement occurs at the else in both of these.
var name: string;
numb: integer;
wt: integer;
AppFile: text;
procedure GETDATA (var localAppFile: text;
var localname: string;
var localnumb: integer;
var localwt: integer);
begin
readln (localAppFile, localname);
readln (localAppFile, localnumb);
readln (localAppFile, localwt);
end; {GETDATA}
procedure POSITION;
begin
if (numb < 10) and (wt < 180) then
writeln ('Accepted ');
else
begin
writeln ('Rejected ');
writeln ('Your weight is more than the given weight ');
writeln ('The number of cigarettes you smoke is over the limit ');
end;
end; {POSITION}
begin {main}
assign (AppFile, 'A:\AppFile2.dat');
reset (AppFile);
while not seekeof (AppFile) do
begin
GETDATA (AppFile, name, numb, wt);
POSITION;
end;
close (Appfile)
end.
************************** ********** ****
var state: string;
capital : string;
Statefile: text;
tries: integer;
guess: string;
procedure GETDATA (var localStatefile: text;
var localstate: string;
var localcapital: string);
begin
readln (localStatefile, localstate);
readln (localStatefile, localcapital);
end; {GETDATA}
procedure GUESS_CAPITAL (var tries: integer;
guess: string);
begin{GUESS_CAPITAL}
tries := 0;
repeat
tries := tries + 1;
write ('Give capital of ', state, ' ' );
readln (guess)
until (guess = capital) or (tries <= 4);
if guess = capital then
writeln ('Nice work. You got it on try ', tries);
else
begin{until}
writeln ('You did not get it in 4 tries or less');
writeln ('The correct answer is ' , capital)
end;{until}
end;{GUESS_CAPITAL}
begin {main}
assign (Statefile, 'A:\state2.dat');
reset (Statefile);
while not seekeof (Statefile) do
begin
GETDATA (Statefile, state, capital);
GUESS_CAPITAL (tries, guess);
end;
close (Statefile)
end.
var name: string;
numb: integer;
wt: integer;
AppFile: text;
procedure GETDATA (var localAppFile: text;
var localname: string;
var localnumb: integer;
var localwt: integer);
begin
readln (localAppFile, localname);
readln (localAppFile, localnumb);
readln (localAppFile, localwt);
end; {GETDATA}
procedure POSITION;
begin
if (numb < 10) and (wt < 180) then
writeln ('Accepted ');
else
begin
writeln ('Rejected ');
writeln ('Your weight is more than the given weight ');
writeln ('The number of cigarettes you smoke is over the limit ');
end;
end; {POSITION}
begin {main}
assign (AppFile, 'A:\AppFile2.dat');
reset (AppFile);
while not seekeof (AppFile) do
begin
GETDATA (AppFile, name, numb, wt);
POSITION;
end;
close (Appfile)
end.
**************************
var state: string;
capital : string;
Statefile: text;
tries: integer;
guess: string;
procedure GETDATA (var localStatefile: text;
var localstate: string;
var localcapital: string);
begin
readln (localStatefile, localstate);
readln (localStatefile, localcapital);
end; {GETDATA}
procedure GUESS_CAPITAL (var tries: integer;
guess: string);
begin{GUESS_CAPITAL}
tries := 0;
repeat
tries := tries + 1;
write ('Give capital of ', state, ' ' );
readln (guess)
until (guess = capital) or (tries <= 4);
if guess = capital then
writeln ('Nice work. You got it on try ', tries);
else
begin{until}
writeln ('You did not get it in 4 tries or less');
writeln ('The correct answer is ' , capital)
end;{until}
end;{GUESS_CAPITAL}
begin {main}
assign (Statefile, 'A:\state2.dat');
reset (Statefile);
while not seekeof (Statefile) do
begin
GETDATA (Statefile, state, capital);
GUESS_CAPITAL (tries, guess);
end;
close (Statefile)
end.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Suppose you're walking in a street, and there's a 10 dollar bill, laying in the street side, what would you do??? pick it up; So...
If <dollar bill in street side> Then
<pick it Up>;
But what if there were two bills??? well you pick one, then the other...
If <dollar bills in street side> Then
Begin {you have to use it to state the begin of a "Block"}
<Pick up first bill>;
<Pick up second bill>
End;
But what if they were pooped???
If <dollar bill in street> AND NOT<pooped> Then
<Pick up bill>
Else
<walk away>;
Then what if there were 2 bills, and you really, really need 'em...
If <dollar bill in street> AND NOT <pooped> Then
Begin
<pick up first bill>;
<pick up second bill>
End
Else
Begin
<clean first pooped bill>
<pick up bill>
<clean second pooped bill>
<pick up bill>
End;
Now you could create a procedure to "clean the pooped bill", or something to optimize your code...