Programmēšanas valoda C++

Содержание

Слайд 2

Programmēšanas valoda C Programmēšanas valodu C 1970. gadā izstrādāja AT&A Bell

Programmēšanas valoda C

Programmēšanas valodu C 1970. gadā izstrādāja AT&A Bell Laboratories

līdzstrādnieks Deniss Ričijs (Dennis Ritchie).
Valoda C uzskatāma par kaut ko, kas ir pa vidu starp ļoti augsta un zema līmeņa programmēšanas valodām.
C valodas trūkumi – tajā rakstītās programmas nav tik viegli uztveramas un saprotamas, nav daudzu iebūvētu automātiskās pārbaudes iespēju, nav augsta līmeņa konstrukciju.
Слайд 3

Programmēšanas valoda C++ Valoda C++ ir izcēlusies no valodas C Programmēšanas

Programmēšanas valoda C++

Valoda C++ ir izcēlusies no valodas C
Programmēšanas valodu

C++ 20. gs. 70. gadu beigās – 80. gadu sākumā izstrādāja AT&A Bell Laboratories līdzstrādnieks Bjerns Stroustrups (Bjarne Stroustrup)
Ieviestas daudzas augsta līmeņa konstrukcijas, kas atvieglo programmētāja darbu.
C++ ir saglabājis savietojamību ar valodu C
Uz valodu C++ vēl lielākā mērā attiecas tas, ko savulaik attiecināja uz valodu C – tajā ir kopā apvienotas gan zema, gan ļoti augsta līmeņa konstrukcijas
Слайд 4

Programmēšanas valoda C++ C++ valoda C valoda Funkcionālas iespējas kas parasti

Programmēšanas valoda C++

C++ valoda

C valoda

Funkcionālas iespējas kas parasti neizmanto C++

Funkcionālas iespējas

kas ir kopīgas C un C++

Funkcionālas iespējas objektorientētas programmēšanas nodrošināšanai

Citas funkcionālas iespējas

Слайд 5

Programmēšanas valoda C++ C++ valoda ir C valoda uz kuras ir uzlikts krusts!... DIVREIZ!!! :)

Programmēšanas valoda C++

C++ valoda ir C valoda uz kuras ir uzlikts

krusts!... DIVREIZ!!!
:)
Слайд 6

Pirmā programma uz C++ #include using namespace std; int main() {

Pirmā programma uz C++

#include
using namespace std;
int main()
{
cout <<

"Hello , World !" << endl ;
system ("pause");
return 0;
}

Ievadam programmas tekstu, rindiņu numurus nav jāievada.
C++ valoda ir jūtīga burtu reģistram – aizvietot main ar Main vai MAIN nedrīkst!

Saglabājam failu ar nosaukumu hello.cpp
Kompilējam un palaižam (shortcut F9)

Слайд 7

Pirmā programma uz C++ Palaišanas rezultāts Ja viss bija pareizi jūs

Pirmā programma uz C++

Palaišanas rezultāts

Ja viss bija pareizi jūs redzēsiet “Hello

World!”
Lai iziet no programmas nospiediet jeb kuru taustiņu.
Слайд 8

Pirmā programma uz C++ Ja kompilācijas laikā notiks kļūda, jūs par to dabūsiet atbilstošo ziņojumu.

Pirmā programma uz C++

Ja kompilācijas laikā notiks kļūda, jūs par to

dabūsiet atbilstošo ziņojumu.
Слайд 9

Programmas analīze #include using namespace std; int main() { cout system

Programmas analīze

#include
using namespace std;
int main()
{
cout << "Hello , World

!" << endl ;
system ("pause");
return 0;
}

Ievades/izvades (Input/Output) plūsmu (streams) atbalsts
Izmantot nosaukumus no C++ standarta bibliotēkas
Tukšas rindiņas ignorējas, tas lieto lai uzlabot koda lasamību
main() — jeb kādai programmai uz C++ jābūt funkcijai ar šādu nosaukumu; atslēgvārds int nozīmē ka programma atgriezīs operētājsistēmai veselo skaitli
un 9. – jeb kādas funkcijas ķermeni jāiekļauj figūriekavās

Слайд 10

Programmas analīze #include using namespace std; int main() { cout system

Programmas analīze

#include
using namespace std;
int main()
{
cout << "Hello , World

!" << endl ;
system ("pause");
return 0;
}

cout ir objekta vārds kas nodrošina informācijas izvadi uz ekrānu, tas kas ir jāizvada atdala ar “<<” simboliem, endl pārvieto kursoru uz jauno rindiņu.
system ("pause") konstrukcija gaida kamēr būs nospiesta kāda no taustiņam un nedod programmas logam aizvērties.
Punkts kurā notiek izeja no programmas, operētājsistēma saņem vērtību “0”

