For, if

lanaemilyn

Nuovo Utente
13 Ago 2021
4
0
1
Ciao ragazzi, sto cercando di imparare PHP per dare un'esame importante all'università ma sono solo all'inizio (dovete avere pazienza :D).
Posso chiedervi una mano per svolgere questo esercizio e come faccio a capire se devo usare solamente un if o for/while.
- Dato un vettore $V con $N numeri, scrivere un frammento di codice PHP che aumenta di 1 gli elementi che sono minori di 5.
Vi ringrazio in anticipo! ♥♥
 

zorro

Utente Attivo
20 Ott 2014
324
21
28
ROMA
Ciao,
sono due cose differenti: for e while sono cicli che ti permettono di ripetere più volte una determinata operazione. il ciclo for ti permette di ripetere l'operazione per un numero definito di volte (10,30,6,2 ecc.) mentre while ti permette di ripeterla fintanto che rimane vera una certa condizione (ad es. ripeti finché un numero rimane inferiore a 5) specificata da te. A differenza del ciclo for, non sai quante volte verrà eseguita (4,20,50 o anche nessuna volta), tutto dipenderà dal verificarsi o meno della condizione.
If invece è un costrutto che ti permette di prendere delle decisioni: se succede questa cosa, fai questo, altrimenti (else) fai quest'altro. A volte però l'else non prevede nessuna azione, per cui si può anche omettere.
Per quanto riguarda l'esercizio, dovrai usare un ciclo for che si ripete tante volte quanti sono i numeri contenuti nel vettore, all'interno del quale verificherai con if se il numero è minore di 5 (in questo caso sommerai 1) altrimenti non farai niente e quindi puoi anche omettere l'else.
Spero di essere stato chiaro con la spiegazione; ho buttato giù anche uno script, ma prima di mandartelo controlla qui se è quello che intendevi fare. fammi sapere ciao


Zorro
 
Ultima modifica:
  • Like
Reactions: lanaemilyn

lanaemilyn

Nuovo Utente
13 Ago 2021
4
0
1
Ciao Zorro, sei stato chiarissimo!
Ora mi è chiara la differenza tra i due.
Eh sì, il risultato che voglio ottenere è proprio quello dello script, se mi mandi il codice mi fai un favore immenso.
Grazie ancora!
 

Tommy03

Utente Attivo
6 Giu 2018
616
58
28
20
Vicenza
Ciao scusate l intromissione per ottenere l'array modificato fai così:
PHP:
for($i=0;$i<$N;$i++){
if($V[$i]<5){
echo $V[$i]+1;
}else{
echo $V[$i];
}
}
 
  • Like
Reactions: lanaemilyn

lanaemilyn

Nuovo Utente
13 Ago 2021
4
0
1
Ciao scusate l intromissione per ottenere l'array modificato fai così:
PHP:
for($i=0;$i<$N;$i++){
if($V[$i]<5){
echo $V[$i]+1;
}else{
echo $V[$i];
}
}
Ciao Tommy, grazie mille per la soluzione, ne approfitto per chiederti una cosa: Ho buttato giù questo codice e ha funzionato:

<?php

$v= [1, 2, 3, 4, 10, 12, 54];
$n= [0];

for ($i=0; $i<sizeof($v); $i++) {
$n= $v[$i]+1;

if ($n<5) {
echo $n . "<br>";
};
};
?>

Mi puoi dire se l'uso de sizeof è giusto? Questa potrebbe essere una risposta?
Il codice mi fornisce questo risultato: 2, 3, 4
Che è quello richiesto nell'esercizio.
Grazie ancora!