Programmanas valodu pamati Programmanas valodas Lekt M Lukjanska
- Slides: 61
Programmēšanas valodu pamati Programmēšanas valodas Lekt. M. Lukjanska
Programmēšanas valodu pamati Kopsavilkums l l l l Izstrādes vides šī priekšmeta ietvaros Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 2 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Programmēšanas valodu pamati Izstrādes vides šī priekšmeta ietvaros l 3 Pascal l Borland 7. 0 Programmēšanas valodas
Programmēšanas valodu pamati Izstrādes vides šī priekšmeta ietvaros l 4 Pascal l Dev Pascal (Pieejams: http: //www. bloodshed. net/devpascal. html ) Programmēšanas valodas
Programmēšanas valodu pamati Izstrādes vides šī priekšmeta ietvaros l 5 C l Dev C/C++ (Pieejams: http: //www. bloodshed. net/devcpp. html ) Programmēšanas valodas
Programmēšanas valodu pamati Izstrādes vides šī priekšmeta ietvaros l l 6 Laboratorijas darbu ietvaros programmu izejas kodus saglabāt sava kursa mapē: l D: StudentProgramesanas_valodas 2011IDKD 2 l D: StudentProgramesanas_valodas 2011IIDCM 012 Katram studentam ir ieteicams izveidot savu mapi Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l l Izstrādes vides šī priekšmeta ietvaros Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 7 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Programmēšanas valodu pamati Pirmā programma: ‘Sveiki, pasaule!’ Pascal (*1. Programma ‘Sveiki, pasaule!’*) PROGRAM L 3_P 1_Sveiki_Pasaule; USES CRT; BEGIN Writeln ('Sveiki, pasaule!'); (* Izvade uz ekrāna *) Readln; (* Ievade no lietotaja *) END. 8 C /* 1. Programma ‘Sveiki, pasaule!’ */ #include <stdio. h> main() { printf("Sveiki, pasaule!"); /* Izvade uz ekrāna */ getch(); /* Ievade no lietotaja */ } Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l l Izstrādes vides šī priekšmeta ietvaros Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 9 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Programmas struktūra Apraksts 10 C Pascal l Apraksts: 1. Nosaukums 2. Bibliotēkas 3. Sākums (BEGIN) – darbības Beigas (END) 4. Apakšprogrammas l funkcijas un procedūras l Apraksts: 1. ---2. Preprocesora komandas 3. Sākums ( { ) - darbības Beigas ( } ) 4. Apakšprogrammas • funkcijas un procedūras Programmēšanas valodas
Programmas struktūra Pascal programmas struktūra 11 Pascal PROGRAM Programmas. Nosaukums; USES (* Bibliotēkas *) Deklarēšanas bloks CONST (* Konstantes *) TYPE (* Datu tipi *) VAR (* Mainīgie *) (* Apakšprogrammu definīcijas *) BEGIN (* Operatori *) END. (* Apakšprogrammas *) Pamatbloks Apakšprogrammu bloks Programmēšanas valodas
Programmas struktūra C programmas struktūra 12 C #/* Preprocesora komandas: bibliotēkas u. c. */ /* Apakšprogrammu definīcijas */ main () { /* Konstantes */ /* Mainīgie */ /* Operatori */ } /* Apakšprogrammas */ Programmas pamatbloks (galvenā funkcija) Apakšprogrammu bloks Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l l Izstrādes vides šī priekšmeta ietvaros Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 13 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Mainīgais un konstante Riņķa līnijas garuma aprēķināšana l 14 Atcerēsimies, kā aprēķina riņķa līnijas garumu konstante mainīgie l Riņķa līnijas garuma aprēķināšanas algoritma blokshēma Sākums Deklarē un inicializē konstanti: PI Ievada rādiusu: r Aprēķina riņķa līnijas garumu: L Izvada L Beigas Programmēšanas valodas
Mainīgais un konstante Mainīgais 15 Datora atmiņas bloks Programmēšanas valodas
Mainīgais un konstante Mainīgais l Definīcija: l datora atmiņas bloks, kuram uz programmas izpildes laiku piešķir l l identifikatoru (nosaukumu), datu tipu vērtību - var mainīties programmas izpildes laikā Svarīgi: l l l 16 pirms mainīgos izmantot programmā tie ir jādeklarē un jāinicializē mainīgos var atkārtoti izmantot un mainīt to vērtības programmas izpildes laikā, cik bieži nepieciešams Piemēri cilvēkvalodā: l gaisa temperatūra, vēja ātrums, sporta spēļu rezultāti, koeficienti kvadrātvienādojumos utml. Programmēšanas valodas
Mainīgais un konstante Konstante 17 Datora atmiņas bloks Programmēšanas valodas
Mainīgais un konstante Konstante l Definīcija: l datora atmiņas bloks, kuram uz programmas izpildes laiku piešķir l l identifikatoru (nosaukumu) datu tipu vērtību - piešķir programmas kompilācijas laikā (pirms programmas izpildes) un parasti programmas izpildes laikā nemaina Svarīgi: l l 18 konstantes parasti definē gadījumos, kad kāda noteikta vērtība programmā jāizmanto vairākkārtīgi Piemēri: l gaismas ātrums, skaitlis Pī, gravitācijas spēks utml. Programmēšanas valodas
Mainīgais un konstante Mainīgais vs Konstante 19 Mainīga programmas izpildes laikā mainīgais Nemainīga programmas izpildes laikā konstante Datora atmiņas bloki Programmēšanas valodas
Mainīgais un konstante Programmas veidošanas process – mainīgais un konstante Programma Teksta redaktors (Text Editor) Programmas teksts. pas. c. cpp. asm Kompilators (Compiler) Ielādes modulis. exe 20 konstante Ielādētājs (Loader) Programmas izpilde mainīgais No: J. Bule, RTK kursa “Programmēšanas valodas" lekciju materiāli, RTK, 2010. Programmēšanas valodas
Mainīgais un konstante Deklarēšanas sintakse l Mainīgais: l l Pascal l VAR <mainīgā identifikators> : <mainīgā tips>; l no angļu val. variable - ‘mainīgs’ C l l 21 <mainīgā tips> <mainīgā identifikators>; Konstante: l l Pascal l CONST <konstantes identifikators> : <konstantes tips> = <vertiba>; l no angļu val. constant - ‘nemainīgs’ C l const <konstantes tips> <konstantes identifikators> = <vertiba>; Programmēšanas valodas
Mainīgais un konstante Programmas piemērs Pascal (* 2. Programma ‘Rinka linijas garuma aprekinasana’ *) PROGRAM L 3_P 2_Mainigie_Konstantes; CONST (* Konstantes deklaresana un inicializesana *) PI : real = 3. 14; VAR r : real; l : real; (* Mainigo deklaresana *) (* Rinka linijas radiuss *) (* Rinka linijas garums *) BEGIN (* Pamatbloks *) r : = 5; l : = 2 * PI * r; Writeln('Rinka linijas garums: ', l ); Writeln('PI: ', PI ); Writeln('Radiuss: ', r ); Readln; (* Ievade no lietotaja *) END. (* Pamatbloks *) 22 C /* 2. Programma ‘Rinka linijas garuma aprekinasana’ */ #include <stdio. h> main() { /* Konstantes deklaresana un inicializesana */ const float PI = 3. 14; /* Mainigo deklaresana un inicializesana */ float r = 5; float l = 2 * PI * r; printf("Rinka linijas garums: %f n", l); printf("PI: %f n", PI); printf("Radiuss: %f n", r); /* Izvade uz ekrāna */ getch(); /* Ievade no lietotaja */ } Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 23 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Programmēšanas valodu pamati Identifikators l 24 Definīcija: l rakstzīmju virkne (nosaukums), ko izmanto kāda programmā izmantojamā objekta identificēšanai Identifikatoru tipi Rezervētie vārdi iepriekšdefinētie vārdi programmā, kuriem ir īpaša nozīme (semantika) un kuru nozīmi nevar mainīt Standartidentifikatori Lietotāja definētie identifikatori iepriekšdefinētie vārdi, kuriem ir īpaša nozīme (semantika), bet kuru nozīmi var mainīt Programmēšanas valodas
Programmēšanas valodu pamati Identifikators (turpinājums) l Sintakse: l l sākas ar latīņu alfabēta burtu vai pasvītrojumu (_). . . kuram seko simbols: burts vai cipars, vai arī pasvītrojums (_) nedrīkst saturēt šādus simbolus: !@#$%^&*()+`-={}[]: "; '<>? , . /| Svarīgi: l Pacal l mazie un lielie burti ir līdzvērtīgi C l l 25 mazie un lielie burti nav līdzvērtīgi rezervētie vārdi un to skaits var atšķirties pēc programmēšanas valodas un pēc izstrādes vides Piemēri cilvēkvalodā: l Cilvēku vārdi, uzvārdi, Studenta ID Programmēšanas valodas
Programmēšanas valodu pamati Identifikators (turpinājums) Pascal Rezervētie vārdi: Program, Begin, End. . . Standartidentifikatori: Input, output, read, false, char, integer. . . 26 C Rezervētie vārdi: while, int, if, else, int. . Standartidentifikatori: printf, getchar. . . Lietotāja definētie: Pareizie: vecums, studenta_id, students 1, _garums Nepareizie: vecums? , 1 programma, uz. zemi, uz zemi, program Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 27 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Vienkāršie datu tipi No 2. lekcijas ‘Ievads par programmēšanas valodām’ l 28 Atcerēsimies - Programmēšanas valodas semantikas uzdošana Skaitliskie Datu apraksta pamatlīdzekļi jeb Datu tipi Vienkāršie datu tipi Veselais Reālais Loģiskais Uzskaitāmie Simbolu Lietotāja Strukturētie datu tipi Masīvi, Ieraksti, Apvienības Programmēšanas valodas
Vienkāršie datu tipi Skaitliskie – Veselais skaitlis l Definīcija: l l 29 atbilst veselā skaitļa jēdzienam matemātikā, bet iespējamo vērtību intervāls ir ierobežots Svarīgi: l pieejamo veselo skaitļu intervāls ir atkarīgs no datora procesora (32 vai 64 -biti) un/vai kompilatora Pascal tips C tips Intervāls (32 -bitu procesors) Aizņemtās atmiņas apjoms Shortint short int -128. . . 127 1 baits Integer int -32768. . . 32767 2 baiti Longint long int -2147483648. . . 2147483647 4 baiti Byte/char 0. . . 255 1 baits Word unsigned int 0. . . 65535 2 baiti No: [3] un [5] Programmēšanas valodas
Skaitliskie – Veselais skaitlis Deklarēšanas sintakse 30 Pascal VAR <mainīgā identifikators> : integer; Piemērs: VAR vecums : integer; C int <mainīgā identifikators>; Piemērs: int vecums; Programmēšanas valodas
Vienkāršie datu tipi Skaitliskie – Reālais skaitlis Definīcija: l l atbilst reālā skaitļa jēdzienam matemātikā, bet iespējamo vērtību intervāls un precizitāte ir ierobežoti Svarīgi: l var attēlot: l l decimālajā pierakstā ar fiksēto komatu (punktu): 1. 234 vai -34. 5507 zinātniskajā pierakstā jeb eksponentformā ar peldošo komatu (punktu): 5. 0 E 3 vai -7. 443 E 3 ja darbību rezultāts pārsniedz augšējo robežu, tad tiek uzrādīta kļūda ja darbību rezultāts pārsniedz apakšējo robežu, tad attiecīgajam mainīgajam tiek piešķirta nulles vērtība Pascal tips Intervāls (32 -bitu procesors) C tips Intervāls (32 -bitu procesors) Aizņemtās atmiņas apjoms single 1. 5× 10− 45. . . 1. 7× 1038 float 1× 10− 37. . . 1× 1037 4 baiti double 5× 10− 324. . . 1. 7× 10308 double 1× 10− 308. . . 1× 10308 8 baiti real 2. 9× 10− 39. . . 1. 7× 1038 -- -- 6 baiti Programmēšanas valodas No: [3] un [5] l 31
Skaitliskie – Reālais skaitlis Deklarēšanas sintakse 32 Pascal VAR <mainīgā identifikators> : real; Piemērs: VAR valutas_kurss : real; C float <mainīgā identifikators>; Piemērs: float valutas_kurss; Programmēšanas valodas
Vienkāršie datu tipi No 2. lekcijas ‘Ievads par programmēšanas valodām’ l 33 Atcerēsimies - Programmēšanas valodas semantikas uzdošana Skaitliskie Datu apraksta pamatlīdzekļi jeb Datu tipi Vienkāršie datu tipi Veselais Reālais Loģiskais Uzskaitāmie Simbolu Lietotāja Strukturētie datu tipi Masīvi, Ieraksti, Apvienības Programmēšanas valodas
Vienkāršie datu tipi Uzskaitāmie - Simbolu l Definīcija: l l alfabēta simbols vai simbolu virkne Svarīgi: l l l 34 char var būt jebkurš simbols, kas atrodas datora ASCII simbolu kodu tabulā lai inicializētu simbolu tipa mainīgo simbols vai simbolu virkne ir jāliek apostrofos. Piemēri: l ‘a’, ‘Liena’, ‘ 0’, ‘ 3. 14’ Programmēšanas valodas
Uzskaitāmie – Simbolu Deklarēšanas sintakse 35 Pascal var <mainīgā identifikators> : char; (* simbols *) var <mainīgā identifikators> : string; (* simbolu virkne *) Piemēri: VAR jautajuma_atbildes_variants : char; VAR vards : string; C char <mainīgā identifikators>; char <mainīgā identifikators>[<izmērs = max simbolu skaits>]; Piemēri: char jautajuma_atbildes_variants ; char vards[50]; Simbolu virknes ir iespējamas vēl citas realizācijas Programmēšanas valodas
Vienkāršie datu tipi Uzskaitāmie - Loģiskais 36 Definīcija: l l mainīgais, kuram iespējamas tikai divas vērtības: l patiess (TRUE) vai aplams (FALSE) Deklarēšanas sintakse: l Pascal VAR <mainīgā identifikators> : boolean; Piemērs: VAR parbaude : boolean; C Nav atsevišķa loģiskā datu tipa Tiek parasti realizēts ar: - integer datu tipu ( 0 = FALSE, 1 = TRUE) vai - definējot jaunu datu tipu, bool vai tml. Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 37 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Darbības No 2. lekcijas ‘Ievads par programmēšanas valodām’ l 38 Atcerēsimies - Programmēšanas valodas semantikas uzdošana Izteiksmes Ievades/Izvades operatori Piešķires operatori Darbību apraksta pamatlīdzekļi Sazarojumu operatori Pārejas operators Nosacījuma operatori Cikla operatori Bloki Apakšprogrammas Procedūras Pakotnes Funkcijas Programmēšanas valodas
Darbības Izteiksmes l Izšķir: l l l 39 aritmētiskās, relāciju un loģiskās izteiksmes un atiecīgi aritmētiskos, relāciju un loģiskos operatorus Izteiksmju operatoriem ir noteiktas izpildes prioritātes l l l Pascal valodā ir 4 prioritāšu līmeņi C valodā ir 15 prioritāšu līmeņi Vairāk par prioritāšu līmeņiem – [šeit] Programmēšanas valodas
Darbības Izteiksmes (turpinājums) l 40 Aritmētiskie operatori Pascal sintakse C sintakse Operatora nosaukums a+b Saskaitīšana a–b Atņemšana a*b Reizināšana a/b Dalīšana a MOD b a%b Dalīšana pēc moduļa (atlikums) a DIV b a/b Dalīšana bez atlikuma (rezultātā veselā daļa – veselo skaitļu dalīšana) a un b jābūt integer/int tipa skaitļiem! 2 / 3 nav tas pats, kas 2. 0 / 3. 0 Programmēšanas valodas
Darbības Izteiksmes (turpinājums) l 41 Relāciju operatori Pascal sintakse C sintakse Operatora nosaukums a=b a == b Vienādība a <> b a != b Nevienādība a>b Lielāks nekā a<b Mazāks nekā a >= b Lielāks vienāds a <= b Mazāks vienāds Programmēšanas valodas
Darbības Izteiksmes (turpinājums) l l 42 Loģiskie operatori Pascal sintakse C sintakse Operatora nosaukums NOT b !b Negācija (loģiskais ‘ne’) a AND b a && b Konjunkcija (loģiskais ‘un’) a OR b a || b Disjunkcija (loģiskais ‘vai’) Loģiskās operācijas rezultāts divām izteiksmēm AND OR NOT patiess AND patiess = patiess OR patiess = patiess NOT aplams = patiess AND aplams = aplams patiess OR aplams = patiess NOT patiess = aplams AND patiess = aplams OR patiess = patiess aplams AND aplams = aplams OR aplams = aplams Programmēšanas valodas
Darbības Aritmētiskas izteiksmes - programmas piemērs (Pascal) 43 PROGRAM L 3_Aritmetiskas_Izteiksmes; VAR x, y : integer; (* Mainigo deklaresana *) summa, starpiba : real; reizinasana, dalisana : real; dalisana_bez_atlikuma, modulis : real; BEGIN (* Pamatbloks *) x : = 7; y : = 2; (* Mainigo inicializesana *) summa : = x + y; (* Summas izteiksme *) starpiba : = x - y; (* Starpibas izteiksme *) reizinasana : = x * y; (* Reizinas izteiksme *) dalisana : = x / y; (* Dalisanas izteiksme *) dalisana_bez_atlikuma : = x DIV y; (* Dalisana bez atlikuma tikai ar integer *) modulis : = x MOD y; (* Dalisanas atlikums tikai ar integer *) Writeln('Summa: ', summa ); (* Izvade uz ekrana *) Writeln('Starpiba: ', starpiba ); Writeln('Reizinasana: ', reizinasana ); Writeln('Dalisana: ', dalisana ); Writeln('Dalisana bez atlikuma: ', dalisana_bez_atlikuma ); Writeln('Modulis: ', modulis ); Readln; (* Ievadam no lietotaja *) END. (* Pamatbloks *) Programmēšanas valodas
Darbības Aritmētiskas izteiksmes - programmas piemērs (C) 44 /* 3. Programma ‘Aritmetiskas izteiksmes’ */ #include <stdio. h> main() { /* Mainigo deklaresana un inicializesana */ int x = 7; int y = 2; float summa = x + y; float starpiba = x - y; float reizinasana = x * y; float dalisana = x / y; float modulis = x % y; /* Izvade uz ekrana */ printf("Summa: %f n", summa); printf("Starpiba: %f n", starpiba); printf("Reizinasana: %f n", reizinasana); /* x, y deklareti ka int -> veselo skaitlu dalijums */ printf("Dalisana: %f n", dalisana); printf("Modulis: %f n", modulis); /* Ievadei no lietotaja */ getch(); } Programmēšanas valodas
Programmēšanas valodu pamati Loģiskās izteiksmes - programmas piemērs (Pascal) 45 (* 4. Programma ‘Logiskas izteiksmes’ *) PROGRAM L 3_Logiskas_Izteiksmes; VAR x : integer; b : boolean; (* Mainigo deklaresana *) BEGIN (* Pamatbloks *) Writeln('Ievadiet veselu skaitli intervala no 5 lidz 50: '); Readln (x); b : = ( x > 5 ) AND ( x <= 50 ); (* Parbaude ar logisko operatoru *) Writeln('Vai skaitlis atrodas intervaalaa: ', b ); Readln; (* Ievadam no lietotaja *) END. (* Pamatbloks *) Programmēšanas valodas
Programmēšanas valodu pamati Loģiskās izteiksmes - programmas piemērs (C) 46 /* 4. Programma ‘Logiskas izteiksmes’ */ #include <stdio. h> main() { /* Mainigo deklaresana un inicializesana */ int x; int b; /* Izvade uz ekrana */ printf("Ievadiet veselu skaitli intervala no 5 lidz 50: "); scanf("%d", &x); b = (( x > 5 ) == ( x <= 50 )); printf("Vai skaitlis atrodas intervala: %d", b); /* Ievadei no lietotaja */ getch(); } Programmēšanas valodas
Darbības No 2. lekcijas ‘Ievads par programmēšanas valodām’ l 47 Atcerēsimies - Programmēšanas valodas semantikas uzdošana Izteiksmes Ievades/Izvades operatori Piešķires operatori Darbību apraksta pamatlīdzekļi Sazarojumu operatori Pārejas operators Nosacījuma operatori Cikla operatori Bloki Apakšprogrammas Procedūras Pakotnes Funkcijas Programmēšanas valodas
Programmēšanas valodu pamati Operatori l Definīcija: l l sintaktiska konstrukcija – pabeigta programmēšanas valodas frāze, kas raksturo konkrētu datu apstrādes etapu Svarīgi: l l 48 katra operatora beigās jāliek semikols – attiecas gan uz Pascal, gan uz C (; ) Iedalījums: l l l Piešķires operators jeb pamatoperators Ievades/Izvades operatori Sazarojumu operatori Programmēšanas valodas
Operatori Pieškires operators jeb pamatoperators 49 Definīcija: l l operators, kuru izmanto, lai mainīgajiem piešķirtu vērtību Svarīgi: l l piešķiramā vērtība var būt l l l skaitliska, simboliska, loģiska (atbilstoši mainīgā datu tipam) izteiksmes veidā mainīgajiem jāpiešķir vērtība pirms to izmantošanas programmā, pretējā gadījumā būs kļūda programmas kompilēšanā vai izpildē Sintakse: Pascal l <mainīgā identifikators> : = <vērtība>; Piemērs: r : = 10; C <mainīgā identifikators> = <vērtība>; Piemērs: r = 10; Programmēšanas valodas
Operatori Ievades operatori l Definīcijas: l l 50 Ievades operators – vērtību ievadīšanai programmas izpildes laikā Sintakse Pascal C (* Viena simbola ielasīšanai *) Read; getchar(); Read (<mainīgā identifikators>); <mainīgā identifikators>= getchar(); (* Rindiņas ielasīšanai līdz ‘Enter’ *) Readln; Readln (<mainīgā identifikators>); Piemērs: Readln (vecums); scanf (%<tipa identifikators>, &<mainīgā identifikators>); Piemērs: scanf (%d, &vecums); Tipa identifikatoru piemēri: %d – int tipa %f – float vai double tipa % c - char Programmēšanas valodas
Operatori Izvades operatori (Pascal) l Definīcijas: l l 51 Izvades operators – rezultātu, vērtību izvadei Sintakse: l Write (‘Teksts’, <mainīgā identifikators>); (*informācijas izvadīšana uz ekrāna*) l l Writeln; (* kursora pārvietošana uz nākamās rindas sākumu *) Writeln (‘Teksts’, <mainīgā identifikators>); (* ekvivalents Write tikai pēc informācijas izvades kursors tiek pārvietots uz nākamās rindas sākumu*) l Writeln (‘Teksts’, <mainīgā identifikators>: skaitlis); (* integer datu tipa skaitļu izvada formatēšana – skaitlis norāda ciparu skaitu, kas jāizmanto, ja mainīgajam nepeciešamas vairāk, tad skaitlis tiek ignorēts*) l Writeln (‘Teksts’, <mainīgā identifikators>: skaitlis 1: skaitlis 2); (* real datu tipa skaitļu izvada formatēšana – skaitlis 1 norāda ciparu skaitu pirms komata, skaitlis 2 – pēc komata*) Programmēšanas valodas
Operatori Izvades operatori (C) l Definīcijas: l l 52 Izvades operators – rezultātu, vērtību izvadei Sintakse: l l printf (“Teksts %<tipa identifikators>”, <mainīgā identifikators>); (*informācijas izvadīšana uz ekrāna*) printf (“n”); (* kursora pārvietošana uz nākamās rindas sākumu *) l printf(“Teksts %<tipa identifikators> n”, <mainīgā identifikators>); (* pēc informācijas izvades kursors tiek pārvietots uz nākamās rindas sākumu*) l l Izvada formatēšanu nosaka %<tipa identifikators> Piemērs: l l int x = 10; printf (“Sodien ir %d. diena”, x); l Izvada: Sodien ir 10. diena Programmēšanas valodas
Operatori Piešķires, Ievades/Izvades operatori - programmas piemērs (Pascal) 53 Program L 3_Pieskires_Ievades_Izvades_operators; Var x, y : integer; z : real; (* Mainigo deklaresana *) Begin (* Pamatbloks *) x : = 7; (* Piešķires operators *) z : = 7. 7799; (* Piešķires operators *) Write ('Ievadiet y vertibu: '); (* Izvades operators *) Readln (y); (* Ievades operators, kas ielasa un pieskir vertibu mainigajam y *) Writeln('Mainigo summa: ', x + y ); (* Izvades operators – parnese uz jauno rindu*) Writeln('Neformatets z: ', z ); Writeln('Formatets z: ', z: 6: 2 ); Readln; (* Ievades operators pauzei *) End. (* Pamatbloks *) Programmēšanas valodas
Operatori Piešķires, Ievades/Izvades operatori - programmas piemērs (C) 54 /* 5. Programma ‘Pieskires, Izvades, Ievades operatori’ */ #include <stdio. h> main() { /* Mainigo deklaresana un inicializesana */ int x, y; float z; x = 7; /* Piešķires operators */ z = 7. 7799; /* Piešķires operators */ printf("Ievadiet y vertibu: "); scanf("%d", &y); /* Izvades operators */ /* Ievades operators */ printf("Mainigo summa: %d n", x + y); /* Izvades operators – parnese uz jauno rindu*/ printf("Formatets z ar d: %d n", z); printf("Formatets z ar f: %f n", z); /* Ievadei no lietotaja - 'Enter'*/ getch(); } Programmēšanas valodas
Programmēšanas valodu pamati Kopsavilkums l l l Pirmā programma: ‘Sveiki, pasaule!’ Programmas struktūra Mainīgais un konstante Identifikators Vienkāršie datu tipi Darbības l l Izteiksmes Operatori l l l 55 Piešķires operators Izvades/Ievades operators Standartfunkcijas Programmēšanas valodas
Programmēšanas valodu pamati Standartfunkcijas – matemātiskās l 56 Apraksts: l l Kompilatoros parasti ir pieejamas dažāda veida iebūvētās funkcijas. Biežāk izmantojamās matemātiskās funkcijas ir apkopotas sekojošajā tabulā: Funkcijas nosaukums Pascal/C Funkcijas nozīme Argumenta datu tips Funkcijas vērtības datu tips abs(x) │x│ integer Integer sqr(x) x^2 real Real sqrt(x) Kvadrātsakne no x integer/real sin(x) Sin (x) integer/real Real cos(x) Cos(x) integer/real Real Arctg(x) integer/real Real exp(x) e^x integer/real ln(x)/log(x) ln(x) integer/real arctan(x)/atan(x) Programmēšanas valodas
Programmēšanas valodu pamati Standartfunkcijas – matemātiskās (turpinājums) Funkcijas nosaukums Pascal/C trunc(x) round(x)/ ceil(x), floor(x) odd(x)/-random(x)/rand(), srand() Funkcijas nozīme 57 Argumenta datu tips Funkcijas vērtības datu tips [x] – skaitļa veselā daļa real integer noapaļošana līdz veselam real integer nepārības pārbaude integer boolean nejauša skaitļa iegūšana intervālā no 0 līdz x/nejauša skaitļa iegūšana integer Programmēšanas valodas
Programmēšanas valodu pamati Standartfunkcijas – simbolu apstrādei l 58 Apraksts: l Simbolu apstrāde Pascal Funkcijas nosaukums Funkcijas nozīme Argumenta datu tips Funkcijas vērtības datu tips ord(x) rezultātā izdod simbola x ASCII tabulas koda vērtību char integer chr(x) rezultātā izdod simbolu, kurai ir ASCII tabulas koda vērtība x integer char pred(x) nosaka elementa x iepriekšējo elementu char succ(x) nosaka elementa x nākamo elementu char Programmēšanas valodas
Programmēšanas valodu pamati Standartfunkcijas – simbolu apstrādei l 59 Apraksts: l Simbolu apstrāde C char c ='A'; printf ("%c", c); // rezultāts A printf ("%d", c); // rezultāts 65 printf ("%c", c + 32); // rezult a printf ("%d", 'B' – 'A')); // result 1 Programmēšanas valodas
Programmēšanas valodu pamati 60 l l l Tālāk – Sazarojumu operatori Paldies par uzmanību! Jautājumi? Programmēšanas valodas
Programmēšanas valodu pamati Izmantotie resursi 61 1. R. Zaks, Introduction to Pascal: Including Turbo Pascal, 2 nd ed. , Sybex, 1986, p. 464. 2. A. Balode, Programmēšanas pamati. Valoda Turbo Pascal, Zvaigzne ABC, 2009, p. 232. 3. Programmēšanas pamati Pascal vidē, RTU Būvmehānikas katedra, Rīga, RTU, 2005 4. J. Bule, RTK kursa “Programmēšanas valodas" lekciju materiāli, RTK, 2010. 5. C Variable types and declaration, Wikipedia. [saite] 6. Read and Readln, Borland Pascal Wiki. [saite] 7. Use of getch(), getche() and getchar() in C. [saite] Programmēšanas valodas