Слайд 11

Piezīmes Kompilators ignorē tukšas rindiņas Pārejas uz nākamo rindiņu un atkāpes

Piezīmes

Kompilators ignorē tukšas rindiņas
Pārejas uz nākamo rindiņu un atkāpes arī neietekmē

uz kompilatora darbu.
Sēkojoša programma ir pilnīgi ekvivalenta tikko apskatītai:

#include using namespace std;int main (){ cout <<
"Hello , World !"<< endl ; system ("pause"); return 0;}

Lai uzlabot koda lasāmību kodā jāliek atkāpes un tukšas rindiņas.
Gandrīz visas komandas beidzās ar “;”
Konstrukcija #include nozīmē: “iekļaut programmas tekstā failu iostream”

Слайд 12

Praktiskais darbs Izmainiet programmas tekstu tā lai tiktu izvadīta vēl viena

Praktiskais darbs

Izmainiet programmas tekstu tā lai tiktu izvadīta vēl viena rindiņa

“I love C++”
Cik reizes bija jāizmanto cout objektu?
Mēģiniet izmainīt programmas tekstu tā lai izmantot to tikai vienu reizi.
Слайд 13

Komentāri C++ valodā #include using namespace std; int main() //galvena programmas

Komentāri C++ valodā

#include
using namespace std;
int main() //galvena programmas funkcija
{
cout

<< "Hello , World !" << endl; //izvade uz ekranu
system ("pause");
return 0;
} //programmas beigas

Komentāru lietošana dod iespēju komentēt sarežģītas koda vietas, vai nestandartus risinājumus.
Komentārs ir simbolu secība kuru kompilators uztver ka vienu atstarpi, citiem vārdiem sakot – ignorē.

Viss teksts kas ir ievietots aiz “//” simboliem un iet līdz rindiņas beigām skaitās par komentāru.

Слайд 14

Komentāri C++ valodā #include using namespace std; int main() //galvena programmas

Komentāri C++ valodā

#include
using namespace std;
int main() //galvena programmas funkcija
{
cout

<< "Hello , World !" << endl; //izvade uz ekranu
/* Seit ir loti gars komentars kas
aiznem vairakas rindinas
cout << ”I love C++”;
gara komentara beigas */
system ("pause");
return 0;
} //programmas beigas

Viss teksts kas sākās aiz “/*” simboliem skaitās par komentāru, tāda veida komentāru var pabeigt ar “*/” simbolu secību.
Komentārus var izmantot arī programmas atkļūdošanas procesā, ieliekot komentāros aizdomīgas koda gabalus.

Слайд 15

Mainīgie a + x = b vienādojuma risināšana #include using namespace

Mainīgie

a + x = b vienādojuma risināšana

#include
using namespace std;
int main()
{

double a, b;
cout << "Input a: ";
cin >> a;
cout << "Input b: ";
cin >> b;
double x = b-a;
cout << "Root of equation a+x=b is " << x << endl;
system ("pause");
return 0;
}
Слайд 16

Mainīgie cin ir objekta vārds kas nodrošina informācijas ievadi no klaviatūras,

Mainīgie

cin ir objekta vārds kas nodrošina informācijas ievadi no klaviatūras, tas

kas ir jāievada atdala ar “>>” simboliem
double a, b; mainīgo definēšana
double x = b-a; mainīgo definēšana un sākotnējas vērtības piešķiršana.
Слайд 17

Mainīgie Lietotāja ievades datiem jābūt kaut kur saglabātiem Tam kalpo mainīgie

Mainīgie

Lietotāja ievades datiem jābūt kaut kur saglabātiem
Tam kalpo mainīgie
Visiem mainīgiem C++

valodā pirms to izmantošanas jābūt nodefinētiem
C++ valodā mainīgo var nodefinēt jeb kurā vietā, bet
nedrīkst vairākkārtīgi definēt mainīgus ar vienu un to pašu nosaukumu vienā un tā pašā blokā (bloks turpinās no atverošas figūriekavas līdz aizverošas figūriekavas)
mainīgo var izmantot uzreiz pēc definēšanas un līdz tekošā bloka aizvēršanas (līdz tuvākai aizverošai figūriekavai)
Слайд 18

