Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-11-2011
Cartel Cartel is offline
Registrado
NULL
 
Registrado: nov 2011
Posts: 9
Poder: 0
Cartel Va por buen camino
Thumbs up calculadora Convergente de numero

Hola amigos tengo una peuqueña ayudita

quiro hacer una calculadora convergente osea que yo meta 2 digitos y me arroje un resultado que yo kiero por ejemplo

pongo 3 edit y 1 boton

El edit 1 es el valor que yo kiero x ejemplo 12

el edit 2 es un valor del 1 al 9 pero 1 = 0,2 2 = 0.4 y si sucesivamente

y el edit 3 sea el resultado

el procedimeiento seria

edit1 =12 * edit2 =1 pero con valor(0.2) = edit3=2.4

la ayuda que necesito es como aria yo para que cuando ponga en el edit2 un 1 el programa me tome ese 1 como 0.2 para la multiplicacion

Ojala y me ayuden ^^
Responder Con Cita
  #2  
Antiguo 28-11-2011
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Que tal esto:
Código Delphi [-]
...
var
  E1: Integer;
  E2, E3: Extended;
begin
  E1 := StrToInt(Edit1.Text);
  E2 := (StrToInt(Edit2.Text) * 0.2);
  E3 := (E1 * E2);
  Edit3.Text := FormatFloat('0.00', E3);
end;
Un saludo.
Responder Con Cita
  #3  
Antiguo 28-11-2011
Cartel Cartel is offline
Registrado
NULL
 
Registrado: nov 2011
Posts: 9
Poder: 0
Cartel Va por buen camino
Cita:
Empezado por olbeup Ver Mensaje
Que tal esto:
Código Delphi [-]
...
var
  E1: Integer;
  E2, E3: Extended;
begin
  E1 := StrToInt(Edit1.Text);
  E2 := (StrToInt(Edit2.Text) * 0.2);
  E3 := (E1 * E2);
  Edit3.Text := FormatFloat('0.00', E3);
end;
Un saludo.
se esa seria buna pero toy en lo mismo ya q si el 1 = 0.2 el 2 = 0.4 y el 3= 2.4 como se aria ya q si coloco el 3 me va a no me daria la multiplicacion x 2.4 sino x 0.6
Responder Con Cita
  #4  
Antiguo 28-11-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración.
Responder Con Cita
  #5  
Antiguo 28-11-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Cartel Ver Mensaje
se esa seria buna pero toy en lo mismo ya q si el 1 = 0.2 el 2 = 0.4 y el 3= 2.4 como se aria ya q si coloco el 3 me va a no me daria la multiplicacion x 2.4 sino x 0.6
No entiendo...

Según tu primer mensaje:
Cita:
el edit 2 es un valor del 1 al 9 pero 1 = 0,2 2 = 0.4 y si sucesivamente
Por lo tanto: 1 -> 0.2, 2 -> 0.4, 3 -> 0.6, ...


¿ De donde sale el valor 2.4 ?

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 28-11-2011
Cartel Cartel is offline
Registrado
NULL
 
Registrado: nov 2011
Posts: 9
Poder: 0
Cartel Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
No entiendo...

Según tu primer mensaje:


Por lo tanto: 1 -> 0.2, 2 -> 0.4, 3 -> 0.6, ...


¿ De donde sale el valor 2.4 ?

Saludos.
osea no son numeros consecutivo arriba me iso fatal pero asea lo que quiero es que cuando yo en el edit2 escriba 2 la plicacion no lo teme como 2 sino como 0.4 y cuando escriba 3 no me lo tome como 3 sino como 2.4
Responder Con Cita
  #7  
Antiguo 28-11-2011
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Cómo multiplicas tú, 12 * 0.2 = 2.4, 3 * 0.2 = 0.6, creo que te has confundido, y el ejemplo que te he puesto, es válido.

Creo que la clase de matemática te la fumastes.

Un saludo.
Responder Con Cita
  #8  
Antiguo 28-11-2011
Cartel Cartel is offline
Registrado
NULL
 
Registrado: nov 2011
Posts: 9
Poder: 0
Cartel Va por buen camino
Cita:
Empezado por olbeup Ver Mensaje
Cómo multiplicas tú, 12 * 0.2 = 2.4, 3 * 0.2 = 0.6, creo que te has confundido, y el ejemplo que te he puesto, es válido.

Creo que la clase de matemática te la fumastes.

Un saludo.
NO comentes si no entiendes xD

yo lo que quiero es que cuando en el edit 2 escriba 1 ese 1 la aplicacion lo tome con sierto valor como x ejemplo 0.5

y cuando escriba el 2 lo tome con otro sierto valor como x ejemplo 10 y asi sucesivamente
Responder Con Cita
  #9  
