Home

Archivos

Buscar

Categorías

Feeds:

RSS / Atom

Project Euler 1· 7. December 2007, 20:38

El ejercicio diario de programación es la respuesta al problema #1 de Project Euler

En C#

class Multiplos1
{
  static void Main ()
  {
    int result=0;
    for (int i=1;i<1000;i++)
    {
      if (i%3==0 || i%5==0)
        result+=i;
    }
    System.Console.WriteLine("{0}",result);
  }
}

En Ruby (este si que esta malo, fue de lo primero que hice cuando empece con Ruby)

multiplos=[]
(1..999).each do |a|
 if a%3==0 || a%5==0
  multiplos.push(a) 
 end
end
suma=0
multiplos.each { |a| suma = suma +a }
puts suma  

Mejor version en Ruby ya conociendo algo mas:

suma=0
(1..999).each { |a| suma+=a if (a%3==0||a%5==0)}
puts suma

O en una sola línea, aunque se ve más como groserias (o perl)

puts (1..999).inject(0) { |suma,a| suma+=(a%3==0 || a%5==0) ? a : 0}