Foros-FIUBA Foros HostingPortal
 FAQ  •  Buscar  •  Wiki  •  Apuntes  •  Planet  •  Mapa  •  Eyeon  •  Chat
Preferencias  •  Grupos de Usuarios
Registrarse  •  Perfil  •  Entrá para ver tus mensajes privados  •  Login
Ver tema siguiente
Ver tema anterior

Responder al tema Ver tema anteriorEnviar por mail a un amigo.Mostrar una Lista de los Usuarios que vieron este TemaGuardar este Tema como un archivoPrintable versionEntrá para ver tus mensajes privadosVer tema siguiente
Autor Mensaje
Georgalos
Nivel 3


Edad: 33
Registrado: 18 Dic 2007
Mensajes: 48

Carrera: Industrial
argentina.gif
MensajePublicado: Mar Ago 24, 2010 7:38 pm  Asunto:  [Pascal] Limitar Variables Responder citandoFin de la PáginaVolver arriba

Que tal, alguno me puede decir como limitar estas variables?

:integer; (parra que se puedan escribir max 6 numeros)
:char; (para que se pueda escribir solo N o I)
:string[15]; (supuestamente esto limita los caracteres a 15t, pero probe y puedo escribir mucho mas)

Muchas Gracais!


Virgo Género:Masculino Caballo OfflineGalería Personal de GeorgalosVer perfil de usuarioEnviar mensaje privado
_nacho_
Nivel 9



Registrado: 08 Oct 2007
Mensajes: 1271

Carrera: No especificada
uruguay.gif
MensajePublicado: Mar Ago 24, 2010 7:43 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

¿Son variables de entrada de datos?

Hace un loop de validación.

_________________

 Género:Masculino  OfflineGalería Personal de _nacho_Ver perfil de usuarioEnviar mensaje privado
Freddy
Nivel 8


Edad: 34
Registrado: 29 Oct 2008
Mensajes: 630
Ubicación: Lanús
Carrera: Sistemas
blank.gif
MensajePublicado: Mar Ago 24, 2010 7:47 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Usá el readkey, que lee cada una de las entradas por teclado, en lugar de usar el readln();

Y acordate que siempre los datos que entran por parte del usuario tienen que ser strings, si no corres el riesgo de que explote todo.


Capricornio Género:Masculino Serpiente OfflineGalería Personal de FreddyVer perfil de usuarioEnviar mensaje privadoEnviar emailMSN Messenger
Georgalos
Nivel 3


Edad: 33
Registrado: 18 Dic 2007
Mensajes: 48

Carrera: Industrial
argentina.gif
MensajePublicado: Mar Ago 24, 2010 7:52 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

En vez de la variable ":integer;" se tendria que limitar la variable ":real;" ya que ahora que lo corrijo, integer es hasta 32.768 (son 5 cifras, no 6 como necesito)...

Igual, no se como hacerlo.

Gracias!


Virgo Género:Masculino Caballo OfflineGalería Personal de GeorgalosVer perfil de usuarioEnviar mensaje privado
_nacho_
Nivel 9



Registrado: 08 Oct 2007
Mensajes: 1271

Carrera: No especificada
uruguay.gif
MensajePublicado: Mar Ago 24, 2010 8:00 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Con lo de loop de verificación me refiero a:

c: char;

do
read(c);
c = uppercase(c);
until (c = 'N') or (c = 'I');

En el caso del entero (que deberia ser un longint, para poder tener numeros de 6 cifras). Y lo que dice Freddy es que leas del usuario un string y despues lo pases a numero con val(), ya que si haces un readln(variableentera); y el usuario mete "caca" [ENTER], se va todo al carajo.

_________________

 Género:Masculino  OfflineGalería Personal de _nacho_Ver perfil de usuarioEnviar mensaje privado
Snajdan
Nivel 5



Registrado: 21 Oct 2009
Mensajes: 191
Ubicación: Banfield.
Carrera: Química
russia.gif
MensajePublicado: Mar Ago 24, 2010 8:05 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Tenes enteros de Longint...

Lo limitas declarando en types los rangos..

Y en string.. podes escribir los que quieras, pero solo guarda 15.

Y los de los char, podes hacerlo con un enumerado. O sino como dicen..

repeat
read(c);
until (c in ['i','I','N','n']);

