Ejercicio 10: Suma de todos los primos hasta 2.000.000
De Software Libre para la Enseñanza y el Aprendizaje de las Matemáticas (2010-11)
Enunciado: Sabemos que la suma de los primos inferiores a 10 es 2+3+5+7=17.
Calcular la suma de todos los primos inferiores a 2.000.000.
Solución: Definimos suma=0, será el acumulador donde se van a ir guardando las sumas en todas las iteraciones que el número sea primo. Se construye el bucle, for, para que recorra todos los números de 2 a 2.000.000. No sumamos el número 1 ya que en el ejemplo que se indica de 10 no lo incluye. Se construye la condición con if. La condición factor(i) muestra la descomposición de i en producto de factores primos, con lo que si i es primo sólo mostrará i y, por tanto, lo sumaremos. En caso contrario pasará a i+1.
suma:0; for i:2 thru 2000000 do if factor(i)=i then suma:i+suma; suma;
142913828922