Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-04-2017
Daniel2622 Daniel2622 is offline
Miembro
 
Registrado: abr 2017
Posts: 27
Poder: 0
Daniel2622 Va por buen camino
Suma de números pares que hay entre dos números

Hola necesito ayuda con el siguiente ejercicio:
Escribe un programa que calcule la suma de los números pares que hay entre dos números dados como entrada. Usa la instrucción de ciclo while-do o repeat-until.
De antemano muchas gracias.
Saludos.
Responder Con Cita
  #2  
Antiguo 21-04-2017
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.827
Poder: 9
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Y cual es tu duda?
Responder Con Cita
  #3  
Antiguo 21-04-2017
Daniel2622 Daniel2622 is offline
Miembro
 
Registrado: abr 2017
Posts: 27
Poder: 0
Daniel2622 Va por buen camino
[AgustinOrtu], es que no se como empezar el ejercicio.
Responder Con Cita
  #4  
Antiguo 21-04-2017
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.008
Poder: 14
ElKurgan Va por buen camino
A lo mejor te sirve esto:

Código Delphi [-]
procedure TForm1.Button2Click(Sender: TObject);
var
  n1,n2,c,codigo:Integer;
  i: Integer;
  desde, hasta: integer;
  suma: Integer;
begin
  Memo1.Lines.Clear;
  val(Edit1.Text,n1,codigo);
  val(Edit2.Text,n2,codigo);
  if n1 < n2 then
  begin
    desde := n1;
    hasta := n2;
  end
  else
  begin
    desde := n2;
    hasta := n1;
  end;

  Memo1.Lines.Add(
    Format('Numeros Pares entre %0:d y %1:d', [desde, hasta]));

  i := desde;
  Suma := 0;
  repeat
    if (i mod 2) = 0 then
    begin
      Memo1.Lines.Add(Format('%d', [i]));
      Suma := Suma + i;
    end;
    i := i + 1;
  until i > hasta;
  Memo1.Lines.Add('--------------------');
  Memo1.Lines.Add(format('Total suma: %d', [Suma]));
end;
Un saludo
Responder Con Cita
  #5  
Antiguo 21-04-2017
Daniel2622 Daniel2622 is offline
Miembro
 
Registrado: abr 2017
Posts: 27
Poder: 0
Daniel2622 Va por buen camino
HolaElKurgan, tengo uma duda, que signsignifica lo siguiente:
Código Delphi [-]
Memo1.Lines.Add(
    Format('Numeros Pares entre %0:d y %1:d', [desde, hasta]));

  i := desde;
  Suma := 0;
  repeat
    if (i mod 2) = 0 then
    begin
      Memo1.Lines.Add(Format('%d', [i]));
      Suma := Suma + i;
    end;
    i := i + 1;
  until i > hasta;
  Memo1.Lines.Add('--------------------');
  Memo1.Lines.Add(format('Total suma: %d', [Suma]));
end;

Principalmente lo de los %.
Gracias y saludos.
Responder Con Cita
  #6  
Antiguo 21-04-2017
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 9.824
Poder: 27
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 behold
Hola.
Cita:
Empezado por Daniel2622 Ver Mensaje
HolaElKurgan, tengo uma duda, que signsignifica lo siguiente:
...
Principalmente lo de los %.
.
[ Format command ]

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 22-04-2017
Daniel2622 Daniel2622 is offline
Miembro
 
Registrado: abr 2017
Posts: 27
Poder: 0
Daniel2622 Va por buen camino
Gracias [El Kurgan], me fue de gran ayuda tu código.
Saludos.
Responder Con Cita
  #8  
Antiguo 23-04-2017
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 1.881
Poder: 12
escafandra Va camino a la famaescafandra Va camino a la fama
Esta opción requiere menor potencia de cálculo:
Código Delphi [-]
function SumaPares(n, m: Integer): Integer;
begin
  if(n mod 2 = 0) then dec(n);
  if(m mod 2 = 0) then inc(m);
  Result:= ((m - n) div 2 + (m - n) mod 2) * ((n + m) div 2);
end;

Saludos.
Responder Con Cita
  #9  
Antiguo 25-04-2017
Avatar de Neftali
Neftali Neftali is offline
-Germán Estévez-
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 15.352
Poder: 10
Neftali Va camino a la famaNeftali Va camino a la fama
Cita:
Empezado por ElKurgan Ver Mensaje
A lo mejor te sirve esto:
Es posible que sea una opción fácil (sobre todo para la persona que está pidiendo ayuda con los deberes -o al menos esa sensación de da a mi-), pero tal vez deberíamos plantearnos si esta es la solución "adecuada" para un caso como este.

En los últimos días están saliendo varios hilos como este, y creo que tenemos que tener cuidado con las soluciones que ofrecemos.

No se si me explico claramente.

NOTA: No se trata de NO ayudar, en este caso a Daniel2622, ya que al final la utilidad del foro es esa, pero tampoco estamos para "hacerle los deberes a nadie".
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #10  
Antiguo 25-04-2017
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.827
Poder: 9
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Cita:
Empezado por Neftali Ver Mensaje
NOTA: No se trata de NO ayudar, en este caso a Daniel2622, ya que al final la utilidad del foro es esa, pero tampoco estamos para "hacerle los deberes a nadie".
Totalmente de acuerdo. De hecho no estamos ayudando, estamos haciendo mal a la persona. Por eso mi pregunta en estos casos es siempre la misma:

Cita:
Empezado por AgustinOrtu
Y cual es tu duda?
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Números aleatorios decimales entre 0 y 1 LuisAlf:: Varios 2 30-04-2011 01:59:56
Comparar 2 numeros jzginez OOP 6 18-02-2010 02:41:11
Numeros a letras citlalliDgp Varios 6 19-03-2009 08:14:54
Los numeros del Pasaporte / DNI seoane Trucos 0 08-06-2006 14:31:59
equivalencia entre tipos de numeros kikodelphi MS SQL Server 4 14-12-2005 12:59:55


La franja horaria es GMT +2. Ahora son las 11:21:00.


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