Corso Dall’Algoritmo al C++ Base – Lezione Pratica n.3 – Le strutture cicliche in C++

Introduzione

Le strutture cicliche nella programmazione rivestono un’importanza enorme, e quindi chi si avvicina al mondo della programmazione deve imparare bene ad utilizzarli.
Per fare questo occorre svolgere diversi esercizi, prima impostando l’algoritmo risolutivo, e poi attraverso la codifica in C++.
L’esercizio che si propone serve proprio a rafforzare la conoscenza, la competenze nell’uso di queste strutture della programmazione e più in generale degli algoritmi.
Testo dell’esercizio:
“Calcolare il valore della merce di un magazzino, ove sono noti il prezzo, il codice e la quantità dei prodotti, e visualizzarlo a video”.
Questo esercizio che sembra molto banale richiede la conoscenza delle strutture cicliche; infatti nell’esercizio non è fatto riferimento al numero dei prodotti.
Questo vuol dire che il numero dei prodotti è arbitrario e che sarà l’utente in base ad un inserimento a decidere quando interrompere il ciclo.
La strategia di risoluzione può essere appunto quella di utilizzare una variabile di tipo carattere di nome “risposta” che determina in base ad un condizione se l’utente vuole inserire altri dati o meno.
Tale variabile assume due valori “s” o “n” che indicano in modo abbreviato la risposta “sì” o “no”.
La tabella delle variabili del nostro algoritmo è quindi:

UsoNomeTipoDescrizione
InputPrezzoRealePrezzo di ogni prodotto
InputCodiceStringa di 4 caratteriCodice alfanumerico del prodotto
InputQInteroQuantità di ogni singolo prodotto
Inputriscarattererisposta dell’utente alla richiesta di nuovo inserimento “s” sì “n” è no. In C++ i caratteri maiuscoli sono distinti da quelli minuscoli.
OutputtotaleRealeTotale di tutta la merce
Tabella dati

L’algoritmo risolutivo è rappresentato dal seguente diagramma di flusso o flow-chart:

Diagramma di flusso dell'algoritmo risoltuvi:
Inizio
totale=0
ris='s'"
mentre (ris='s') fai:
scrivi "Inserisci nell'ordine codice, prezzo e quantità"
leggi codice
leggi prezzo
leggi q
totale=totale+prezzo*q
scrivi "altri dati  ? s/n"
leggi ris
fine mentre
scrivi "il totlae della merce è:"
scrivi totale
fine
Diagramma di flusso dell’algoritmo risolutivo

Il software flowgorithm consente la prova del nostro algoritmo sul calcolatore ancor prima di scrivere il codice C++. La notazione differente di flowgorithm è la dichiarazione nei blocchi iniziali delle variabili, e la differente forma che usa per il ciclo “while” che in realtà essendo un ciclo condizionale dovrebbe essere rappresentato nel “rombo”. A parte queste differenti di notazioni, il ciclo continua fin quando l’utente digita “s” come risposta alla richiesta di inserimento di altri dati.
La codifica in C++ potete ricopiarla dalla video lezione pratica n.3

Video dell’articolo