C++ teorija



fcntl.h    Priemonės lietuviškiems rašmenims išvesti į ekraną

io.h        Priemonės lietuviškiems rašmenims išvesti į ekraną

setlocale (LC_ALL, "Lithuanian");                                                                                                                                 endl; tas pats   '\n';


Programos struktūra

 #include                          // bibliotekų įtraukimas

using namespace std;     // naudojama standartinė vardų erdvė

int main (void)                  // pagrindinė programos funkcija

{                                       // čia rašomi veiksmai ir komandos PRADŽIA (BEGIN)

return 0;                           // funkcijos grąžinama reikšmė OS

}                                       // PABAIGA (END)         


Dažniausiai naudojamos operacijos:

+   sudėties veiksmas ir teigiamas skaičiaus ženklas;

-   atimties veiksmas ir neigiamas skaičiaus ženklas;

*   daugyba;

/   dalyba;

%   tik sveikajam tipui taikomas liekanos skaičiavimo veiksmas.


#include <iostream> // Cout ir cin biblioteka
#include <cmath> arba  #include < math.h > 
// Matematinė

#include <iomanip> cout<< setprecision(4) << rez << endl; // Tikslumas

#define PI 3.14159 
// Matematinė
#include <iostream.h>

Ryšio su programos išore palaikymui vartojami trijų pagrindinių tipų srautai:

įvedimo (istream), išvedimo (ostream) ir dvipusio ryšio (iostream).

Srautų atskyrimui naudojami skirtingi operatoriai:

cout operatorius   <<   duomenų siuntimas į ostream tipo srautą (išvedimas į ekraną);

cin    operatorius   >>   duomenų siuntimas į istream tipo srautą (įvedimas į programą).


Loginės sąlygos C++ kalboje apibrėžiamos taip:

= = tikrinama ar kintamieji lygus;

!= tikrinama ar kintamieji nelygūs;

< tikrinama ar pirmas kintamasis mažesnis už antrą;

> tikrinama ar pirmas kintamasis didesnis už antrą;

<= tikrinama ar pirmas kintamasis mažesnis už antrą arba lygus jam;

>= tikrinama ar pirmas kintamasis didesnis už antrą arba lygus jam;

|| tikrinama ar bent vienas iš kintamųjų tinka pagal sąlygą (loginis ARBA);

&& tikrinama ar visi kintamieji tinka pagal sąlygą (loginis IR).


Reiškinių tipai: 

Aritmetiniai   +, -, *, /, %;

Santykio    >, <, >=, <=, !=, ==;

Loginiai    && (IR)   || (ARBA)   ! (NE)


Pagrindiniai duomenų tipai

Programavime naudojami įvairūs duomenys. Pagal savybes jie skistomi į klases, vadinamais duomenų tipais.
Pavyzdžiui:Sveikieji skaičiai priklauso sveikųjų skaičių tipui;

Duomenys, turintys dvi logines reikšmes - tiesa ir netiesa (true ir false), priklauso loginiam tipui; ir kiti.

Duomenų tipas rodo kiek reikia skirti kompiuterio atminties tokio tipo kintamojo reikšmei saugoti.

 

Duomenų tipai:

Paprastieji:

Sveikieji: int; char; short; long.

Realieji: float; double.

Išvestiniai: rodyklė; adresas.

Struktūriniai: masyvas, struktūra arba įrašas; funkcija

 

Diskretieji duomenų tipai

Duomenų tipas apibrėžiamas to tipo duomenų reikšmių aibe ir operacijomis, atliekamomis su tomis reikšmėmis.

Diskretieji duomenų tipai yra patys papraščiausi.

 

Tipas

Paaiškinimas

Skaitmenų skaičius

Atminties dydis

Intervalas

bool

loginis tipas

 

1 baitas

0 (false) arba 1 (true)

char

Simbolis, mažieji sveikieji skaičiai

3

1 baitas

-128 ... 127

unsigned char

Tokie patys skaičiai kaip char, tik be ženklo

3

1 baitas

0 ... 255

short

Trumpieji sveikieji skaičiai

5

2 baitas

-32768 ... 32767

unsigned short

Tokie patys skaičiai kaip short, tik be ženklo

5

2 baitai

0 ...65535

int

Sveikieji skaičiai

10

4 baitai

