1.0 Strumenti di base
Come compilatore utilizzerò Dev C++. Per creare un nuovo progetto, basterà andare in file à nuovo progetto à console application.
1.1 Struttura di un programma C++
Ogni programma C++ ha una parte principale, chiamata main, che contiene le istruzioni da eseguire. Le sue istruzioni sono racchiuse all’interno di parentesi graffe { }. Le parentesi tonde ( ) , indicano che si tratta di una funzione. Quindi il nostro programma partirà da questo codice:
main ()
{
}
In questo paragrafo scriviamo il nostro primo “Hello World!”. Per fare ciò dobbiamo inserire all’interno delle parentesi graffe il seguente codice:
cout << “Hello World” ;
Analizziamo il codice:
- cout significa “consolle output” e sta ad indicare il monitor.
- Hello World, è la nostra frase, definita “stringa”, ed una stringa è racchiusa tra virgolette “ “.
- << è l’operatore usato per inviare la stringa a cout, quindi per inviarla al monitor.
- ; (punto e virgola) indica la fine di un’istruzione.
A questo punto, se provassimo ad eseguire il programma, riceveremo un errore. Infatti il comando cout, risulterà essere underclear, cioè non riconosciuto. Per far risultare il comando riconosciuto, dobbiamo includere delle librerie. La libreria viene inserita fuori dal main, all’inizio del programma. Includiamo la libreria:
# include <iostream.h>
Il cancelletto # , serve per includere un qualcosa. Include significa includere, incorporare, mentre iostream.h è la libreria che si vuole includere. Il nome della libreria viene racchiusa tra i tag < > .
La libreria iostream permette di effettuare scritture sul monitor, e letture dalla tastiera.
Un altro modo per stampare una scrittura sullo schermo è utilizzare la seguente istruzione:
printf(“Hello World”);
Il comando printf , è costituito da due parole:
- print, che deriva dall’inglese (stampa), quindi stampa su schermo, ciò che trovi all’interno delle parentesi tonde.
- f, abbreviazione di formatted, che significa (formattato). Con l’aggiunta di f, potremo stampare: stringhe, numeri reali, caratteri ecc.
Ora il programma completo è questo:
#include <iostream.h>
main ()
{
cout << “Hello World!” << endl;
printf(“Ciao Mondo!”);
getchar();
}
Il comando getchar(); rimane il programma in pause, affinché non venga premuto il tasto INVIO.
endl, è un abbreviazione di “end line” (fine riga), e serve per mandare a capo il testo.
1.2 Compilazione
Ogni programma, per poter essere eseguito, deve essere scritto in un file mediante un editor e poi compilato, cioè tradotto in un formato numerico eseguibile dal processore. La traduzione viene effettuata da un programma detto compilatore, il quella legge il file contenente il programma da tradurre (detto programma sorgente) e produce un nuovo file contenente il programma tradotto in formato numerico (detto programma eseguibile). Esempio:
- Possiamo scrivere il programma e salvarlo in “.cpp” (c plus plus)
- Possiamo compilarlo creando il suo file eseguibile “.exe”.
1.3 Variabili
Il linguaggio C+++ consente di manipolare dati. I dati possono essere letti dalla tastiera, mostrati sullo schermo, mantenuti nella memoria del calcolatore e utilizzati all’interno di espressioni. Esistono diversi tipi di dati, ma i principali sono:
- int numeri interi
- float numeri decimali (detti volgarmente con la virgola)
- char caratteri
- bool di tipo booleano
Per poter memorizzare e utilizzare un dato è necessario effettuare una dichiarazione, che specifichi il tipo e il nome di tale dato. Il nome è formato da caratteri alfanumerici e il primo carattere deve obbligatoriamente essere una lettera.
Esempio:
int a = 12;
Viene dichiarata la variabile a, di tipo int (integer), e il suo valore o contenuto è 12, che potrà essere modificato nel tempo quindi può variare . Per questo motivo è chiamata “variabile”.
La memoria del calcolatore è organizzati in locuzioni, alla quale ad ognuna è associata una variabile .
float lunghezza, larghezza;
Non è stato associato alcun valore alle variabili. (I numeri con la virgola si scrivono con il punto . Per esempio 5,6 viene scritto 5.6)
char k2 = “f”;
alla variabile “k2” gli è stato associato il valore “f”.
bool ciao = “true”;
questa è una variabile di tipo boolenana, e può essere assumere solo due valori “true “ (vero) o “false” (falso)
Per sovrascrivere il valore di una variabile viene scritto;
ciao = 5;
Analizziamo questo codice:
int a = 5, b = 10; c;
a = 15;
c = a + b;
Abbiamo dichiarato nella prima riga true variabili di tipo integer, di cui ai primi due sono stati definiti i loro valori, e la terzo alcun valore. Quindi il valore di a all’ inizio sarà 5, mentre di b sarà 10, di c invece “indefinito” (se volessimo stampare su schermo il valore di c, uscirà un numero spropositato, proprio perché il contenuto di esso non è stato dichiarato).
Nella riga sottostante viene assegnato ad a il valori di 15, qui da adesso in poi, il valore di a non sarà più 5, ma 15.
La riga successiva definisce il valore di c, che non era stato ancora dichiarato. Il valore di c è uguale al risultato della somma dei valori di a e quello di b. Quindi c sarà uguale a 25. (15+10).
Per svolgere altre operazioni vengono usati:
+ per sommare
- per sottrarre
* per moltiplicare (asterisco)
/ per dividere (slash)
Se avremmo che a = 5, per modificare il suo valore possiamo utilizzare altri operatori:
a = 20 sovrascrive il valore della variabile a
a += 5 aggiunge al valore della variabile a, (ammettiamo il caso che fosse 10), il numero 5, quindi a = 15
a -= 5 sottrae il valore di a di 5. (10-5=5)
a *= 5 moltiplica il valore di a per 5. (10*5=50)
a/=5 divide il valore di a per 5. (100:5=2)
Creiamo un piccolo programma che ci permette di calcolare la somma fra due numeri interi.
#include <iostream.h>
main ()
{
int num1, num2;
cout << “Scrivi il primo numero intero: “;
cin >> num1;
cout <<”Scrivi il secondo numero intero: “;
cin >> num2;
cout <<”La somma fra due numeri è: “ << num1+num2 << endl << endl;
system(“PAUSE”);
}
Viene inclusa la libreria iostream.h . Poi è stata inserita la funzione main, e all’interno sono state dichiarate due variabili di tipo integer, senza essere definito il loro contenuto. Poi con cout è stato stampato su schermo la stringa che segue, e con cin (consolle input) è stato immagazzinato nella variabile num2, ciò che avevamo digitato. La stessa cosa vale per le due istruzioni successive, e alla fine abbiamo inserito il cout , il quale stampa sullo schermo, la somma di num1+num2, e infine system(“PAUSE”); che mette in pausa il programma, finché non sarà premuto il tasto invio.