Ayuda Error 201 FPC
Publicado por Jhon (1 intervención) el 08/12/2016 22:57:50
Buenas Tardes, necesito ayuda con un pequeño problema con un programa en Free Pascal.
Debo hacer una factura que registre el nombre, el riff y la dirección de una persona, luego almacenar en una matriz N cantidad de productos, con su respectivo código, precio, descripción y la cantidad.
Ademas que luego me calcule el iva, me de el sub total y el total general.
Mi inconveniente esta en, al momento de escribir la cantidad de productos luego de haber seleccionado entre varios de un menú me tira un error, para ser especifico: "Exitcode = 201".
Agradecería mucho su ayuda, criticas constructivas y consejos, recién estoy empezando en este mundo de la programación.
Debo hacer una factura que registre el nombre, el riff y la dirección de una persona, luego almacenar en una matriz N cantidad de productos, con su respectivo código, precio, descripción y la cantidad.
Ademas que luego me calcule el iva, me de el sub total y el total general.
Mi inconveniente esta en, al momento de escribir la cantidad de productos luego de haber seleccionado entre varios de un menú me tira un error, para ser especifico: "Exitcode = 201".
Agradecería mucho su ayuda, criticas constructivas y consejos, recién estoy empezando en este mundo de la programación.
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
program exm1n;
uses
wincrt,crt;
var
nmbr,dir,riff,v: string;
cntd,cdig,m,x,z,sp: integer;
ttl,tltalg,acm1,ivacm,ivv: real;
mat: Array[1..10,1..10] of string;
rsp: char;
begin
Clrscr;
write('--- F A C T U R A ---');
WRITELN;
writeln;
write('Por favor indique su nombre: ');
readln(nmbr);
write('Por favor indique su rif o cedula: ');
readln(riff);
write('Por favor indique su direccion: ');
readln(dir);
clrscr;
repeat
writeln('-- Productos -- ');
writeln('1. Harina: 1200,00bs ');
writeln('2. Detergente: 2850,00bs');
writeln('3. Arroz: 1360,00bs');
writeln('4. Pasta: 1580,00bs');
writeln('5. Miscelaneos: 760,00bs');
writeln('6. Viveres: 1200,00bs');
writeln;
writeln('Todos los productos incluyen IVA');
writeln;
Repeat
write('Por favor introduzca el codigo del producto que desea adquirir: ');
readln(v);
m:=0;
val(v,cdig,m);
if (m=1) then
writeln('Error. . .');
until (m=0);
Repeat
write('Por favor introduzca la cantidad que desea llevar: ');
readln(v);
m:=0;
val(v,cntd,m);
if (m=1) then
writeln('Error. . .');
until (m=0);
case cdig of
1:begin
Clrscr;
ttl:= 1056*cntd;
ivacm:= 144*cntd;
ivv:= ivv+ivacm;
acm1:= acm1+ttl;
mat[x,z]:= ('1');
mat[x,z+1]:= ('Detergente');
Str(cntd,mat[x,z+2]);
mat[x,z+3]:= ('2508,00');
str(ttl:0:2,mat[x,z+4]);
end;
2:begin
Clrscr;
ttl:= 2508*cntd;
ivacm:= 342*cntd;
ivv:= ivv+ivacm;
acm1:= acm1+ttl;
mat[x+1,z]:= '2';
mat[x+1,z+1]:= 'Detergente';
Str(cntd,mat[x+1,z+2]);
mat[x+1,z+3]:= '2508,00';
str(ttl:0:2,mat[x+1,z+4]);
end;
3:begin
Clrscr;
ttl:= 1197.8*cntd;
ivacm:= 162.2*cntd;
ivv:= ivv+ivacm;
acm1:= acm1+ttl;
mat[x+2,z]:= '3';
mat[x+2,z+1]:= 'Arroz';
Str(cntd,mat[x+2,z+2]);
mat[x+2,z+3]:= '1197,8,00';
str(ttl:0:2,mat[x+2,z+4]);
end;
4:begin
Clrscr;
ttl:= 1390.4*cntd;
ivacm:= 1896*cntd;
ivv:= ivv+ivacm;
acm1:= acm1+ttl;
mat[x+3,z]:= '4';
mat[x+3,z+1]:= 'Pasta';
Str(cntd,mat[x+3,z+2]);
mat[x+3,z+3]:= '1390,4';
str(ttl:0:2,mat[x+3,z+4]);
end;
5:begin
Clrscr;
ttl:= 668.8*cntd;
ivacm:= 91.2*cntd;
ivv:= ivv+ivacm;
acm1:= acm1+ttl;
mat[x+4,z]:= '5';
mat[x+4,z+1]:= 'Miscelaneos';
Str(cntd,mat[x+4,z+2]);
mat[x+4,z+3]:= '668,8';
str(ttl:0:2,mat[x+4,z+4]);
end;
6:begin
Clrscr;
ttl:= 1056*cntd;
ivacm:= 144*cntd;
ivv:= ivv+ivacm;
acm1:= acm1+ttl;
mat[x+5,z]:= '6';
mat[x+5,z+1]:= 'Viveres';
Str(cntd,mat[x+5,z+2]);
mat[x+5,z+3]:= '1056,00';
str(ttl:0:2,mat[x+5,z+4]);
end;
end;
writeln('Desea Facturar otro producto <S/N>: ');
readln(rsp);
until (rsp='N') or (rsp='n');
Clrscr;
writeln('-Factura-');
writeln;
writeln('nombre: ',nmbr);
writeln('Riff: ',riff);
writeln('Direccion: ',dir);
writeln;
writeln;
writeln(' Codigo Produc. Cant Pvp Total');
writeln(' _____________________________________________');
writeln;
for x:=1 to 6 do
begin
sp:=6;
for z:=1 to 7 do
begin
gotoxy(z+sp,x+9);
write(mat[x,z]);
sp:= sp+10;
end;
end;
gotoxy(41,25);
writeln('SubTotal: ',acm1:0:2);
gotoxy(41,26);
writeln('IVA: ',ivv:0:2);
gotoxy(41,27);
writeln('Total: ',acm1+ivv:0:2);
writeln;
writeln('Presione <Enter> para salir. . .');
repeat until keypressed;
exit;
end.
Valora esta pregunta
0