Antiguo 28-11-2011
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Ahora si que yo ni nadie te entiende, y partimos desde tu primer mensaje, te recuerdo:
Cita:
1 = 0.2, 2 = 0.4, 3 = 0.6, 4 = 0.8, 5 = 1, 6 = 1.2, 7 = 1.4, 8 = 1.6 y 9 = 1.8
¿Esto son los valores que tiene que tomar?, ¿entonces cual es error que hemos cometido según tú?, ¿cual de los número del 1..9 esta mal?

Cita:
NO comentes si no entiendes xD
Perdona, pero si enriqueces tu pregunta con algún ejemplo, la respuesta sería sabrosa y abundante
Cita:
yo lo que quiero es que cuando en el edit 2 escriba 1 ese 1 la aplicacion lo tome con sierto valor como x ejemplo 0.5
Resulta ahora que el Edit2 si escribes 1 sale 0.5, pues no vale 0.2 ó si escribes 2 sale 10, pues no vale 0.4, según datos proporcionados por tí, lo que has puesto, eso si es erronero

Un saludo.

Última edición por olbeup fecha: 28-11-2011 a las 23:42:49.
Responder Con Cita
  #10  
Antiguo 28-11-2011
Cartel Cartel is offline
Registrado
NULL
 
Registrado: nov 2011
Posts: 9
Poder: 0
Cartel Va por buen camino
Cita:
Empezado por olbeup Ver Mensaje
Ahora si que yo ni nadie te entiende, y partimos desde tu primer mensaje, te recuerdo:

¿Esto son los valores que tiene que tomar?, ¿entonces cual es error que hemos cometido según tú?, ¿cual de los número del 1..9 esta mal?



Perdona, pero si enriqueces tu pregunta con algún ejemplo, la respuesta sería sabrosa y abundante

Resulta ahora que el Edit2 si escribes 1 sale 0.5, pues no vale 0.2 ó si escribes 2 sale 10, pues no vale 0.4, según datos proporcionados por tí, lo que has puesto, eso si es erronero

Un saludo.
jajaja es q es dificil de explicar pero bueno aqui va

en el idit 2 solo voy a usar los numeros 1, 2, 3, 4, 5, 6, 7, 8, 9

pero quiero que ese 1 = 1.0625
el 2 = 1.375
3 = 1.875
4 = 2.625

eso son los valeros los del 5 al 9 son otros pero para no ponerlos todos

tonces cuando yo ponga en el edit2 el 1 no me este mutiplicando el edit x el 1 sino me este multiplicanco el edit 1 con 1.0625

y cuando ponga el 2 no me este mutiplicando el edit x el 2 sino me este multiplicanco el edit 1 con 1.375

eso es lo que necesito y si me dicen pero xq no colocas el 1.0625 en ves del 1 xD es xq asi no me serviria de nada la aplicacion y pa eso usaria una calculadora
Responder Con Cita
  #11  
Antiguo 29-11-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
pero quiero que ese 1 = 1.0625
el 2 = 1.375
3 = 1.875
4 = 2.625
Hola.

Entonces según entiendo, la función del valor de Edit2 sería la de un índice para acceder a otro valor.

Podrías hacer algo así:
Código Delphi [-]
...
implentation
var
  TS: TStrings;

procedure TForm1.FormCreate(Sender: TObject);
begin
  TS:= TStringList.Create;
  TS.Add('1,0625');  
  TS.Add('1,375');
  TS.Add('1,875');
  TS.Add('2,625'); 
  // el resto de los valores
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)*StrToFloat(TS[StrToInt(Edit2.Text)-1]));
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  TS.Free;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 29-11-2011 a las 00:12:48.
Responder Con Cita
  #12  
Antiguo 29-11-2011
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Espero que esto se lo que estas buscando
Código Delphi [-]
...
var
  EQ: Extended;     // Valor Equivalente 1..9
  E1, E2: Integer;  // Edit, 1..2
  E3: Extended;     // Edit3
begin
  E1 := StrToInt(Edit1.Text);
  E2 := StrToInt(Edit2.Text);
  case E2 of
    1: EQ := 1.0625;
    2: EQ := 1.375;
    3: EQ := 1.875;
    4: EQ := 2.625;
    5: EQ := 3.625;
    6: EQ := 4.875;
    7: EQ := 6.375;
    8: EQ := 8.125;
    9: EQ := 10.125;
  end;

  E3 := (E1 * EQ);

  Edit3.Text := FormatFloat('0.0000', E3);
end;
Un saludo.
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
Calculadora de Windows sizne OOP 3 29-05-2010 01:37:02
Calculadora en sistema capo979 Varios 2 07-12-2007 02:20:12
Calculadora sebaguillen Varios 17 28-08-2007 15:27:23
Calculadora Epunamun OOP 3 19-12-2005 22:33:11
Calculadora licencia GNU bismarck_sierra Varios 0 05-04-2005 06:56:33


La franja horaria es GMT +2. Ahora son las 05:29:21.


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