edutecnica

Esercizio 9        

Costruire un algoritmo che accetta in ingresso un numero k intero positivo minore di 20 e visualizza una riga di k asterischi.


La soluzione dell'esercizio si risolve banalmente con un ciclo for una volta noto il numero di asterischi da stampare.

#include <iostream>
using namespace std;
int main(){
  int k,i;
  do{
    cout<<"k:";cin>>k;
  }while(k<1 || k>20);
  for(i=0;i<k;i++)cout<<"*";
return 0;
}

Diventa, invece, piuttosto interessante il modo di acquisire il valore della variabile k tramite le istruzioni:
do{
   cout<<"k:";cin>>k;
}while(k<1 || k>20);
Cioè, un costrutto do-while continua a chiedere il valore di k finchè non è stato inserito un valore congruo per esso: un numero compreso tra 1 e 20 (incluso).
Ricordiamo che una stuttura ciclica continua a 'ciclare' finchè la condizione logica specificata è vera.
Nel nostro caso il do-while continuerà a ripetersi finchè il numero introdotto è minore di 1 oppure (||) maggiore di 20.