Runtime error 100
Publicado por Juliana (1 intervención) el 24/07/2019 00:17:06
hola!estoy teniendo un problema al trabajar con un programa en pascal, al ejecutarlo me salta el runtime error 100, no se como solucionarlo. puede que sea un error del código? mi archivo en txt tiene esto:
Amariana,gonzalezmartinez 2009H|
XEmmanuel,AgustinMartinez 199aM|
EEmmilianoRogelio,Cordero 2019A|
XMariano,DeLaVega 201eH|
FNicolas,delarosaMartinez 2019A|
y este es el algoritmo
Amariana,gonzalezmartinez 2009H|
XEmmanuel,AgustinMartinez 199aM|
EEmmilianoRogelio,Cordero 2019A|
XMariano,DeLaVega 201eH|
FNicolas,delarosaMartinez 2019A|
y este es el algoritmo
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
program bienal;
uses crt;
var
entrada,salida:file of char;
v,continente,especialidad,digito:char;
i,error:integer;
tart,mad,hie,marm,cont,PH,PA,PM:real;
begin
clrscr;
assign(salida, 'archivo2.txt'); //creo la secuencia de salida
rewrite(salida);
assign(entrada, 'C:\PASCAL1\archivo1.txt'); //arranco la secuencia de entrada
{$I-}
reset(entrada);
error:=IOResult;
{$I+}
if error<>0 then
begin
writeln('error:el archivo1.txt existe?');
halt(2);
end;
read(entrada,v);
writeln('ingrese l especialidad');
read(especialidad);
writeln('ingrese el continente');
read(continente);
tart:=0;
mad:=0;
hie:=0;
marm:=0;
cont:=0;
i:=0;
while ((v<>'|') and (not eof (entrada))) do //ciclo principal
begin
tart:=tart+1;
if (v= (continente))then
begin
for i:=1 to 34 do
begin
write(salida,v);
end;
read(entrada,v);
case (v) of
//begin
'a': digito:='0';
'e': digito:='2';
'i': digito:='4';
'o': digito:='6';
'u': digito:='8';
end;
write(salida,digito);
read(entrada,v);
if (v=(especialidad))then
begin
cont:=cont+1;
end;
case (v)of
//begin
'A':mad:=mad+1;
'H':hie:=hie+1;
'M':marm:=marm+1;
end;
end;
if (v<> (continente)) then
begin
for i:=1to 34 do
begin
write(salida,v);
read(entrada,v);
end;
case (v) of
//begin
'a': digito:='0';
'e':digito:='2';
'i':digito:='4';
'o':digito:='6';
'u':digito:='8';
end;
write(salida,digito);
read(entrada,v);
case (v)of
//begin
'A':mad:=mad+1;
'H':hie:=hie+1;
'M':marm:=marm+1;
end;
end;
read(entrada,v);
write(salida,v);
read(entrada,v);
end;
PA := ((mad*100)/Tart);
PH := ((hie*100)/Tart);
PM := ((marm*100)/Tart);
writeln('El porcentaje de cada especialidad es:');
writeln ('para los especializados en madera:',PA);
writeln (' para los de hierro',PH);
writeln('para los especializados en marmol' ,PM);
writeln('la especialidad y el continente que usted ingreso aparece' ,cont, 'veces en la lista de artistas');
close(salida);
close(entrada);
end.
Valora esta pregunta
0