elithebest_98 ha scritto:
Conosco solo i nomi non li so proprio usare questo è il dunque in più nel libro che ho non sono spiegati molto bene
Ma che schifo di libro hai???
provo a spiegarti un po' in generale questi tre cicli (lo so, sono negato con le spiegazioni , ma almeno ho tentato di aiutarti)
i cicli sono dei frammenti di codice che ti permettono di eseguire più volte determinate istruzioni.
ci sono tre principali tipi di iterazione: a condizione iniziale, a condizione finale e a conteggio.
Il ciclo a condizione iniziale è costituito da
while(<condizione>){
...istruzioni...
}
In questo tipo di iterazione le istruzioni (tutto il codice scritto tra le graffe) vengono eseguite finchè la variabile <condizione> è vera.
Questo ciclo viene solitamente utilizzato quando non si conosce a priori il numero di iterazioni necessarie, ma solo la condizione di uscita.
Un'esempio e' il ciclo principale di un videogioco: finchè la partita non è terminata, esegue tutte le operazioni necessarie e crea un altro frame.
ps: se la <condizione> è falsa fin dall'inizio, il ciclo non si esegue mai.
Il ciclo a condizione finale è costituito da
do{
...istruzioni...
}while(<condizione>);
Questo tipo di iterazone è uguale al ciclo while(), ma la condizione di ripetizione viene verificata alla fine del blocco di istruzioni.
E' utile quando si vuole eseguire almeno una volta le istruzioni del ciclo, che spesso determinano se verrà rieseguito o meno.
Un esempio è un algoritmo che prende in input una serie di numeri finchè non viene inserito '0'; ovviamente per eseguire il controllo è necessario inserire prima il numero, quindi il ciclo while() sarebbe un po' scomoda.
Il ciclo a conteggio è costituito da
for(<contatore>=<valore di partenza>;<condizione>;<modifica del contatore>){
...istruzioni...
}
Questo ciclo è utilizzato assieme a una variabile definita "variabile contatore", che viene inizialmente inizializzata, e poi le istruzioni vengono eseguite finchè la <condizione>(che spesso ha a che fare con il contatore) è vera.
Alla fine di ogni ripetizione il contatore viene modificato opportunamente(spesso incrementato o diminuito di un unità);
E' utile quando devi eseguire un blocco di istruzoni un numero conosciuto di volte.
Un esempio e' scrivere 10 volte la stessa frase.
E' utilissimo quando si lavora con array/vettori;
ps: non è obbligatorio riempire tutti e tre i campi
esempi
int main(){
while(1){ //ciclo infinito
int i, //variabile contatore
int v[50]; //array
for(i=0;i<50;i++){ //inizializza tutto l'array a 0
v[i]=0;
}
i=(-1); //così parte dall'elemento 0
do{
i+=1; //incrementa il contatore
cin << v[i]; //input il valore
}while(v[i]!=0 and i<50); //finchè il valore inserito è diverso da 0 e sono stati inseriti meno di 50 num(x evitare overflow dell'array statico)
for( ;i>0; ){ //stampa tutti gli elementi
cout << v[i-1];
i--; //decrementa il contatore(avrei potuto farlo nel ciclo)
}
}
}
Spero di averti fatto capire quacosa... al massimo guardati qualch video su youtube