Esercizi PHP con soluzione per corso di formazione PHP Base
Elenco di esercizi PHP con soluzione per corso di formazione PHP Base.
La numerazione dell’esercizio è indicativa del livello di difficoltà, dal più semplice al più complicato. Se hai osservazioni, domande o suggerimenti: scrivici all’indirizzo [email protected]
Esercizio 1: Scrivere un programma PHP per stampare tutti i numeri primi presenti tra 1 e 50
Un numero primo è un numero intero maggiore di 1 i cui unici divisori sono 1 e se stesso, come -2, 3, 5, 7, 11 ecc.
Ad esempio, 17 è un numero primo perché è divisibile solo per 1 e 17. Invece 18 non è un numero primo perché è divisibile per 2, 3, 6, 9 e per il numero stesso. Questi sono diversi modi per stampare un numero primo compreso tra 1 e 100 nel linguaggio di programmazione PHP.
Il codice seguente stampa un elenco di numeri primi compresi tra 1 e 50 (ovvero numeri non divisibili per qualcosa di diverso da 1 o per il numero stesso) utilizzando un ciclo while.
<?php
$limit = 50;
$init = 2;
while(TRUE)
{
$div = 2;
if($init > $limit)
{
break;
}
while(TRUE)
{
if($div > sqrt($init))
{
echo $init." ";
break;
}
if($init % $div == 0)
{
break;
}
$div = $div + 1;
}
$init = $init + 1;
}
Nella soluzione abbiamo due cicli while. Il ciclo while interno esegue il test con ogni possibile divisore. Se il ciclo interno trova un divisore, il numero non è primo, quindi si interrompe senza stampare nulla, e se il test arriva fino alla radice quadrata del numero, possiamo supporre che il numero sia primo. Il ciclo esterno funziona attraverso tutti i numeri compresi tra 1 e 50. Questo ciclo viene interrotto quando abbiamo raggiunto il punto di rottura dei numeri da testare.
BlogInnovazione.it