_________________
SNAJ.

 Género:Masculino  OfflineGalería Personal de SnajdanVer perfil de usuarioEnviar mensaje privadoMSN Messenger
Pinguino
Nivel 5


Edad: 33
Registrado: 03 Mar 2010
Mensajes: 121

Carrera: Civil
argentina.gif
MensajePublicado: Mar Ago 24, 2010 8:19 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Sos alumno de Grossi, no? :P

El unico que podes limitar es el string, y de la forma que vos pusiste. Para poner un solo caracter, usas char.

_________________
EL PINGUI RULES

*Petelo for ever*

7,5% Ingeniero Civil - Transporte (en stand by)

Virgo Género:Masculino Caballo OfflineGalería Personal de PinguinoVer perfil de usuarioEnviar mensaje privado
Georgalos
Nivel 3


Edad: 33
Registrado: 18 Dic 2007
Mensajes: 48

Carrera: Industrial
argentina.gif
MensajePublicado: Mar Ago 24, 2010 11:28 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Wow que cantidad de cosas que me tiraron.. Lamentablemente entendi muy poco, ya que no vi mucho mas que hacer calculos boludos..
Al final me di cuenta que lo podia limitar de una manera mas sensilla:

Cuando voy a tirar el valor de a:real; uso la sintaxis "Writeln('Valor A ', a:6:0)" y nada mas muestra los primeros 6 numeres con 0 decimales.

Es mucho mas sencillo de lo que me proponian pero para lo que lo necesito sirve.

Les agradezco mucho la ayuda muchachos, es un placer poder contar con uds!


p.d.: Soy alumno de Muotri, un tp x clase nos van a dar Porro


Virgo Género:Masculino Caballo OfflineGalería Personal de GeorgalosVer perfil de usuarioEnviar mensaje privado
_nacho_
Nivel 9



Registrado: 08 Oct 2007
Mensajes: 1271

Carrera: No especificada
uruguay.gif
MensajePublicado: Mie Ago 25, 2010 8:22 am  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Está bien... ya vas a aprender y vas a ver la burrada que estás haciendo. Pero echando a perder también se aprende, ¿no?

_________________

 Género:Masculino  OfflineGalería Personal de _nacho_Ver perfil de usuarioEnviar mensaje privado
Georgalos
Nivel 3


Edad: 33
Registrado: 18 Dic 2007
Mensajes: 48

Carrera: Industrial
argentina.gif
MensajePublicado: Mie Ago 25, 2010 12:31 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Sii completamente. No te hagas problemas nachito, ya lo entregue. Gracias de nuevo!


Virgo Género:Masculino Caballo OfflineGalería Personal de GeorgalosVer perfil de usuarioEnviar mensaje privado
Pinguino
Nivel 5


Edad: 33
Registrado: 03 Mar 2010
Mensajes: 121

Carrera: Civil
argentina.gif
MensajePublicado: Mie Ago 25, 2010 5:56 pm  Asunto:  (Sin Asunto) Responder citandoFin de la PáginaVolver arriba

Grossi = Muotri.

_________________
EL PINGUI RULES

*Petelo for ever*

7,5% Ingeniero Civil - Transporte (en stand by)

Virgo Género:Masculino Caballo OfflineGalería Personal de PinguinoVer perfil de usuarioEnviar mensaje privado
Mostrar mensajes de anteriores:      
Responder al tema Ver tema anteriorEnviar por mail a un amigo.Mostrar una Lista de los Usuarios que vieron este TemaGuardar este Tema como un archivoPrintable versionEntrá para ver tus mensajes privadosVer tema siguiente

Ver tema siguiente
Ver tema anterior
Podés publicar nuevos temas en este foro
No podés responder a temas en este foro
No podés editar tus mensajes en este foro
No podés borrar tus mensajes en este foro
No podés votar en encuestas en este foro
No Podéspostear archivos en este foro
No Podés bajar archivos de este foro


Todas las horas son ART, ARST (GMT - 3, GMT - 2 Horas)
Protected by CBACK CrackerTracker
365 Attacks blocked.

Powered by phpBB2 Plus, phpBB Styles and Kostenloses Forum based on phpBB © 2001/6 phpBB Group :: FI Theme :: Mods y Créditos

Foros-FIUBA está hosteado en Neolo.com Cloud Hosting

[ Tiempo: 0.2521s ][ Pedidos: 20 (0.1970s) ]