«

»

Print this Článok

Programovanie v jazyku C++ (časť 1)

Pre programovanie je vhodné použiť vývojárske prostredie Dev-Cpp.

Základné pojmy

Funkcia main

  • Main je názov hlavnej funkcie
  • Každý program v C++ má práve 1 funkciu main, ktorá je vstupnou funkciou programu
  • Ak by program nemal funkciu main, počítač by nevedel, kde začať program prevádzať
  • Ak by počítač mal viac ako 1 funkciu main, počítač by nevedel, ktorú z nich si má vybrať
  • Telo funkcie začína { a končí }

 

Štandardná knižnica C++ std

obsahuje rad súborov, z ktorých každý definuje niektoré bežne používané objekty

 

#include

  • Inštrukcia pre preprocesor
  • Za #include nasleduje názov knižného súboru v zátvorkách <>

 

Menný priestor

Príkaz using namespace std; hovorí počítači, že pred každé meno bez menného priestoru si má pridať std::

Vkladanie komentárov: pomcou //

Príklad:

//program1

#include<iostream>       // vlozenie kniznice iostream
using namespace std;     //definovanie menneho priestoru
int main()                                //zaciatok programu
{
//obsah programu
}

Preklad zdrojového kódu do binárneho súboru zabezpečujú 3 programy:

  • Preprocessor – stará sa o predspracovanie zdrojového kódu (napr.: namiesto odkazu na súbor iostream vloží jeho obsah )
  • Prekladač – preprocesorom spracovaný kód preloží do strojového jazyka. Výsledok uloží do samostatného objektového súboru s príponou .obj (.o). v prípade syntaktické chyby program nepreloží
  • Linker – pridá do .obj súboru kód z knižníc

Pamäť

Príkazy programu  a dáta musia byť v pamäti počítača, inak by program nefungoval.

Druhy pamäte

  • Procesor – CPU – má malé množstvo pamäti, ktoré sa volá vyrovnávacia pamäť (cache). Používa sa na uloženie najčastejších príkazov a dát, iba dočasné. Okrem nej sa v procesore nachádzajú pamäťové register – uloženie dát, so ktorými procesor priamo prevádza operácie. Procesor má do nej najbližšie.
  • Operačná pamäť – RAM – dočasná – vysoká kapacita.
  • Trvalá pamäť – pevný disk, CD, DVD, FLASH disk. Má väčšiu kapacitu ako operačná pamäť, ale počítač nevie prevádzať príkazy v nej uložené – musí ich najskôr načítať do operačnej pamäte.

Obecne ukladajú programy väčšinu svojich príkazov do operačnej pamäte.

Adresy – miesta v pamäti počítača. Ich čísla idú za sebou. Na každej adrese v pamäti je uložený práve 1 bajt informácií.

 

Dátové typy

Celočíselné dátové typy

Dátový typ                         Veľkosť v bajtoch                           Rozsah

short                                                    2                                             -32 768 až 32 767

unsigned short                                2                                             0 až 65 535

int                                                         4                                             -2  147 483 648 až 2 147 483 647

unsigned int                                      4                                             0 až 4 294 967 295

long                                                      4                                             -2  147 483 648 až 2 147 483 647

unsigned long                                  4                                             0 až 4 294 967 295

 

Dátové typy  pre desatinné čísla

Dátový typ                         Veľkosť v bajtoch                           Rozsah

float                                                     4                                             +3,4E-38 až +3,4E38

double                                                8                                             +1,7E-308 až +1,7E308

long double                                       10                                          +3,4E-4932 až +3,4E4932

Pozn.:  3,4E-38 = 3,4×10-38

Textové dátové typy

Dátový typ                         Veľkosť v bajtoch           Rozsah

char                                                      1                             1 znak – písmeno, číslo, interpunkcia, medzera, atď.

string                                    podľa počtu znakov       väčší počet znakov – veta, odsek, strana, atď.

Dátový typ bool

Dátový typ                         Veľkosť v bajtoch                           Rozsah

bool                                                      1                                             2 hodnoty – true alebo false

Zistenie veľkosti dátových typov - pomocou operátora sizeof(názov typu)

Výrazy

Výraz je kus kódu, ktorý má určitú hodnotu, napr. 4+4, sizeof(int), …

Literály

Literál znamená, že sa má brať bez ďalšieho vyhodnocovania.  Dáva sa do úvodzoviek.

 

Výstup na obrazovku

cout  << ”Velkost typu short je ” << sizeof(int) << ”\n”;

Bežne používané špeciálne znaky

 

\a       pri výpise pípne

\n       koniec riadku

\t        tabulátor

\\      spätné lomítko

\’      apostrof

\“      úvodzovky

Premenné

Používajú sa na pomenovanie informácií. Premenná umožní odkazovať sa na určitú informáciu menom a vymedzí pre ňu miesto v pamäti.

 

Deklarovanie premenných

Slúži na vymedzenie miesta v pamäti. Deklarácia vyzerá takto: [dátový typ] [meno premennej];     napr.: int pocetBodov, x , vyska; float x;

Inicializácia premennej – nastavenie hodnoty premennej súčasne s jej deklaráciou

Pomenovanie premennej

  • Názov premennej musí začínať písmenom abecedy (A – Z, a – z)
  • Názov premennej nesmie obsahovať medzery ani interpunkciu; jedinou výnimkou je podtržítko
  • Názov premennej sa musí vyhýbať vyhradeným slovám jazyka samotného, napr. main alebo int
  • Premenná sa nesmie volať rovnako ako premenná v rovnakom rozsahu platnosti

 

