Ok, ons proggie ziet er als volgt uit:
Wij krijgen deze fout tijdens het testen:
"cijfers.p" 184 lines, 6825 characters
i1121434@orafem:~$ pc -s cijfers.p
Tue Jan 8 01:45:31 2002 cijfers.p:
26 IF mutcode = 1;
E 26090---------------------^--- Missing/malformed expression
27 THEN BEGIN
e 18450-------^--- Deleted keyword then
58 END;
E 18490----------^--- Expected '.'
we hebben het getest in Vi Editor (dus NIET turbo pascal) weet iemand waar de fout zit?
Alvast bedankt!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
| PROGRAM cijferadministratie (cijfers, output, input);
CONST afsluiter = 0;
VAR mutcode, idcode, leeftijd, som, aantal : integer;
gem, cijfer : real;
vak, opgave : char;
cijfers, hulpfile : text;
PROCEDURE menu(VAR mutcode : integer);
BEGIN
writeln('Cijferadministratie');
writeln;
writeln;
writeln('Keuzemenu');
writeln;
writeln('Toets 1 voor het invoeren van cijfers.');
writeln('Toets 2 voor het wijzigen van de cijfers.');
writeln('Toets 3 voor het verwijderen van cijfers.');
writeln('Toets 4 om de gemiddelden te bekijken.');
writeln('Toets 5 om af te sluiten.');
REPEAT
write('U wenst: ');
readln(mutcode);
UNTIL (mutcode >= 1) AND (mutcode <= 5);
END;
BEGIN
menu(mutcode);
IF mutcode = 1;
THEN BEGIN
reset(cijfers);
rewrite(hulpfile);
read(cijfers, idcode, leeftijd, cijfer, vak);
WHILE idcode <> afsluiter DO
BEGIN
write(hulpfile, idcode, leeftijd, cijfer, vak);
read(cijfers, idcode, leeftijd, cijfer, vak)
END;
BEGIN
write('Voer de id-code van de student in: ');
readln(idcode);
write(hulpfile, idcode);
write('Voer de leeftijd in: ');
readln(leeftijd);
write(hulpfile, leeftijd);
write('Voer het behaalde cijfer in: ');
readln(cijfer);
write(hulpfile, cijfer:3:1);
write('Voer het betreffende vak in: ');
readln(vak);
write(hulpfile, vak);
END;
writeln(hulpfile, afsluiter:1);
reset(hulpfile);
rewrite(cijfers);
REPEAT
read(hulpfile, idcode, leeftijd, cijfer, vak);
write(cijfers, idcode, leeftijd, cijfer:3:1, vak);
UNTIL idcode = afsluiter
END;
END;
IF mutcode = 2;
THEN BEGIN
reset(cijfers);
rewrite(hulpfile);
read(cijfers, idcode, leeftijd, cijfer, vak);
WHILE idcode <> afsluiter DO
BEGIN
write(hulpfile, idcode, leeftijd, cijfer, vak);
read(cijfers, idcode, leeftijd, cijfer, vak);
END;
BEGIN
reset(hulpfile);
rewrite(cijfers);
WHILE NOT eof(hulpfile) DO
BEGIN
readln(hulpfile, idcode, leeftijd, cijfer, vak);
writeln('Idcode: ', idcode, 'Leeftijd: ', leeftijd, 'Cijfer: ', cijfer, 'Vak: ', vak);
writeln;
writeln('Maak uw keuze: ');
writeln('1: Overnemen ');
writeln('2: Wijzigen ');
REPEAT
write(' Uw keuze is: '); readln(mutcode);
UNTIL (mutcode >= 1) AND (mutcode <= 2);
CASE mutcode OF
1: writeln(cijfers, idcode, leeftijd, cijfer, vak);
2: BEGIN
write(' Nieuwe idcode : ');
readln(idcode);
writeln(cijfers, idcode);
write(' Nieuwe leeftijd: ');
readln(leeftijd);
writeln(cijfers, leeftijd)
write(' Nieuw cijfer: ');
readln(cijfer);
writeln(cijfers, cijfer)
write(' Nieuw vak: ');
readln(vak);
writeln(cijfers, vak);
END;
END;
END;
END;
END;
IF mutcode = 3;
THEN BEGIN
reset(cijfers);
rewrite(hulpfile);
read(cijfers, idcode, vak, cijfer);
WHILE idcode <> afsluiter DO
BEGIN
write(hulpfile, idcode, vak, cijfer);
read(cijfers, idcode, vak, cijfer);
END;
BEGIN
reset(hulpfile);
rewrite(cijfers);
WHILE NOT eof(hulpfile) DO
BEGIN
readln(hulpfile, idcode, leeftijd, cijfer, vak);
writeln('Idcode: ', idcode, 'Leeftijd: ', leeftijd, 'Cijfer: ', cijfer, 'Vak: ', vak);
writeln;
writeln('Maak uw keuze: ');
writeln('1: Overnemen ');
writeln('2: Wijzigen ');
REPEAT
Write(' Uw keuze is: '); readln (mutcode);
UNTIL (mutcode >= 1) AND (mutcode <= 2);
CASE mutcode OF
1: writeln(cijfers, idcode, leeftijd, cijfer, vak);
2:
END;
END;
END;
END;
IF mutcode = 4;
THEN BEGIN
writeln('Maak uw keuze: ');
writeln('Toets 1 om het totaal gemiddelde cijfer te zien.');
writeln('Toets 2 om het aantal leerlingen per vak te zien..'); writeln('Toets 3 om het gemiddelde cijfer van een vak te zien.');
REPEAT
write('Uw keuze is: '); readln (mutcode);
UNTIL (mutcode >= 1) AND (mutcode <= 3);
CASE mutcode OF
1: BEGIN
WHILE NOT eof(hulpfile) DO
BEGIN
readln(hulpfile, idcode, leeftijd, cijfer, vak);
som := som + cijfer;
aantal := aantal + 1;
END;
gem := som / aantal;
write('Het totale gemiddelde is: '); write(gem);
END;
2: BEGIN
write('Geef de vakcode op: '); readln(opgave);
WHILE NOT eof(hulpfile) DO
BEGIN
readln(hulpfile, idcode, leeftijd, cijfer, vak);
IF vak = opgave;
THEN aantal := aantal + 1;
END;
write('Het aantal student voor dit vak is: '); write(aantal);
END;
3: BEGIN
write('Geef de vakcode op: '); readln(opgave);
WHILE NOT eof(hulpfile) DO
BEGIN
readln(hulpfile, idcode, leeftijd, cijfer, vak);
IF vak = opgave;
THEN BEGIN
som := som + cijfer;
aantal := aantal + 1;
END;
END;
gem := som / aantal;
write('Het gemiddelde cijfer voor dit vak is: '); write(gem);
END;
END;
IF mutcode = 5;
THEN BEGIN
writeln('Bedankt voor het gebruiken van dit programma en tot ziens');
writeln('Tja en Tja');
END;
END. |
Wij krijgen deze fout tijdens het testen:
"cijfers.p" 184 lines, 6825 characters
i1121434@orafem:~$ pc -s cijfers.p
Tue Jan 8 01:45:31 2002 cijfers.p:
26 IF mutcode = 1;
E 26090---------------------^--- Missing/malformed expression
27 THEN BEGIN
e 18450-------^--- Deleted keyword then
58 END;
E 18490----------^--- Expected '.'
we hebben het getest in Vi Editor (dus NIET turbo pascal) weet iemand waar de fout zit?
Alvast bedankt!