-2147483648 ... 2147483647

unsigned int

Sveikieji skaičiai be ženklo

10

4 baitai

0 ... 4294967295

long

Ilgieji sveikieji skaičiai

10

4 baitai

-2147483648 ... 2147483647

long long

Labai ilgi sveikieji skaičiai

19

8 baitai

-9223372036854775808...9223372036854775807

unsigned long

Ilgieji sveikieji skaičiai be ženklo

10

4 baitai

0 ... 4294967295

Tolydieji duomenų tipai

C++ kalboje yra tik du tolydieji duomenų tipai. Jie skirti realiems skaičiams aprašyti ir naudojami atliekant įvairius skaičiavimus, susijusius su fizika, matematika ir kitais mokslais.

 

Tipas

Paaiškinimas

Skaitmenų skaičius

Atminties dydis

Intervalas

float

Dešimtainės trupmenos, realieji skaičiai

≈7

4 baitai

± 3.4 10± 38

double

Dvigubojo tikslumo realieji skaičiai

≈15

8 baitai

± 1.7 10± 308


Kintamieji

       Programose dažnai reikia apskaičiuoti algebrinių reiškinių reikšmes, o jiems užrašyti naudojami kintamieji ir konstantos. Kintamasis programoje nurodomas vardu (identifikatoriumi), ir jis programos bėgyje gali keisti savo reikšmę. Kintamasis suprantamas kaip kompiuterio operatyviosios atminties tam tikro dydžio sritis, kurioje galima įsiminti nustatyto tipo reikšmę (sveikajį skaičių, realųjį skaičių, tekstą, kt.). Atminties srities dydis priklauso nuo kintamojo tipo. Programoje visi kintamieji turi būti aprašyti, nurodytas jų tipas.

Kintamojo vardą parenka pats programuotojas. Gerai, kai kintamojo vardas yra prasminis, tada lengva suprasti programą. Daugelyje proramavimo kalbų vardai kuriami pagal tokią taisyklę

Vardas turi prasidėti lotyniška raide. Toliau varde gali būti lotyniškos raidės arba skaitmenys. Tarpai neleistini.

Nerekomenduojama pasirinkti vardų, kurie prasideda pabraukimo ženklu.

C++ klaboje varde leidžiama vartoti ir pabraukimo ženklą. Pabraukimo simboliu prasidedantys vardai naudojami tik kompiliatoriuje, kaip specialią paskirtį turintys vardai. Be to, C++ kalboje skiriamos didžiosios ir mažosios raidės, todėl tai reikia prisiminti ne tik rašant vardus. Pvz., vardai ABC, Abc, aBc, abc yra skirtingi.

Kintamųjų vardai negali sutapti su C++ kalbos baziniais žodžiais

asm, auto, bool, break, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast, else, enum, explicit, export, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch, template, this, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while,

o taip pat žodžiais

and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq.

 

Kai kurie kompiliatoriai gali turėti ir kitų rezervuotų žodžių, kurių negalima vartoti kaip kintamųjų vardų.

Tinkamų vardų pavyzdžiai:

  A, B, C, d, x, y - vardai, sudaryti iš vienos raidės,

  x1, x2, A1, B1 - vardai, sudaryti iš raidės ir skaitmens,

  suma, NMAX, min, kiek - vardai, sudaryti iš vieno žodžio,

  TeigSum, NeigSum, IsViso - vardai, sudaryti iš dviejų žodžių arba jų santrumpų,

  teig_sum, neig_sum - vardai, kuriuose panaudotas pabraukimo ženklas.


Kintamiųjų aprašymas

Aprašant kintamąjį nurodomas jo vardas ir tipas Pvz.:

int a, b, c, d; // sveikųjų skaičių tipo kintamieji a, b, c ir d

duoble x, y; // realiųjų skaičių tipo kintamieji x ir y


Aprašomam kintamajam labai paprastai galima suteikti ir pradinę reikšmę (jei ji žimnoma):

int a = 17, b = -4, c = 11; 

duoble x=2,5, y= 4.1e-5 


Prie kintamųjų aprašų rašomi komentarai, kuriuose paaiškinama kintamųjų paskirtis:

double a, b, c; // kvadratinės lygties koeficientai

duoble d; // diskriminanatas

double x1, x2; // sprendiniai