Progettare e implementare un software in linguaggio C++ che prende in input n valori reali corrispondenti alle temperature di varie città e conta tutte le temperature che superano i 25.5 gradi. In seguito stampa questo conteggio come risultato. (iterazione contatore temperature).
Analisi del problema
Dati input: N, temp*
Dati Output: conteggio
Variabili
(n,_,int) rappresenta il numero delle temperature da leggere dall’utente
(temp,_,int) rappresenta l’attuale temperatura letta
(cont,_,int) il contatore che conta quante volte ripetiamo un’operazione
(conteggio,_,int ) rappresenta il numero di temperature maggiori di 25.5 gradi
Progetto
Per prima cosa pensiamo che dobbiamo prendere in input n temperature. L’operazione che deve essere ripetuta tante volte è la richiesta di una temperatura e il controllo della stessa temperatura. Se questa supera i 25.5 gradi è necessario aumentare la variabile conteggio che rappresenta il numero delle temperature che superano. Questa operazione va ripetuta N volte. (iterazione contatore temperature)
L’algoritmo inizia dichiarando le variabili necessarie e inizializzandole:
Il conteggio è stato assegnato al valore 0 perchè non abbiamo ancora contato nessuna temperatura maggiore a 25.5 gradi. La variabile n memorizza quante temperature dobbiamo leggere e il suo valore viene letto dall’utente; infine la variabile cont all’inizio è posta pari a 0 e ci permetterà di contare quante volte ripetere un’operazione.
Per ripetere un numero di volte fissato un’operazione possiamo progettare una struttura di conteggio nel seguente modo:
Ora all’interno del ciclo dobbiamo definire le operazioni di lettura di una nuova temperatura e di controllo se la temperatura supera i 25.5 gradi (e se questo è vero bisogna aumentare la variabile di conteggio):
Infine è necessario stampare il valore conteggio che contiene le temperature che superano i gradi:
L’algoritmo completo è il seguente:
Implementazione
Implementiamo l’algoritmo utilizzando il linguaggio C++:
#include <iostream>
using namespace std;
int main() {
//dichiarazioni
int n, cont, conteggio;
double temp;
conteggio = 0;
//lettura n
cout << "Dammi un numero di temperature da leggere" << endl;
cin >> n;
//contatore
cont = 0;
while (cont < n) {
cout << "Dammi una temperatura" << endl;
cin >> temp;
if (temp > 25.5) {
conteggio = conteggio + 1;
}
cont = cont + 1;
}
cout << "Il numero di temperature che superano i 25.5 gradi è" << endl;
cout << conteggio << endl;
return 0;
}
Ritorna a pattern contatore