Namespaces Programmu, kas parāda namespace nepieciešamību int main() { int value;

Namespaces

Programmu, kas parāda namespace nepieciešamību

int main()
{
int value;

value = 0;
double value; // Kļūda
value = 0.0;
}

Compiler Error: 'value' has a previous declaration as 'int value'

Katrā blokā nosaukums var eksistēt tikai vienā eksemplārā.

Слайд 19

Namespaces Izmantojot namespaces, mēs varam izveidot divus mainīgus ar vienādiem nosaukumiem.

Namespaces

Izmantojot namespaces, mēs varam izveidot divus mainīgus ar vienādiem nosaukumiem.

#include


using namespace std;
namespace first
{
int val = 500; // Mainīgais izveidots iekš namespace
}
int main()
{
int val = 200; // Lokālais mainīgais
// namespace mainīgajiem var piekļūt
// ārpus namespace, izmantojot operatoru ::
cout << first::val << endl;
return 0;
}

Output:
500

Слайд 20

Mainīgo tipi valodā C++ Pamattipi Keyword Low High Dig. of Prec.

Mainīgo tipi valodā C++

Pamattipi
Keyword Low High Dig. of Prec. Bytes
char -128 127 n/a 1
short -32’768 32’767 n/a 2
int -2’147’483’648 2’147’483’647 n/a 4
long -2’147’483’648 2’147’483’647 n/a 4
float 3.4*10-38 3.4*1038 7 4
double 1.7*10-308 1.7*10308 15 8
long double 3.4*10-4932 3.4*104932 19 16
bool false true n/a 1

Unsigned Integer

Types
Keyword Low High Bytes
unsigned char 0 255 1
unsigned short 0 65’535 2
unsigned int 0 4’294’967’295 4
unsigned long 0 4’294’967’295 4
Слайд 21

Mainīgo nosaukumi Mainīgo nosaukumiem drīkst izmantot latīņu alfabēta burtus a–z, A–Z

Mainīgo nosaukumi

Mainīgo nosaukumiem drīkst izmantot
latīņu alfabēta burtus a–z, A–Z
pasvītrošanas simbolu _
ciparus

0–9
Mainīgo un funkciju nosaukumi
nedrīkst sākties ar ciparu
nerekomendējas sākt un beigt ar pasvītrošanas simbolu
Nedrīkst sakrīt ar rezervētiem atslēgvārdiem (int, return, . . . )
Piemēri:
pieļaujamie nosaukumi: a, b, x1, y_42, day_of_week, num_of_students, route_66
nepieļaujamie nosaukumi: 3rd_law, double
nerekomendējamie nosaukumi: _temp_var, new_var_
Слайд 22

Aritmētiskie operatori “=“ piešķiršanas operators “+” saskaitīšanas operators “−” atņēmšanas operators

Aritmētiskie operatori

“=“ piešķiršanas operators
“+” saskaitīšanas operators
“−” atņēmšanas operators
“*” reizināšanas

operators
“/” dalīšanas operators (6/4 → 1, 6.0/4 → 1.25, 6/4.0 → 1.25)
“%” atlikuma saņemšanas operators no veselo skaitļu dalīšanas (6%4 → 2, 13%6 → 1)
Слайд 23

Praktiskais darbs Uzrakstiet programmu kas satur sekojošo mainīgo definēšanas. Izvadiet tos

Praktiskais darbs

Uzrakstiet programmu kas satur sekojošo mainīgo definēšanas.

Izvadiet tos uz ekrānu,

paskaidrojiet kāpēc sanāca tieši tāds rezultāts.

int a = 13/5;
int b = 13%5;
int c = 13.0/5;
double d = 13/5;
double e = 13%5;
double f = 13.0/5;
double g = 13/5 + 2/5;
double h = 13.0/5 + 2.0/5;
int i = 13.0/5 + 2.0/5;

Слайд 24

Praktiskais darbs Doti divi veselie mainīgie ar vērtībām. Jāuzraksta programmu kas

Praktiskais darbs

Doti divi veselie mainīgie ar vērtībām. Jāuzraksta programmu kas nomainītu

mainīgo vērtības vietām (a=2, b=3 -> a=3, b=2).
Dots skaitlis x. Aprēķināt x4.
Dots skaitlis x. Aprēķināt x7 izmantojot 4 reizināšanas operācijas.
Dots skaitlis x. Aprēķināt x13 izmantojot 5 reizināšanas operācijas.
Dots naturāls skaitlis. Izvadiet tā pēdējo ciparu.
Слайд 25

Praktiskais darbs Dots divzīmju skaitlis. Atradiet tā desmitnieku skaitu. Programma pieprasa

Praktiskais darbs

Dots divzīmju skaitlis. Atradiet tā desmitnieku skaitu.
Programma pieprasa ātrumu v

km/h un pārveido to m/s.
Programma pieprasa atzīmes 3 kontroldarbos un aprēķina vidējo balli.
Zinot kuba malu a, aprēķināt kuba tilpumu, tā virsmas laukumu un diagonāles garumu.