Pascal/Turbo Pascal - estudiante

 
Vista:

estudiante

Publicado por JUAN TOMAS (2 intervenciones) el 08/12/2003 07:06:17
muchachos es mi primera vez en esto pero estoy contento de saber que gente buena esta en esto para ayudar que alegre estoy pero hay boy

el uso de string es una cadena de tipo char es verdad pero
cuando la quiero combertir esa cadena de numeros char en un valor de tipo integer o numerico ejemplo:

para hacer una calculadora si yo quiero calcular esta cadena de 549+3=562 .
esos numeros se leen con readkey(hilera) un repeat hasta que sea = y
se ejecute las operaciones indicadas
pero con el uso de ' val' e tratado para combertirla en valor numerico la cadena pero no me sale ... se que
val (nombre_de_la_hilera,resultado_que_toma_la_hilera,el_codigo);
no se como hacer que la hilera calcule ... esta un poco confuso pero le agradesco cualquier ayuda que me puedad dar

aTT.. juantomas dominicano de corazon
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:estudiante

Publicado por Morito (176 intervenciones) el 08/12/2003 07:30:23
Hola juantomas, me alegro de que te estés iniciando en la programación, pero debes expresarte mejor, no entiendo eso de un readkey(hilera), la mayoría de las veces es con un readln, tampoco no entiendo eso de que un estring es un cha, y luego el char lo conviertes en integer, expresate mejor, por favor.

SAludosp
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:estudiante

Publicado por Diego Romero (786 intervenciones) el 10/12/2003 06:02:10
Entiendo que quieres convertir la cadena " 549+3=" a números usando el procedimiento estanda Val() pero hay un pequeño problema con esa cadena, contiene caracteres que no pueden ser convertidos a números. Deberás recorrer la cadena separando cada número y la operación. Técnicamente esto se llama "separar por tokens" y es muy usando cuando se hacen compiladores de lenguajes (y en cierta forma tú estas haciendo uno), la idea es recorrer el string caracter a caracter quedandote con lo caracteres numéricos en otro string hasta que encuentres un token (en tu ejemplo será el signo más o el signo igual que), luego con las cadenas suplementarias (tantas como números haya en la expresión) convertir esos string a integer con val y luego realizar la operación que te indica el token (sumar).
No te preocupes, que hacer este tipo de cosas es bastante complejo. En mi página web tengo un analizador de expresiones como el que quieres hacer: www.geocities.com/diegofrom
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