FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problema al implementar Pilas
Despues de 1 año de no haber programado en delphi tube problemas al tratar de implementar el algoritmo que transforma una cadena de numeros y operadores a otra, lo que es llamado de infija a posfija,no logro darme cuenta cuall es el problema , se los agradeceria si podrian ayudarme.
Gracias
Última edición por xeelons fecha: 06-04-2010 a las 20:16:08. |
#2
|
|||
|
|||
Eso no compilará jamás en Delphi porque Delphi es OO.
Ese programa está hecho para Pascal, programación procedural. Otra cosa, este procedimiento no te va a devolver nada porque el parámetro x está pasado por valor y no por referencia. Tendrías que pasarlo por referencia (var) para que te devuelva algo (o mejor, hacer una función). Si es otro el problema, avisá y miro lo demás. |
#3
|
||||
|
||||
Delphi está basado en Pascal y puede programarse proceduralmente sin ningún problema.
Otra cosa es que realmente no compila porque hay muchas declaraciones sin tipo como
Yo le recomendaría a xeelons que primero corrija ese tipo de errores para que compile y luego comente qué problemas le da el algoritmo. Y, claro, no deja de ser recomendable comenzar a trabajar más OOP y menos P // Saludos |
#4
|
|||
|
|||
si tienes razon,pero cuando copie y pege el codigo si especifique el tipo de variable que es P: Pila; pero por algun motivo no aparece en el post ,ya intente modificarlo,pero sigue sin aparecer correctamente.
lo que quiero saber es por que no se ejecuta el bucle for,creo que el error tiene ver con esta parte del codigo: '0'..'9'osfija[i]:=infija[i];debe de ser '0'..'9'osfija[i]:=infija[i]; mejor subire el archivo |
#5
|
||||
|
||||
Ja, ja, ok. Creo que es un filtro del editor. Lo que pasa es que :p se usa para poner la carita y supongo que por eso se confunde y lo omite.
En fin, razón de más para recordar que conviene anteponer una T a los tipos de datos:
Si el ciclo for no se ejecuta, da la impresión de que en la llamada
el usuario cancela el cuadro de diálogo y el valor devuelto es una cadena vacía. ¿Has verificado eso? // Saludos |
#6
|
|||
|
|||
Si tienes razon ,ahora usare el T. bueno creo que ya solucione parte de mi problema,este era que cuando cree la varialble posfija como string surge algun tipo de error con posfija[i]:=infija[i].
la forma en que solucione este problema es el siguiente: posfija[i]:=infija[i]; lo reemplaze con y antes del bucle for,inicializarla con posfija:=' ' ; vacio. |
#7
|
|||
|
|||
Román, yo me refería a que no iba a compilar en un VCL. Pensé que quedaba claro lo que dije, pero la próxima vez tendré que ser más específico en cada palabra que escriba.
Por cierto, gracias por la aclaración de que Delphi está basado en Pascal (u Object Pascal será), pero lo sé desde hace unos 4 años cuando empecé. |
#8
|
||||
|
||||
¿A qué te refieres con esto? El código de xeelons, salvo los errores ya comentados, compila sin problemas. No conozco el concepto de compilar en un VCL.
// Saludos |
#9
|
|||
|
|||
A ver.
Abrí el IDE. Crea un nuevo form VCL. Borrá todo lo que viene por defecto. Pegá ese código. ¿Ahora sí se entiende? VCL = Visual Component Library = Programita con ventanas. A eso me refería yo, pensé que había hecho eso. Ya ví a una persona hacerlo cuando abrió por primera vez el IDE de Delphi, así que no me hubiese sorprendido que alguien más lo haga. Espero que sea entendible para vos ahora lo que dije. Sino bueno, más palabras no puedo agregar. |
#10
|
||||
|
||||
En todo caso, de tu aseveración original:
Cita:
// Saludos |
#11
|
|||
|
|||
;) ;) ;) ;)
Cita:
Cita:
Para que sea más facilito de entender y no me vengas de nuevo con preguntas hacia una cosa para luego "arreglas" refiriéndote a otra (digo, porque no conocías el concepto de compilar en un VCL pero después la arreglaste volviendo con que se puede escribir un programa oop sin ninguna ventanita) yo hablaba de VCL. VCL - VCL - VCL - VCL. Espero que así sea fácil de entender. Porque en VCL se hacen programas con "ventanitas", ¿no? PD: ¿hacía alguna falta la cara de guiñar el ojo? yo no le veo ningún sentido, no aporta nada... pero después empiezan con que los dialectos y toda la bola que no me la creo 2 veces sin ofender. PD2: chau foro, espero nunca más tener que preguntar algo acá, hay personitas que responden con un leve tono egocéntrico, pero si se los decís te agarran todos juntitos para denfender al pollito. |
#12
|
||||
|
||||
Puedes enredarte lo que quieras pero al final lo que hay es lo que hay. Hiciste una aseveración que no es correcta y yo hice una simple aclaración para que quienes lean esto no se confundan.
Pero tal parece que tiendes a interpretar cualquier corrección como un ataque o crítica a tu persona y de ahí derivó el resto. Por cierto, el guiño era precisamente para lo contrario que tu imaginas; la intención era poner un tono amistoso en el comentario. En fin, ojalá rectifiques en tu decisión, porque has hecho aportaciones muy buenas. // Saludos |
#13
|
||||
|
||||
Quien tiene boca... se equivoca
Yo me equivoco muchísimas, muchísimas, muchísimas veces... ¡y me quieren igual! A veces se contesta con prisas y no nos damos cuenta que estamos equivocándonos nosotros mismos o contestando cosas que no tienen mucho que ver con lo que preguntan. Esas cosas suceden, pero tiene fácil solución: "!huy!, me he equivocado, cierto" y me río de mi error , de los errores se aprende... así que es bueno equivocarse |
#14
|
||||
|
||||
Hola
Seré yo Maestro?????, seré yo?????. Pio, pio, pio........... Saludos PD: Aparte de la broma: Lastima, seguí este debate de ideas desde ayer y me pareció muy interesante. Que pena que no se pueda reconocer que nadie es poseedor de la verdad absoluta.
__________________
Siempre Novato |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problema al implementar un bbcode en php | gulder | PHP | 0 | 10-11-2008 14:05:00 |
Clases - pilas - colas | Manshula | OOP | 6 | 21-05-2008 20:05:15 |
Ayudaaa Pilas estaticas | alekandro | OOP | 6 | 26-04-2006 14:04:11 |
Pilas 'nuevas' al minuto | Investment | Noticias | 0 | 30-03-2005 15:24:21 |
|