Questo problema recita:

A palindromic number reads the same both ways.
The largest palindrome made from the product of two
2-digit numbers is 9009 = 91×99.

Find the largest palindrome made from the product of
two 3-digit numbers.

Risolviamo questo problema prima concettualmente e poi passiamo alla sua implementazione in Python.

Continue reading »

 

Con il terzo problema ci troviamo davanti la prima difficoltà, questa volta infatti il metodo più intuitivo risulta inapplicabile computazionalmente. Ma leggiamo la richiesta del problema:

The prime factors of 13195 are 5, 7, 13 and 29.

What is the largest prime factor of the number 600851475143 ?

Dobbiamo trovare quindi il più grande fattore primo di un numero dato.

Continue reading »

 

Dopo aver affrontato con non troppa difficoltà il primo problema, ci prepariamo ad affrontare il secondo. Il testo recita più o meno in questo modo.

Each new term in the Fibonacci sequence is generated by adding
the previous two terms.
By starting with 1 and 2, the first 10 terms will be:

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …

Find the sum of all the even-valued terms in the sequence which
do not exceed four million.

Il nostro compito consiste quindi nel trovare tutti i numeri di Fibonacci minori di 4 milioni, scartare i dispari e sommare i pari. Matematicamente l’algoritmo consiste in:

  1. Trovare l’n-esimo numero della successione partendo dal n-1esimo e n-2esimo.
  2. Verificare se è pari. Ovvero vedere se il resto della divisione per due è zero.
  3. Se è pari, sommarlo alla somma parziale che teniamo da parte.

Continue reading »

 

In questi articoli cercherò di illustrarvi gli algoritmi risolutivi del Progetto Eulero a scopo didattico e di guida nel caso di problemi particolarmente ostici.

Il problema 1 del Progetto Eulero recita più o meno cosi:

If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.

Find the sum of all the multiples of 3 or 5 below 1000.

Bene. Il primo problema, in quanto primo è molto semplice. Dobbiamo trovare tutti i numeri minori di mille tali che siano divisibili interamente da 3 o da 5 e sommarli insieme. In Python l’algoritmo risolutivo ha più o meno questa forma. Continue reading »

© 2008-2012 SlashCode Suffusion theme by Sayontan Sinha