Pascal/Turbo Pascal - error 202

 
Vista:

error 202

Publicado por Cristina (1 intervención) el 02/08/2006 19:15:46
Estoy programando una especie de sopa de letras, que consiste en que en el programa alluda a construir una sopa de letras, el problema que tengo es que a la hora de ejecutar el programa me marca el error 202, stock overflow error y nose como solucionar ese error
muchas gracias por las soluciones al error
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

RE:error 202

Publicado por micropais (209 intervenciones) el 02/08/2006 21:40:11
Hola Cristina .
El error 202 : Stack overflow - es un desbordamiento de pila interno ,la pila STACK es una memoria reservada por el compilador para uso interno aunque podemos hacer uso de esta memoria directa o indirectamente lo suyo es no utilizarla .
Quedarse si pila quiere decir que has sobrepasado el limite de la zona reservada y de continuar machacarias los datos del propio programa .
Se puede incrementar el tamaño de la pila mira en:

- menu option memory sizes ó
tambien mira la direciva de compilacion
- $M tamaño_pila,minimo_pila,maximo_pila

Si con esto no basta revisa tu programa , algo estas haciendo mal ,
posiblemente estes usando demasiadas unidades , te has dejado algun nodo suelto , o algún error de programacion como - hacer un Push sin hacer Pop en ASM o algo parecido como un procedimiento recursivo abusivo -

Si no solucionas el problema envia mas datos del programa en cuestion.

SALUDOS.
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

RE:error 202

Publicado por Diego Romero (996 intervenciones) el 12/08/2006 12:44:43
Me da la impresión que tu programa usar recursividad en alguna parte. Esta es la causa más común para un stack overflow. Simplemente hay una función o procedimiento que recursa demasiadas veces agotando el stack del programa.
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

RE:error 202

Publicado por Gloria (4 intervenciones) el 28/06/2016 19:52:45
hola, buenas tardes a mi me sale el mismo error en el siguiente programa y no se como solucionarlo:
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
program funcion (input,output);
uses wincrt;
var n:integer;  t:real;
opcion:char;
 
function fibonacci(n:integer):longint;
BEGIN
if (n=1)then fibonacci:=1
else      t:=sqr(2+(fibonacci(n-1)+fibonacci(n-2)));
       end;
begin
repeat
    write ('Escriba un entero positivo,n=');readln(n);
    if n<1 then
       begin
         gotoxy (27,8);
         writeln('**************************************************');
         gotoxy (27,9);
         write ('* La funcion fibonacci no esta definida para n<1 * ');
         gotoxy (27,10);
         write ('* Digite un entero positivo n: n > = 2 *',t:1:2);
         readln(n);
         gotoxy (27,11);
         write ('************************************************** ');
         writeln;
       end
    else
    writeln ('         n fibonacci (n) ');
    gotoxy (10,3);
 
    for n:=1 to n do
        writeln (n:10, fibonacci(n):15);
        writeln;
    write ('Desea continuar s/n: '); read (opcion);
        readln;
    clrscr;
until opcion='n';
gotoxy(22,12);
write ('***************************************************');
gotoxy (22,13);
writeln ('        * USTED HA FINALIZADO LA SECION *');
gotoxy(22,14);
writeln ('**************************************************');
readln;
end.
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

RE:error 202

Publicado por ramon (2158 intervenciones) el 28/06/2016 23:31:34
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
{Mira esto con calma}
 
program funcion (input,output);
uses wincrt;
var n:integer;  t:real;
opcion:char;
 
 
 
Function fibonacci(n : LongInt) : LongInt;
begin
  if n < 2 then
    fibonacci := n
  else
    fibonacci := fibonacci(n - 1) + fibonacci(n - 2);
end;
 
 
 
begin
repeat
    write ('Escriba un entero positivo,n=');readln(n);
    if n<1 then
       begin
         gotoxy (27,8);
         writeln('**************************************************');
         gotoxy (27,9);
         write ('* La funcion fibonacci no esta definida para n<1 * ');
         gotoxy (27,10);
         write ('* Digite un entero positivo n: n > = 2 *',t:1:2);
         readln(n);
         gotoxy (27,11);
         write ('************************************************** ');
         writeln;
       end
    else
    writeln ('         n fibonacci (n) ');
    gotoxy (10,3);
 
    for n:=1 to n do
        writeln (n:10, fibonacci(n):15);
        writeln;
    write ('Desea continuar s/n: '); read (opcion);
        readln;
    clrscr;
until opcion='n';
gotoxy(22,12);
write ('***************************************************');
gotoxy (22,13);
writeln ('        * USTED HA FINALIZADO LA SECION *');
gotoxy(22,14);
writeln ('**************************************************');
readln;
end.
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