Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.
Autor
|
Tema: problema con programa en Pascal (Leído 1,612 veces)
|
|
SXF
|
Buenas tengo un problemilla con un programa en pascal este es el algoritmo: program ejemplo2; var nota:integer; begin read(nota); case nota of '20': writeln('M. honor'); '19','18': writeln('Sobresaliete'); '17','16': writeln<'Notable'); '15','14': writeln('Aprobado'); else writeln('Suspenso'); end end. no se por que me tira error , lo que hace es sencillo comparar notas () utilizo el frepascal.
|
|
|
|
« Última modificación: 17 Enero 2011, 18:08 por Novlucker »
|
En línea
|
|
|
|
Garfield07
Desconectado
Mensajes: 1.123
¡Este año voy a por todas! JMJ 2011
|
'17','16': writeln<'Notable');
no se por que me tira error , lo que hace es sencillo comparar notas () utilizo el frepascal.
1) Por que no usas esto: '17','16': writeln('Notable'); como en los demas? 2) Podrias explicar tu error, al menos..
|
|
|
|
|
En línea
|
 * Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente. * No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado. * Si compila esta bien, si arranca es perfecto. ¡Wiki elhacker.net!Un saludo
|
|
|
|
SXF
|
me tira muchos errores  Nose creo que el analisis de casos esta mal..lo que quiero hacer es compara las notas si es 20 (sobresaliente ) si es 19 o tal ... y asi...
|
|
|
|
|
En línea
|
|
|
|
Garfield07
Desconectado
Mensajes: 1.123
¡Este año voy a por todas! JMJ 2011
|
Postea los errores, no una foto. No se ve nada bien...
|
|
|
|
|
En línea
|
 * Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente. * No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado. * Si compila esta bien, si arranca es perfecto. ¡Wiki elhacker.net!Un saludo
|
|
|
Khronos14
Desconectado
Mensajes: 285
A lie is a lie
|
Así a simple vista, ya te digo yo que te faltan los "uses". Además, con read() estás leyendo un integer y en el case..of estás haciendo las comparaciones como si fuera una cadena.
Saludos.
|
|
|
|
|
En línea
|
|
|
|
|
SXF
|
gracias a todos ,el error estaba en que no hay que poner '' con numeros pero si con letras..las librerias no hace falta usarlas aki..
|
|
|
|
|
En línea
|
|
|
|
|
skapunky
|
Bieeeeen una pregunta de pascal, allá va, prueba lo siguiente: program ejemplo2; uses crt; var nota:integer; begin read(nota); case nota of '20': writeln('M. honor'); '18'..'19': writeln('Sobresaliete'); '16'..'17': writeln<'Notable'); '14'..'15': writeln('Aprobado'); else writeln('Suspenso'); end end. No tengo el compilador en este ordenador, pero el codigo debería funcionar.
|
|
|
|
|
En línea
|
|
|
|
Khronos14
Desconectado
Mensajes: 285
A lie is a lie
|
skapunky, SFX ya dijo que lo solucionó. Además tu código está mal. program ejemplo2; uses crt; var nota: integer; begin read(nota); case nota of 20: writeln('M. honor'); 18,19: writeln('Sobresaliete'); 16,17: writeln('Notable'); 14,15: writeln('Aprobado'); else writeln('Suspenso'); end; end.
|
|
|
|
|
En línea
|
|
|
|
|
skapunky
|
Cierto, se me colaron las comas al copiar el codigo original, pero en turbo pascal se puede poner un rango de numero de la siguiente manera:
1..n
Lo he probado y funciona en delphi 6 enterprise.
|
|
|
|
|
En línea
|
|
|
|
|
|