Operátor adresy

Pri deklarácii premennej dôjde k vymedzeniu miesta v pamäti. Adresu tejto rezervovanej oblasti dostaneme operátorom adresy (&). Jeho zápis vyzerá takto: &[názov premennej] .

 

Použitie operátorov & a sizeof na premenné

#include<iostream>

using namespace std;

int main (void)

{

short pocetBodov;

float priemer;

cout << “Adresa premennej pocetBodov je:  ”<< &pocetBodov <<”\n”;

cout << “Velkost premennej pocetBodov je:  ”<< sizeof(pocetBodov) <<”\n”;

cout << “Adresa premennej priemer je:  ”<< &priemer <<”\n”;

cout << “Velkost premennej priemer je:  ”<< sizeof(priemer) <<”\n”;

return 0;

getchar();

}

Výstup programu

Adresa premennej pocetBodov: 0012FED4

Velkost premennej pocetBodov: 2

Adresa premennej priemer: 0012FEC2

Velkost premennej pocetBodov: 4

Priraďovanie hodnôt

Hodnota sa do premennej ukladá operátorom priradenia (=)

Operátor priradenia

[názov premennej] = [hodnota]; napr. int pocetBodov;

pocetBodov=95;

alebo int pocetBodov=95;

 

Pretečenie a podtečenie

Pretečenie je jav, ku ktorému dochádza, ak premennej priradíte hodnotu, ktorá je na jej rozsah príliš veľká.

Príklad:

#include<iostream>

using namespace std;

int main (void)

{

short pocetBodov;

pocetBodov=32768;

cout << pocetBodov <<”\n”;

return 0;

getchar();

}

Výstup programu: -32768 …dôjde k pretečeniu a hodnota premennej sa pretočí na na najnižšiu možnú hodnotu jej typu

 

Podtečenie je jav, ku ktorému dochádza, ak premennej priradíte hodnotu, ktorá je na jej rozsah príliš malá.

Príklad:

#include<iostream>

using namespace std;

int main (void)

{

short priemer;

priemer=-32769;

cout <<priemer <<”\n”;

return 0;

getchar();

}

Výstup programu:  32767 …dôjde k podtečeniu a hodnota premennej sa pretočí na na najvyššiu možnú hodnotu jej typu

Objekt cin

  • Slúži na načítavanie informácií zo štandardného vstupu, väčšinou z klávesnice
  • Je definovaný štandardným knižničným súborom iostream
  • Používa sa takto:

cin >> [meno premennej]

  • Môžeme načítať aj viac premenných odrazu, užívateľ musí zadávané hodnoty oddeliť aspoň jednou medzerou

 

#include<iostream>

#include<string>

using namespace std;

int main()

{

int vaha,vyska;

string meno;

cout << “Zadajte svoje meno, vahu v kg a vysku v cm.\n”;

cout << “Jednotlive udaje oddelte medzerou.\n”;

cin >> meno >> vaha >> vyska;

getchar();

cout << “Volate sa ” << meno << “\n”;

cout << “Vazite ” << vaha << ” kg\n”;

cout << “Meriate ” << vyska << ” cm\n”;

getchar();

return 0;

}

Aritmetické operátory

  • Operátor je symbol, ktorý zastupuje nejakou akciu.
  • Aritmetické operátory sú sčitovanie +, odčitovanie -, násobenie *, delenie /, zvyšok po delení % (modulo)
  • Všetky tieto operátory sú binárne (potrebujú 2 parametre)
  • Pracujú s kladnými aj zápornými číslami a okrem modula aj s číslami celými a desatinnými
  • Operátor sčitovania funguje okrem čísiel aj na reťazcoch

 

Operátor sčitovania +

a = a + 2 sadá zapísať aj v skrátenej podobe a +=2

POZOR! – môže dôjsť k pretečeniu alebo podtečeniu

 

Sčitovanie reťazcov

cout << “Volate sa  “<< meno + priezvisko << “\n”;

Operátor odčitovania -

a = a – 2 sadá zapísať aj v skrátenej podobe a -=2

POZOR! – môže dôjsť k pretečeniu alebo podtečeniu

Operátor násobenia *

a = a * 2 sadá zapísať aj v skrátenej podobe a *=2

POZOR! – môže dôjsť k pretečeniu alebo podtečeniu

 

Operátor delenia/

a = a / 2 sadá zapísať aj v skrátenej podobe a /=2

POZOR! – môže dôjsť k pretečeniu alebo podtečeniu

 

Priorita operátorov

Stredná priorita:  *  /  %

Nízka priorita:  +  -

POZOR!       2+3*4=2+12=14

(2+3)*4=6*4=24

8/2-1=4-1=3

8/(2-1)=8/1=8

Operátory delenia – ani jeden operátor nefunguje pre delenie nulou

  1. Podiel /
    1. Ak je aspoň 1 z čísiel desatinné číslo, výsledok je desatinné číslo: 10,0/4=2,5
    2. Ak sú obidve čísla celé, výsledok je celé číslo 10/4=2
  2. Modulo %
    1. Vracia zvyšok po celočíselnom delení: 9%4=1
    2. Funguje iba na celé čísla

Mocniny

Funkcia pow definovaná v súbore cmath – treba vložiť knižnicu cmath príkaz: #include<cmath>

Funkcia pow má 2 parametre, prvý z nich je základ, druhý exponent

Hodnota výrazu pow(2,3) je 23=8, ale je typu double

 

Zdroj: p.uč. Konečná

 

 

Permanent link to this article: https://p2e.tode.cz/programovanie-v-jazyku-c-cast-1/