Upload
zohar
View
76
Download
0
Embed Size (px)
DESCRIPTION
Süsteemprogrammeerimine keeles C ja C#. Teine loeng. Sisu. keele konstruktsioonid Kommentaarid Muutuja printf; WriteLine Avaldis Juhtstruktuurid. Keele kontstruktsioonid. Algoritm – korralduste jada Programm – kirja pandud algoritm Moodul – programmidokument (fail) - PowerPoint PPT Presentation
Citation preview
Süsteemprogrammeerimine keeles C ja C#
Teine loeng
Sisu
keele konstruktsioonid Kommentaarid Muutuja printf; WriteLine Avaldis Juhtstruktuurid
Keele kontstruktsioonid
Algoritm – korralduste jada Programm – kirja pandud algoritm Moodul – programmidokument (fail) Transleerimine – moodil(te) tõlkimine
Programm on nimeline korralduste jada, mida on võimalik käivitada opsüsteemis või mõnest teisest programmist
Programmi vormistus
Kindlad reeglid Algus, lõpp, kasutamisreeglistik (liides)
xxx Nimi (yyy)
{ keha }
vastus Sõdur (käsk)
{ tegevus }
Kõige lühem programm
C ja C++void main (void) { }
C# Iga moodul on klass Igas klassis peab olem 1 liige Süsteemi poolt käivitataval moodulil peab olema
ühene käivituskoht
class x { static void Main() { } }
Programm võiks midagi ütelda printf( ); // C ja C++ Write( ); // C# WriteLine( ); // C#
C ja C++: printf on ise programm, ta on kuskil kirjeldatud ja selle
kasutamiseks #include <stdio.h> C#
Write ja WriteLine on mingi klassi (Console) meetodid, seepärast using System.Console või System.Console.WriteLine( );
Kommentaarid
// kuni rea lõpp -- inline comment /* kuni */ -- block comment Milleks
Selgitamiseks Dokumenteerimiseks Ajutiseks eemaldamiseks
Kommentaarid on ka: Treppimine Muutujate nimed
Kommenteerimine C# keeles
Samad võimalused, plus
/// suhtlemine IDEga (ToDo)
/// <Summary> /// Automatane dokumentatsioon /// <Summary>
Muutuja
Nimeline mälupiirkond Ulatus Sisu Tähendus
Andmetüüp määrab: Ulatuse Sisu tähenduse Operatsioonide tähenduse
Muutuja kirjeldamine
Tüübinimi MuutujaNimi;
Tüübinimi MuutujaNimi = algväärtus;
seltsimees Henn; Inimene Henn; õpetaja Henn; õpilane Henn;
Literaalid
Nimeta isekirjeldavad tüübiga mälupiirkonnad, mida ei saa (tohi) muuta
Arvud (4; 7; 18;) Tekstid (“neidmevaatamehiljem”)
Esimesed tegevused
Omistamine Muutuja = avaldis;
Suurendamine Muutuja++; Muutuja += lisa ; ++Muutuja;
Vähendamine Muutuja-- Muutuja -= maha; --Muutuja
Avaldis
Tehted Aritmeetika (+, -, ++, --, *, /, %) BitiLoogika (&, |, ^, !) Loogika (&&, ||, ^^) Nihutamine (<<, >>) Omistus (=, +=, -=, *=, /=, %=, &=, ^=, <<=, >>=) Tingimuslik ?: Võrdlused ==, != >=, jne
Avaldis (jätk)
Tehete järjekord (prioriteet)
() [] . -> ++ -- & ! * / % + - >> << == !=
& ^ | && || ?: = += -= *= /= ...
Tingimuslik algoritm - IF
if (tingimus) lause; if (tingimus) lause else lause; if (tingimus) lause else if (tingimus) lause;
Lause := {lausete jada}
Tingimuslik algoritm - SWITCH if (palk –arved) = 0 minekoju; else if (palk –arved) > 100 minejooma; else if (palk –arved) > 1000 mineostmamidagi ;
Tingimuslik algoritm – SWITCH switch (palk – arved) { case 0 : minekoju; case
Tingimusli algoritm – SWITCH switch (i) { case 1: tegevus1; case 2: tegevus2; case 3: tegevus3; case 4: tegevus4; default: muidutegevus; }
Tingimusli algoritm – SWITCH switch (i) { case 1: tegevus1; break; case 2: tegevus2; break; case 3: tegevus3; break; case 4: tegevus4; break; default: muidutegevus; }
Tsükkel (kordajaga) – FOR
for (käivitus; lõpetus; samm) lause ; Käivitus: muutuja = algväärtus Lõpetus: loogiline avaldis Samm: muutuja++ või muutuja += 10
for (i = 0; i < 10; i++) printf(“i on%d”, i)
for ( ) { }
Tsükkel – WHILE ja DO
while (tingimus) lause; do lause while (tingimus);