Pascal/Turbo Pascal - EXITCODE = 201

   
Vista:

EXITCODE = 201

Publicado por xopsofi (1 intervención) el 09/04/2014 19:41:45
Hice un programa que le pregunta al usuario cuantas filas tiene una matriz (N) y cuantas columnas (M), luego, que ingrece una matriz NxM.. despues que le pregunte si quiere sumar una fila o una columna, y cual. Cuando lo corro me da error 201 y no se porque.
Aca esta el programa
gracias!

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
program matriz;
uses crt;
const max = 10; min = 2;
type tmatriz = array [1..max,1..max] of integer;
 
procedure CargaMatriz (var mat : tmatriz; N,M:integer);
var i,j : integer;
begin
        for i := 1 to N do
                for j := 1 to M do
			begin
                        writeln ('ingrese [',i,',',j,']=');
                        readln (mat [i,j])
			end
end;
 
function SumaFila (matriz : tmatriz) : integer;
var i,fila : integer; N,M:integer;
begin
writeln ('Que fila desea sumar?');
readln (fila);
SumaFila := 0;
for i := 1 to N do
	SumaFila := SumaFila + matriz[fila,i];
	writeln ('La suma de la fila ' ,fila, 'es = ' ,SumaFila);
end;
 
function SumaColumna (matriz1 : tmatriz) : integer;
var i,columna : integer; N,M:integer;
begin
writeln ('Que columna desea sumar?');
readln (columna);
SumaColumna := 0;
for i := 1 to M do
	SumaColumna := SumaColumna + matriz1 [i,columna];
	writeln ('La suma de la columna ' ,columna, ' es = ' ,SumaColumna);
end;
 
var
matriz1 : tmatriz;
suma: char;
N,M:integer;
 
begin
writeln ('Ingrese el numero de filas');
readln (N);
while ((N > max) or (N < min)) do
	begin
	writeln ('Numero de filas ingresado fuera de rango, ingrese otro');
	readln (N)
	end;
writeln ('Ingrese el numero de columnas');
readln (M);
while ((M > max) or (M < min)) do
	begin
	writeln ('Numero de columnas ingresado fuera de rango, ingrese otro');
	readln (M)
	end;
CargaMatriz (matriz1,N,M);
writeln ('Desea sumar una fila(f) o una columna(c)?');
readln (Suma);
while ((suma<>'f') and (suma<>'c')) do
	begin
	writeln ('Error, ingrese f para sumar una fila o c para sumar una columna');
	readln(suma);
	end;
if Suma = 'f' then SumaFila (matriz1)
else if Suma = 'c' then SumaColumna (matriz1);
readkey;
end.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

EXITCODE = 201

Publicado por Diego (98 intervenciones) el 09/04/2014 23:02:21
Revisa los modulos de sumar fila y columna, ya que haces que el for vaya de 1 a ?; porque N y M no tienen los valores que deberian tener; sino que tienen basura adentro, tendría que tener algún contenido en N y M para que el for vaya de 1 a un numero mayor o igual a el.
Otra cosa, si no me equivoco N es para fila y M para columna; cuando suma filas deberia ir de 1 a el numero de columnas y no filas; y cuando suma columnas debería ir de 1 a el numero de filas.

No revisé todo el código solo eche un vistazo a los módulos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar