Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-03-2008
Avatar de ixMike
ixMike ixMike is offline
Miembro
 
Registrado: feb 2004
Posts: 1.151
Poder: 24
ixMike Va por buen camino
While condición do acción

Donde condición puede ser cualquier cosa (true, false, x>5, caption='hola'...)
y acción el código que quieres poner (si es más de una instrucción, debes encerrarlo entre begin-end; )

Tu código sería así:

Código Delphi [-]
Function DecimalToBinario(Decimal: Integer): String;
var
  Resultado: String;
begin
Resultado:='';
While Decimal > 1 do
  begin
    Resultado:=Chr((Decimal mod 2)+48)+Resultado; //Añade delante el último dígito del resto obtenido
    Decimal:= Decimal div 2; //Lo dividimos entre dos para el siguiente paso del bucle
  end;
Resultado:=Chr(Decimal+48)+Resultado; //El último que nos queda
Result:=Resultado;



Creo que funciona. De todas formas, en los enlaces que te pasé ya viene alguno más eficiente


Salu2.


Edito: el método es para números enteros, he tenido una pequeña confusión. Para números decimales la cosa se complica. Estoy investigando.

Última edición por ixMike fecha: 13-03-2008 a las 22:48:04.
Responder Con Cita
  #2  
Antiguo 13-03-2008
Avatar de kbaby
kbaby kbaby is offline
Miembro
 
Registrado: oct 2007
Ubicación: Granada
Posts: 178
Poder: 19
kbaby Va por buen camino
Hola, puse el código y segun él... el binario de 14 sería 100101010011111011001000 y en realidad es 1110.

¿Por qué? xD

Otra cosa, muchas gracias compae xD... y me podrías explicar eso de

Resultado:=Chr((Decimal mod 2)+48)+Resultado; //Añade delante el último dígito del resto obtenido

Resultado:=Chr(Decimal+48)+Resultado; //El último que nos queda

"Las palabras en negrita". ¿Por qué sumas 48? ¿Qué es Chr? Ya había mirado la ayuda delphi, pero no tengo ni idea, parece que vuelve a un valor ASCIII o algo así :S
Responder Con Cita
  #3  
Antiguo 13-03-2008
Avatar de kbaby
kbaby kbaby is offline
Miembro
 
Registrado: oct 2007
Ubicación: Granada
Posts: 178
Poder: 19
kbaby Va por buen camino
¿Al codigo le falta decirle que decimal es edit1.text? O me lo parece a mi jajajaja
Responder Con Cita
  #4  
Antiguo 13-03-2008
Avatar de kbaby
kbaby kbaby is offline
Miembro
 
Registrado: oct 2007
Ubicación: Granada
Posts: 178
Poder: 19
kbaby Va por buen camino
Question

Aquí está el código con algunos detalles que faltaba sin importancia:
Código Delphi [-]
var
  Resultado: String;
  decimal: integer;
begin
Resultado:='';
decimal:=strtoint(edit1.text);
While Decimal > 1 do
  begin
    Resultado:=Chr((Decimal mod 2)+48)+Resultado; //Añade delante el último dígito del resto obtenido
    Decimal:= Decimal div 2; //Lo dividimos entre dos para el siguiente paso del bucle
  end;
Resultado:=Chr(Decimal+48)+Resultado; //El último que nos queda
edit2.text:=(resultado);
end;

"Muchas gracias .... de verdad.... una cosita ¿dónde puedo mirar las medias para entrar a la universidad... las notas de corte ?(me interesan las de informática).
Responder Con Cita
  #5  
Antiguo 13-03-2008
Avatar de ixMike
ixMike ixMike is offline
Miembro
 
Registrado: feb 2004
Posts: 1.151
Poder: 24
ixMike Va por buen camino
Veamos.

El fallo no sé a qué se debe, ahora lo compruebo.

En cuanto a Chr, deberías mirar la ayuda Delphi más detenidamente, está bastante clara .

Chr devuelve el carácter del código ASCII que le indiques. El del cero es 48, y el del 1 es 49, ¿entiendes ahora porqué hago la suma?. Recuerda que resultado es un string.

Al código no le faltaba nada, era una función a la que le pasabas un integer y te devolvía el valor binario en un string. Lo que tú has hecho ha sido adaptar a algún evento (un clic supongo) de un botón de tu programa

Aquí tienes cómo se hace para pasar números con coma flotante a binario (e inversa), pero a mano: http://es.geocities.com/jeeesusmeeer...o/binario.html

Para las notas, sólo entra en la página de la universidad a la que quieras acceder, y busca un poco.

Salu2.
Responder Con Cita
  #6  
Antiguo 13-03-2008
Avatar de kbaby
kbaby kbaby is offline
Miembro
 
Registrado: oct 2007
Ubicación: Granada
Posts: 178
Poder: 19
kbaby Va por buen camino
Lo del Chr sigo sin entenderlo ... no sé porque se usa... y pasarlo a mano los numeros claro que se
Responder Con Cita
  #7  
Antiguo 13-03-2008
Avatar de kbaby
kbaby kbaby is offline
Miembro
 
Registrado: oct 2007
Ubicación: Granada
Posts: 178
Poder: 19
kbaby Va por buen camino
Thumbs down

¿Cómo puedo poner button con iconitos dentro? Es que estoy leyendo un manual y habla algo de esto:
  • mtIformation
  • mtWarning
  • mtError
  • mtConfirmation
  • mtCustom
Pero vamos... ni idea de como ponerlo y como que quedaría muy mono.

PD: Sigo sin tener idea de porque hay que usar el Chr y porque sumarle 48 ^^


Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Convertir un integer en Real osea IntToReal Kmef Varios 2 24-10-2007 19:40:34
Convertir a binario cadena de caracteres wgfs Varios 0 28-10-2006 00:58:28
Convertir una cifra de tipo real a su cantidad en letras reina Varios 7 11-08-2005 18:16:31
Como edito un variable de tipo real??? Rafe Varios 2 07-07-2005 01:15:45
Convertir Archivos DFM de binario a Texto (Text DFM) DiDi Varios 4 21-04-2005 19:39:43


La franja horaria es GMT +2. Ahora son las 00:48:53.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi