Test PHP/Laravel
Quesito 1
Random Array( 1 , 2 , 3 , 6 , 12 , 14 , 15 , 20 , 31 , 38 , 41 , 71 , 78 , 81 , 87 , 92 , 95 , 96 , 99 , 100 )
Somma Numeri Pari=458
Esiste il Numero 33? NO
Il primo numero dispari dell'array è: 1 e si trova alla posizione : 1
Scrivere un programma PHP che, ad ogni esecuzione:
- generi un array di 20 numeri interi casuali e non duplicati compresi tra 1 e 100 e lo stampi in pagina;(N.B.: i numeri devono essere sempre 20 e senza duplicati)
- stampi in pagina la somma di tutti i numeri pari all’interno dell’array;
- verifichi se nell’array è presente il numero 33;
- stampi in pagina la posizione del primo numeri dispari dell’array (e il numero stesso).
<!DOCTYPE html>
<html xml:lang="it" lang="it">
<head>
<title>Esercizio finale Dot Accademy - PHP</title>
</head>
<body>
<h1>Test PHP/Laravel</h1>
<h2>Quesito 1</h2>
<?php
$array = array_fill(1,100,0);
$x = 1;
do{
$pos = rand(1,100);
if( $array[ $pos ] === 1)
continue;
$array[$pos]=1;
$x++;
}while($x <= 20);
$arrayRandom = array();
for ($x = 1; $x <= 100; $x++) {
if($array[$x]===1){
array_push($arrayRandom,$x);
}
}
$str ="Random Array(";
$SommaPari=0;
$Esiste_Num_33 = "NO";
$PosizioneNumeroDispari = null;
$PrimoNumeroDispari = null;
$posizione =1;
foreach ($arrayRandom as &$value) {
echo $str . " " . $value . " ";
$str=",";
if($value %2===0)
$SommaPari+=$value;
else
{
if ($PosizioneNumeroDispari ===null) {
$PosizioneNumeroDispari =$posizione;
$PrimoNumeroDispari=$value ;
}
}
if($value ===33)
$Esiste_Num_33 = "Si";
$posizione++;
}
echo ")";
echo ("<br><br>Somma Numeri Pari=" . $SommaPari);
echo ("<br><br>Esiste il Numero 33? " . $Esiste_Num_33);
echo ("<br><br>Il primo numero dispari dell'array è: " . $PrimoNumeroDispari . " e si trova alla posizione : " . $PosizioneNumeroDispari);
?>
</body>
</html>