Tipuri de variabile in C++

In acest articol o sa discutam despre tipurile de variabile din C++ si despre particularitatile fiecarui tip. Este primul articol dintr-o serie de articole intitulata Introducere in C++ in care vom prezenta informatiile necesare pentru a incepe sa programam in C++, un fel de clasa a 9-a in scris 🙂 Asadar, sa incepem!

Pentru a putea scrie orice program in C++ avem nevoie sa stim niste lucruri de baza. In functie de cerinta pe care o primim sau de ideea pe care o avem va trebui sa folosim anumite elemente din limbajul de programare C++ pentru a scrie un program corect si, de ce nu, eficient 🙂

In C++, diferite multimi de numere (numere naturale, numere intregi sau numere reale) pot fi stocate doar de anumite tipuri de variabile. Pentru a stoca numere naturale sau numere intregi folosim tipurile de variabile int sau long ,iar pentru a stoca numere reale folosim tipurile de variabile float sau double. Trebuie mentionat faptul ca putem stoca un numar natural sau un numar intreg si in variabile de tip float sau double intrucat multimea numerelor reale include atat multimea numerelor intregi cat si multimea numerelor naturale, insa acest lucru nu este indicat, o data pentru ca ar face codul mai greu de inteles (de exemplu daca avem o variabila in care retinem numarul de elemente dintr-un vector, am vrea ca aceasta sa fie de tipul int pentru ca stim sigur ca acolo vom avea doar valori naturale) si in plus pentru ca numerele de tipul float sau double pot avea probleme de precizie pe care am vrea sa le evitam.

Pe langa variabilele care stocheaza valori numerice, avem si variabile care pot stoca caractere sau siruri de caractere, acele variabile sunt variabilele de tipul char sau unsigned char. De asemenea avem si variabile de tipul bool care stocheaza doar 2 valori, 1 si 0 (adevarat sau fals). Trebuie mentionat faptul ca pentru a retine valori mai mari se folosesc tipurile long int, long long, long double (se comporta asemanator cu tipul de la care pornesc) sau pentru valori mai mici short int (asemanator cu int). In tabelul de mai jos putem observa particularitatile diferitelor tipuri de variabile:

Tip Memoria ocupata Interval de valori
int 4 bytes [-2147483648 ; 2147483648]
signed int 4 bytes [-2147483648 ; 2147483648]
unsigned int 4 bytes [0 ; 4294967295]
short int 2 bytes [-32768 ; 32767]
signed short int 2 bytes [-32768 ; 32767]
unsigned short int 2 bytes [0 ; 65535]
float 4 bytes ~ 7 cifre
double 8 bytes ~ 15 cifre
long double 80 bits ~ 19 cifre
long long 8 bytes [-2^63; 2^63 – 1]
char 1 byte [-128;127]
unsigned char 1 byte [0;255]
bool 1 byte true or false

Pe langa tipul de variabile int exista de asemenea si tipul de variabile unsigned int si signed int. Variabilele de tipul unsigned int pot memora doar variabile pozitive, in timp ce variabilele de tipul signed int pot memora atat variabile pozitive cat si variabile negative.

Pe canalul nostru de YouTube puteti gasi un video legat de tipurile de variabile din C++.

In urmatorul articol o sa discutam despre cum putem citi, atribui si afisa variabile in C++. Va multumim si speram sa aveti o zi faina! Daca aveti intrebari nu ezitati sa le lasati in comentariile acestui articol 🙂

Interschimbarea a doua variabile in C++

Pentru a interschimba doua variabile exista mai multe metode.

Prima consta in folosirea unei variabile ajutatoare, pe care o utilizam pentru a salva temporar valoarea uneia dintre variabile. Dupa ce ii salvam valoarea, putem sa o suprascriem cu a doua variabila. La sfarsit punem valoarea initiala a primei variabile (salvata in ajutator) in a doua variabila. Pentru aceasta metoda, numita si metoda paharelor, codul este cel de mai jos:

Video de pe canalul nostru de YouTube in care explicam cum functioneaza interschimbarea valorii a 2 variabile prin metoda paharelor:

A doua metoda nu se foloseste de o variabila ajutatoare. Aici salvam suma celor doua variabile in prima dintre acestea (a = a + b) . Dupa care, vrem ca in a doua variabila sa fie valoarea primei. Deci vom scadea din suma (a + b), valoarea celei de-a doua variabile si o sa o obtinem pe prima (b = a  + b – b). Acum in b o sa fie valoarea initiala a lui a. Deci putem sa facem la fel si pentru a, ca sa obtinem b (a = a + b – a). Pentru aceasta metoda codul este mai jos:

A treia metoda se foloseste de operatiile pe biti. Ne aducem aminte de operatia xor (^). x ^ y = 1, daca si numai daca x este diferit de y. Cel mai usor de inteles metoda este folosind un exemplu vizual:

a = 00010010

b = 11010110

a = a ^ b -> a = 11000100

b = a ^ b -> b = 00010010

a = a ^ b -> a = 11010110

Dupa cate putem vedea, a si b au fost interschimbate.

Daca aveti intrebari nu ezitati sa le lasati in comentarii, va vom raspunde cat de repede putem. Spor la lucuru 🙂

Rezolvari BAC informatica 2018

Mai jos puteti gasi rezolvate problemele din cadrul Examenului de Bacalaureat din anul 2018 precum si cele de la simularea de clasa a XII-a, sesiunea speciala dedicata olimpicilor si modelele de subiecte de BAC publicate in acest an.

 

Subiecte informatica 2018 – profilul Matematica informatica
Model subiect Subiectul al II-lea problema 4

Subiectul al II-lea problema 5

Subiectul al III-lea problema 3 Subiectul al III-lea problema 4
Simulare BAC Subiectul al II-lea problema 5 Subiectul al III-lea problema 3 Subiectul al III-lea problema 4
Sesiunea speciala Subiectul al II-lea problema 5 Subiectul al III-lea problema 3 Subiectul al III-lea problema 4
BAC iunie-iulie Subiectul al II-lea problema 5 Subiectul al III-lea problema 3 Subiectul al III-lea problema 4
Subiecte informatica 2018 – profilul Stiinte ale naturii
Model subiect Subiectul al III-lea problema 3 Subiectul al III-lea problema 4
Simulare BAC 2018 Subiectul al III-lea problema 3 Subiectul al III-lea problema 4