[:it]

Lars Meyer
[WpProQuiz 50][:]
[:it]
Lars Meyer
[WpProQuiz 50][:]
[:it]
Claude Monet
Per compilare un programma non è obbligatorio avere un IDE particolare come Geany o BlueFish o chi più ne ha ne metta ma è sufficiente avere un editor standard come può essere notepad su windows.
Ad esempio su Linux si usa gedit
Esso si può usare o cercando dal Dash o aperto il terminale digitando gedid.
A questo punto si può digitare il programma e salvarlo con un opportuno nome.
Attenzione che il concetto di estensione, tanto caro al mondo windows, non è necessario nel mondo Unix che, purtroppo, alla fine lo sta copiando perdendo in parte la sua grande flessibilità ma forse anche complessità.
L’estensione di un file è quella parte del nome a destra del punto ad esempio:
pippo.cpp è un file con estensione cpp
pippo.phy è un file con estensione phy
Al termine si salva il file.
Per compilarlo si deve aprire un terminale e posizionarsi all’interno della directory in cui ho salvato il file.
Per fare questo si può seguire il post ABC di unix
Adesso per compilare il file si deve usare il seguente comando:
g++ -Wall -o nomeinuscita -g nomecpp
nomeuscita è il nome del file in output
nomecpp è il nome del file che ho salvato con il sorgente
se la compilazione è terminata correttamente lo si deve eseguire con il comando:
./nomeinuscita
FONDAMENTALE
Sotto Unix la lettera maiuscola e minuscola sono differenti per cui bisogna stare attenti a come si scrive.[:]
[:it]
Claude Monet
Tale post non nasce con la presunzione di fornire un manuale completo sul mondo Linux ma solo quello di dare alcuni comandi utili per poter lavorare con quei PC che ne hanno uno installato.
Per operare sul mondo Linux vi sono varie distribuzioni ma tutte hanno i comune alcuni comandi che qui elenco.
Per usare i comandi nativi è necessario aprire una schermata su cui poter cominciare a scrivere i comandi veri e propri del sistema operativo.
CTRL + ALT + T oppure dalla Dash digitare terminale e selezionare la relativa icona.
comparirà una schermata con un led lampeggiante intermittente.
Si pensi alla struttura interna della memoria come ed un albero e si deve cercare di capire dove si è posti all’interno di tale albero.
Per capirlo di digita il comando
ls
a questo punto se voglio entrare in una particolare directory si usa il comando
cd pippo
con pippo il nome della directory su cui voglio operare o entrarci
cd –
torno alla precedente directory[:]
[:it]
Claude Monet
Per calcolare il doppio di un numero si deve
Come implementare in linee di codice questa richiesta
Operazione | Codice |
usare la libreria per inserire i dati | #include <iostream> |
usare il namespace per evitare di inserire std | using namespace std; |
funzione principale all’interno del quale inserire il codice vero e proprio | int main() |
Apertura istruzioni | { |
definisco le due variabili | int a,b; |
chiedo di inserire il valore | cout<<“Inserisci il numero “; |
memorizzo il primo valore | cin>>a; |
elaboro il calcolo salvandolo nella variabile | b=2*a; |
faccio vedere il risultato ottenuto | cout<<“Ecco il doppio: “<<b; |
chiusura istruzioni | } |
Ecco il listato completo del programma
#include<iostream>
using namespace std;
int main()
{
int a,b;
cout<<“Inserisci un numero intero: “;
cin>>a;
b=2*a;
cout<<“Ecco il doppio del numero immesso: “<<b<<“\n”;
return 0;
}[:]
[:it]
eupalinos ugajin
Calcolare il doppio di un numero fornito da tastiera
[:]
[:it]
Eupalinos Ugajin
Assegnare un valore ad una variabile significa riempire la variabile con un qualcosa; questo qualcosa può essere un numero (intero positivo o negativo, reale).
Ad esempio l’istruzione:
a = a+1
incrementa di 1 il valore di a
b = x + y
la somma tra x ed y viene inserita in b.
Gli operatori più conosciuti sono:
somma +
differenza –
prodotto *
divisione /
elevamento a potenza **
altre funzione sono presenti nel seguente link
Per utilizzare le funzioni matematiche bisogna aggiungere all’inizio del programma:
import math
e poi per accedere alla singola funzione, ad esempio radice quadrata si deve scrivere
math.sqrt(x)
I commenti sono preceduti dal carattere #[:]
[:it]
Eupalinos Ugajin
Assegnare un valore a delle variabili significa riempire la variabile scritta a sinistra con quello che si scrive a sinistra.
variabile = valore;
esempi:
area = raggio * raggio *3,14;
si noti che gli operatori aritmetici sono quelli tradizionali associati alle quattro operazioni
somma +
sottrazione –
moltiplicazione *
divisione :
Si possono usare espressioni anche di questo tipo
i = i +1 ;
dove si aggiunge alla i di sinistra il valore della i precedente.
Ad esempio:
i=10;
i= i +1;
cout<<i;
mostrerà a video 11.
in C++ si può anche scrivere
i++;
si incrementa sempre di 1 la variabile ossia
scrivere
i=i+1;
è equivalente a scrivere
i++;
quest’ultima scrittura è quella usata più comunemente;
Ecco le equivalenze tra i vari operatori di assegnamento:
Operatore | Utilizzo | Esempio | Istruzione equivalente |
++ | Incremento unitario | x++; | x=x+1; |
— | Decremento unitario | x–; | x=x-1; |
+= | Incremento | x+=y; | x=x+y; |
-= | Decremento | x-=y; | y=x-y; |
*= | Moltiplicazione | x*=y; | y=x*y; |
/= | Divisione | x/=y; | x=x/y; |
%= | Resto della divisione tra interi | x%=y; | x=x%y; |
Si devono conoscere anche le seguenti funzioni matematiche che sono presenti nella libreria cmath che deve essere inclusa nel programma:
#include <cmath>
[:]
[:it]
eupalinos ugajin
Perché usare delle variabili in programmazione?
Esse sono necessarie per eseguire un’operazione tutte quelle volte in cui il programma elabora qualcosa. Se voglio effettuare la somma tra due numeri associo ad essi due lettere ed è sufficiente poi scrivere
a+b
si chiede in input il valore di a e di b e poi si lancia il programma che effettua tale somma.
ecco alcune definizioni di variabili usate in C++
bool A;
unsigned char;
int;
Associo adesso la seguente tabella che elenca i tipi di variabile che possono essere usati e la relativa dimensione:
Tipo | Definizione | intervallo | Bit occupati |
booleani | bool | true/false | 8 |
caratteri | unsigned char | da 0 a 255 | 8 |
char | da -128 a 127 | 8}} | |
wchar_t | carattere stesso | 16 | |
interi | unsigned short int | da 0 a 65.535 | 16 |
short int | da -32.768 a 32.767 | 16 | |
int | da -32.767 a +32.767 | 32 | |
unsigned long int | da 0 a 4.294.967.295 | 32 | |
lon int | da -2.147.438.648 a 2.147.438.647 | 32 | |
reali | float | da ![]() ![]() |
32 |
double | da ![]() ![]() |
64 | |
long double | da ![]() ![]() |
80 |
una costante invece è una variabile che non può cambiare mai il suo valore durante tutta l’esecuzione del programma.
const double PIGRECO=3.14;
Per convenzione il nome delle variabili deve essere scritto con lettere maiuscole.
Questo semplice programma permette di visualizzare le dimensione dei principali tipi di dati.
#include<iostream>
using namespace std;
int main()
{
cout<<“Dimensine dei numeri interi: “<<sizeof(int)<<” byte \n”;
return 0;
}[:]
[:it]#include <iostream>
Un programma che richiede dei dati in input e poi darli in output ha la necessità di conoscere come tale processo possa avvenire. Esso avviene inserendo all’interno del programma un’apposita libreria che include tutto il necessario per operare coni dati di input ed output.
Quando si deve cambiare una ruota ad un’automobile si ha la necessità di avere una chiave inglese per svitare i bulloni.
Ci si deve portare dietro la chiave inglese ossia includere nel bagagliaio la chiave inglese; la stessa cosa per un programma esso per mostrare a video l’esito o per immettere dei dati ha la necessità di includere la libreria iostream.
std::cin>>a;
Le parole riservate di un linguaggio sono quelle indispensabili perché possa funzionare.
Ad esempio, in un’automobile non posso usare i pneumatici di un camion e quindi uso quegli standard; in maniera analoga, le parole, caratteristiche del linguaggio, non possono essere cambiate.
Tali parole sono contenute in namespace (spazio dei nomi): il nome del contenitore si chiama std (abbreviazione di standard) e per accedervi si usa appunto std::
using namespace std;
Per evitare di ripetere il nome del namespace, si può scrivere una dichiarazione iniziale nel programma, con la quale si specifica che si intende usare un determinato namespace e i nomi in esso contenuti.
main()
questo è il nucleo del programma all’interno del quale avviene la vera e propria elaborazione.
Quindi tutte le istruzioni vengono racchiuse dalla coppia di parentesi grafe {}
{ | Alt+ 123 | AltGr+Shift+[ | |
} | Alt+125 | AltGr+Shif+] |
la presenza di parentesi tonde sono necessarie perché esse potranno racchiudere degli argomenti che possono essere usate dalla funzione.
Come in matematica le funzioni in informatica assumono o elaborano dei dati in input per fornire dei dati in output.
return 0
significa che la funzione main() se non produce errori ritornerà un valore 0 al sistema operativo o 1 se ve ne sono stati.
int i;
la variabile che viene usata dal programma potrà essere solo di tipo intero.
cin>> i;
indica la lettura dei dati dalla tastiera (input)
cout<<i;
indica la visualizzazione dell’output a video[:]
[:it]Geany è un ambiente di sviluppo che consente di scrivere un programma in C++.
Il vantaggio di usare questo editor è:
Ecco come si presenta la schermata di questo IDLE
[:]