Linguaggio C++

Input Cin

Guida all'uso di cin in C++. Analisi dell'operatore di estrazione, della lettura di variabili singole e multiple, e confronto con il blocco Input di Flowgorithm.

Durata

50 minuti

Software

Dev-C++ / VS Code

Il "motore" dietro cin: la libreria iostream

Per poter utilizzare cin e cout, il compilatore C++ ha bisogno di istruzioni specifiche contenute in una libreria standard. Senza queste "istruzioni per l'uso", il computer non saprebbe come gestire la tastiera o il monitor.

#include <iostream>

Lo Stream di Input: cin

Mentre cout invia dati allo schermo, cin preleva dati dalla tastiera e li "estrae" per metterli dentro una variabile. L'operatore >> indica proprio questo flusso verso la variabile.

flogorithm lettura
cin >> nomeVariabile;

La sequenza corretta: Domanda e Risposta

A differenza di Flowgorithm, dove il blocco Input mette automaticamente in pausa il programma con un prompt, in C++ il cin da solo fa apparire solo un cursore lampeggiante. È buona norma far precedere ogni cin da un cout che spieghi all'utente cosa inserire.

Fase Istruzione C++ Effetto a video
1. Output (Domanda) cout << "Quanti anni hai? "; Quanti anni hai? _
2. Input (Attesa) cin >> eta; L'utente scrive 16 e preme Invio

Input Multiplo

È possibile leggere più valori in sequenza usando un solo cin, separando le variabili con l'operatore >>. Il programma attenderà che l'utente inserisca i valori separati da uno spazio o da un tasto Invio.


// Lettura di due numeri in un colpo solo
cout << "Inserisci base e altezza separate da uno spazio: ";
cin >> base >> altezza;

Esempio

Uniamo tutto: dichiarazione, output di cortesia e acquisizione dati.


#include <iostream>
#include <string>
using namespace std;

int main() {
    // 1. Dichiarazione
    string nome;
    int annoNascita;
    int annoAttuale = 2024;

    cout << "--- BENVENUTO NEL SISTEMA ---" << endl;

    // 2. Input del nome
    cout << "Inserisci il tuo nome: ";
    cin >> nome;

    // 3. Input dell'anno
    cout << "In che anno sei nato, " << nome << "? ";
    cin >> annoNascita;

    // 4. Elaborazione e Output finale
    int eta = annoAttuale - annoNascita;
    cout << "Ciao " << nome << ", quest'anno compi " << eta << " anni!" << endl;

    return 0;
}
Attenzione con le stringhe: L'istruzione cin >> variabile si ferma al primo spazio. Se l'utente scrive "Mario Rossi", cin leggerà solo "Mario". Per leggere nomi con spazi servirà un comando speciale (getline) che vedremo più avanti.

Esercizio

Scrivi un programma che chieda all'utente i dati di un rettangolo:

  1. Chiedi il valore della base.
  2. Chiedi il valore dell'altezza.
  3. Calcola l'area e il perimetro.
  4. Stampa i risultati in modo elegante, ad esempio:
    "Un rettangolo con base 5 e altezza 10 ha un'area di 50."




C++, Input, cin, Interazione, Coding,