Lezioni di Informatica
"Una volta che abbiate conosciuto il volo, camminerete sulla terra guardando il cielo" [ L. da Vinci ]
Informazioni sul Sito
N. visitatori  000059263  dal 21/01/2007  |   e-mail: ksoft64camera@gmail.com   
Cerca nel sito
Documenti collegati alla pagina
Dati

Tipi di dati fondamentali in C++

  • char
    Significa carattere e occupa un byte. Per costruire una stringa in C++ si ricorre a un vettore di char.
  • int
    E' un tipo numerico intero e può assumere valori compresi tra -32768 e +32767
  • float
    E' un tipo numerico frazionario e può assumere valori compresi tra 3.4E-38 e 3.4E+38; occupa 4 byte
  • double
    E' un tipo numerico frazionario e può assumere valori compresi tra 1.7E-308 e 1.7E+308; occupa 8 byte
  • bool
    E' un tipo di dato che può assumere valore true o false e occupa 1 byte

Costanti

Sono dati che non possono cambiare il loro valore nel corso dell'esecuzione del programma. Si dichiarano tramite il costrutto const

const tipo costante = valore; 
Esempio:
const int N = 10;
Come si può notare si utilizzano, per convenzione, i caratteri maiuscoli per definire le costanti. E' solo per distinguere questo tipo di dati rispetto ai dati variabili.

Variabili

Sono dati che cambiano il loro valore nel corso dell'esecuzione del programma. Si dichiarano così:

tipo variabile [ = valore]; 
Esempio:
int eta = 12;
oppure:
int eta;
nel primo caso la variabile eta viene inizializzata a 12 anche se poi nel programma può cambiare; nel secondo caso, visto che non ha un valore iniziale, assume il valore standard per i numeri interi che è zero.

Inserimento dei dati da tastiera [cin]

La libreria iostream fornisce il comando cin (console input) e i simboli di direzione dell'input rappresentati da due parentesi angolari destre affiancate (>>).
cin acquisisce una o più variabili (argomenti) da tastiera. Il formato è:

cin >> argomento;
Esempio:
per inserire il numero n da tastiera (n) si scrive:
cout << "Inserire un numero intero: ";
cin >> n;

La funzione fgets()

Quando si inserisce una stringa con cin non è possibile scrivere caratteri di punteggiatura o spazi perché questi farebbero terminare la stessa (Es. se scrivo "Rossi Carlo" verrebbe memorizzato solo "Rossi".
Utilizzando la funzione fgets() è possibile leggere un testo utilizzando qualsiasi carattere fino a quando non si digita il tasto INVIO.
Necessita di 3 parametri:

  • il primo è il nome della variabile
  • il secondo è il numero massimo di caratteri che si vuole memorizzare
  • il terzo è lo stream, ovvero il canale di ricezione. nel nostro caso sarà la tastiera, che viene indicata come stdin (standard input)
Ecco un esempio:
#include <iostream>
using namespace std;

char testo [1000];
int main()
{
	cout << "Inserire un testo: ";
	fgets(testo,1000,stdin);
	cout << "\n\n" << testo;
	
	return 0;
}

Visualizzazione dei dati [cout]

La libreria iostream fornisce il comando cout (console output) che, assieme ai simboli di direzione dell'output, visualizza dati. Il formato è

cout << argomento;
Ecco un esempio:
Scrivendo
cout << "Importo:" << impo;
si ottiene:
Importo: 23.559999

Operatori aritmetici

operatore esempio spiegazione
=
a=0; si assegna alla variabile a il valore 0
+
a = b + c;
a = a + 1;
a ++;
a = a + 6;
a += 6;
a = a + b;
a +=b;
si assegna alla variabile a la somma tra b e c
si incrementa di una unità la variabile a
si incrementa di una unità la variabile a
si incrementa di 6 unità la variabile a
si incrementa di 6 unità la variabile a
si incrementa di b unità la variabile a
si incrementa di b unità la variabile a
-
a = b - c;
a = a - 1;
a - -;
a = a - 6;
a - = 6;
a = a - b;
a - = b;
si assegna alla variabile a la differenza tra b e c
si decrementa di una unità la variabile a
si decrementa di una unità la variabile a
si decrementa di 6 unità la variabile a
si decrementa di 6 unità la variabile a
si decrementa di b unità la variabile a
si decrementa di b unità la variabile a
*
a = b * c;
a = a * 2;
a *= 2;
a = a * b;
a *= b;
si assegna alla variabile a il prodotto tra b e c
si moltiplica a per 2 assegnando il risultato ad a
si moltiplica a per 2 assegnando il risultato ad a
si moltiplica a per b assegnando il risultato ad a
si moltiplica a per 2 assegnando il risultato ad a
/
a = b / c;
a = a / 2;
a /= 2;
a = a / b;
a /= b;
si assegna alla variabile a il quoziente tra b e c
si divide a per 2 assegnando il risultato ad a
si divide a per 2 assegnando il risultato ad a
si divide a per b assegnando il risultato ad a
si divide a per 2 assegnando il risultato ad a
%
a = b % c;
a = a % b;
a%=b;
assegna ad a il resto della divisione tra i due interi b e c
assegna ad a il resto della divisione tra l'intero a e b
assegna ad a il resto della divisione tra l'intero a e b

Operatori logici

operatore esempio spiegazione
!
a = ! b; si assegna alla variabile a la negazione di b;
in pratica, se b è maggiore di zero allora a assume il valore 1 altrimenti assume il valore 0
&&
a = b && c; si assegna alla variabile a il prodotto logico (AND) tra b e c
||
a = b || c; si assegna alla variabile a la somma logica (OR) tra b e c

Operatori di confronto

operatore esempio spiegazione
==
if (a == b) z=16; else z=0; si controlla, tramite la struttura condizionale if, se a è uguale e b e, in questo caso si assegna a z il valore 16, altrimenti z assume il valore zero
!=
if (a != b) z=16; else z=0; si controlla, tramite la struttura condizionale if, se a è diverso da b e, in questo caso si assegna a z il valore 16, altrimenti z assume il valore zero
>
if (a > b) z=16; else z=0; si controlla, tramite la struttura condizionale if, se a è maggiore di b e, in questo caso si assegna a z il valore 16, altrimenti z assume il valore zero
<
if (a < b) z=16; else z=0; si controlla, tramite la struttura condizionale if, se a è minore di b e, in questo caso si assegna a z il valore 16, altrimenti z assume il valore zero
>=
if (a >= b) z=16; else z=0; si controlla, tramite la struttura condizionale if, se a è maggiore o uguale a b e, in questo caso si assegna a z il valore 16, altrimenti z assume il valore zero
<=
if (a <= b) z=16; else z=0; si controlla, tramite la struttura condizionale if, se a è minore o uguale a b e, in questo caso si assegna a z il valore 16, altrimenti z assume il valore zero