FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Sumar en Delphi Con ListBox
Saludos, soy nuevo aqui y estoy estudiando delphi en la universidad, y ya me empezaron a poner algunos ejercicios, espero poder contar con su ayuda, al igual yo poder ayudarlo en temas que domino, con algunas preguntas que hagna.
lo que quiero es una suma que cuando seleccione un items del list box me haga la suma, resta, multiplicacion , división, y me muestre el resultado en un text. Este es mi diseño, solo falta aplicarle los codigo, me gustaria solo el ejemplo de la suma , de ahi haria los demas, ya tengo el codigo de salir y de limpiar h t t p : / / content.screencast.com/users/Raniel/folders/Jing/media/8b9f4356-66ac-40bd-abe4-52b09a14f35e/2010-10-25_0008.png pegar despues del h t t p : / / sorry es que no me permitia poner la imagen ni enlace debe ser porq soy nuevo... Un millon de Gracias |
#2
|
||||
|
||||
Hola Ray16.
Primero la ayuda que pediste:
Segundo este código no hace ninguna comprobación de conversión. O sea que si pones '15' en el primer edit y 'abc' en el segundo, cuando realize la operación te dará error. También podrias agregar un else poniendo un mensaje de advertencia si algún edit esta vacío... queda en tus manos. Nota: Si alterás el orden del ListBox (suma,resta, multiplicación, división) respetá el nuevo órden en la evaluación del case/of, si no podría suceder que 2 x 1 sea igual a 3... Saludos. Última edición por ecfisa fecha: 25-10-2010 a las 08:18:12. |
#3
|
|||
|
|||
Un millon de gracias, lo he hecho con numeros reales en vez de entero
lo tengo de esta forma y funcionan todas las operaciones... if (Edit1.Text > '') and (Edit2.Text > '') then // Esto me limpiara los edit case ListBox1.ItemIndex of 0: edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)+StrToFloat(Edit2.Text)); 1: edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)-StrToFloat(Edit2.Text)); 2: edit3.Text:= floattostr(StrToFloat(Edit1.Text)*StrToFloat(Edit2.Text)); 3: ; solo me falta la división cuando la pongo me da error, me lo marca en rojo si lo ponga de esta forma : incluyendo la division... if (Edit1.Text > '') and (Edit2.Text > '') then // Esto me limpiara los edit case ListBox1.ItemIndex of 0: edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)+StrToFloat(Edit2.Text)); 1: edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)-StrToFloat(Edit2.Text)); 2: edit3.Text:= floattostr(StrToFloat(Edit1.Text)*StrToFloat(Edit2.Text)); 3: edit3.Text:= floattostr(StrToFloat(Edit1.Text)/StrToFloat(Edit2.Text)); me marca esta ultima linea en rojo, y para la division por cero quiero validarlo de esta forma. if (numero2=0) then begin ShowMessage('Error Al Dividir entre cero'); end else begin hacer la division. Gracias por la ayuda Ecfisa, pude hacer las operaciones, ahora solo falta la division... Gracias!, |
#4
|
|||
|
|||
Cita:
Otra cosa lo hice con un ComboBox y me funciona, como aplicaria la validacion al dividir entre cero procedure TForm1.ComboBox1Change(Sender: TObject); begin if (Edit1.Text > '') and (Edit2.Text > '') then // Esto me limpiara los edit case ComboBox1.ItemIndex of 0: edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)+StrToFloat(Edit2.Text)); 1: edit3.Text:= FloatToStr(StrToFloat(Edit1.Text)-StrToFloat(Edit2.Text)); 2: edit3.Text:= floattostr(StrToFloat(Edit1.Text)*StrToFloat(Edit2.Text)); 3: edit3.Text:= floattostr(StrToFloat(Edit1.Text)/StrToFloat(Edit2.Text)); como adjuntaria ete codigo if (numero2=0) then begin ShowMessage('Error Al Dividir entre cero'); end else begin hacer division Mil gracias |
#5
|
||||
|
||||
Cita:
Exacto, vos mismo te diste la respuesta, una forma de hacerlo podría ser:
Es igual hacerlo con la comprobación inversa tál como lo pusiste en el pseudocódigo: if StrToFloat(Edit2.Text) = 0 then, solamente cambia el órden de las acciones. Saludos. Última edición por ecfisa fecha: 25-10-2010 a las 17:18:32. |
#7
|
|||
|
|||
Un millon de Gracias, Los pude hacer y validar la división entre cero.
el profe solo pidio eso lo de validar en cero, lo de las letras no, pero ya lo haré para conocimiento. Gracias! Éxitos, seguimos en contactos... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Sumar Dias a un fecha en Delphi 5 | alejozd | OOP | 4 | 22-12-2010 09:04:07 |
Varias columnas en ListBox (DELPHI) | JUANRS | Internet | 9 | 11-11-2008 22:43:25 |
agregar y/o eliminar items de un listbox a partir de otro listbox | Goyo | PHP | 2 | 27-09-2007 16:46:30 |
Sumar elementos de un ListBox | creus | Varios | 4 | 16-01-2007 19:34:05 |
Sumar dias a una fecha inicial en delphi | bellota | Varios | 4 | 06-06-2006 16:42:40 |
|