Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Ayuda con un ejercicio
Autor Mensaje
sentey Sin conexión
Presidente del CEIT
fressi renunciessi abandonessi
********

Análisis de Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.579
Agradecimientos dados: 136
Agradecimientos: 207 en 144 posts
Registro en: Aug 2010
Mensaje: #16
RE: Ayuda con un ejercicio
Cita:Ahora que miro tb me faltó poner la pilaAuxiliar en nil al inicio del while. Lo cambié pero me sigue fallando.

Lo agregue y anduvo! Tambien le hice un par de cambios en el medio, no me acuerdo que pero la cuestion es que ahora anda =D=D=D

Ahí dejo el ejercicio terminado con una prueba (es una pila con los numeros 2, 2, 3, 3, 2)


type
tPunt = ^tNodo;
tNodo = record
info:integer;
sig:tPunt;
end;

procedure crearPila(var p:tPunt);
var nuevo:tPunt;
begin
new(nuevo);
nuevo^.info:=2;
nuevo^.sig:=nil;
p:=nuevo;

new(nuevo);
nuevo^.info:=3;
nuevo^.sig:=p;
p:=nuevo;


new(nuevo);
nuevo^.info:=3;
nuevo^.sig:=p;
p:=nuevo;

new(nuevo);
nuevo^.info:=2;
nuevo^.sig:=p;
p:=nuevo;

new(nuevo);
nuevo^.info:=2;
nuevo^.sig:=p;
p:=nuevo;
end;

function sacar(var p:tPunt):integer;
var aux:tPunt;
begin
sacar:=p^.info;
aux:=p^.sig;
dispose(p);
p:=aux;
end;

procedure meter(var p:tPunt; valor:integer);
var nuevo:tPunt;
begin
new(nuevo);
nuevo^.info:=valor;
nuevo^.sig:=p;
p:=nuevo;
end;

var
nroActual,cantActual,cantMax,nro,nroMax:integer;
pila,pilaAuxiliar:tPunt;

begin

cantMax:=0;
crearPila(pila);
while (pila<>nil) do begin
pilaAuxiliar:=nil;
nroActual := sacar(pila);
cantActual :=1;
while (pila<>nil) do begin
nro := sacar(pila);
if (nro = nroActual) then begin
cantActual:= cantActual +1;
end else begin
meter(pilaAuxiliar,nro);
end;
end;
if(cantActual > cantMax) then begin
nroMax := nroActual;
cantMax := cantActual;
end;
pila := pilaAuxiliar;
end;

writeln('El numero que mas se repite es el ',nroMax);

end.


sentey escribió:Voy a cambiar esta firma el día que Me$si gane 2 mundiales
(Este mensaje fue modificado por última vez en: 13-06-2012 23:02 por sentey.)
13-06-2012 22:24
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Anirus Sin conexión
Super Moderador
Sin estado :)
*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.163
Agradecimientos dados: 81
Agradecimientos: 232 en 78 posts
Registro en: Nov 2009
Mensaje: #17
RE: Ayuda con un ejercicio
Que loco, yo lo había cambiado y no andaba, aunque también había tocado otras cosas antes, así que quizá lo rompí xD Seguro que lo que pasaba era que pilaAuxiliar seguía apuntando a un nodo ya eliminado.
Para el crear pila no te convenía llamar a tu función meter?
(Este mensaje fue modificado por última vez en: 13-06-2012 23:25 por Anirus.)
13-06-2012 23:24
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sentey Sin conexión
Presidente del CEIT
fressi renunciessi abandonessi
********

Análisis de Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.579
Agradecimientos dados: 136
Agradecimientos: 207 en 144 posts
Registro en: Aug 2010
Mensaje: #18
RE: Ayuda con un ejercicio
(13-06-2012 23:24)Anirus escribió:  Que loco, yo lo había cambiado y no andaba, aunque también había tocado otras cosas antes, así que quizá lo rompí xD Seguro que lo que pasaba era que pilaAuxiliar seguía apuntando a un nodo ya eliminado.
Para el crear pila no te convenía llamar a tu función meter?

La verdad que podría, para no repetir código, pero ya se lo mandé a mi amigo, asi que se lo comento para cuando haga los casos de prueba que le piden...

Gracias Dani!

sentey escribió:Voy a cambiar esta firma el día que Me$si gane 2 mundiales
14-06-2012 00:24
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
nanuiit Ausente
♫ I'm Blue ...
... Da ba dee, da ba da ♫
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 8.871
Agradecimientos dados: 216
Agradecimientos: 626 en 210 posts
Registro en: Aug 2010
Mensaje: #19
RE: Ayuda con un ejercicio
Hubiera estado bueno que a tu amigo lo ayudes a pensar la solución, más que darle el cacho de código...

Respondo recién porque anduve enferma, pero más o menos lo hubiera hecho como Dani

ALGORITMOS

Apuntes: Mem. Dinámica - Mem. Estática - Proc. y Funciones || Guías: Módulos + 83 Ejercicios || Finales: 2004-2013


[Imagen: digitalizartransparent.png]

[Imagen: firmananiv2.png]
14-06-2012 09:30
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sentey Sin conexión
Presidente del CEIT
fressi renunciessi abandonessi
********

Análisis de Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.579
Agradecimientos dados: 136
Agradecimientos: 207 en 144 posts
Registro en: Aug 2010
Mensaje: #20
RE: Ayuda con un ejercicio
(14-06-2012 09:30)nanuiit escribió:  Hubiera estado bueno que a tu amigo lo ayudes a pensar la solución, más que darle el cacho de código...

Respondo recién porque anduve enferma, pero más o menos lo hubiera hecho como Dani

Spoiler: Mostrar
Es del tipo de amigo que o le das la solución o no hace nada lamentablemente =P

sentey escribió:Voy a cambiar esta firma el día que Me$si gane 2 mundiales
14-06-2012 23:39
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)