argumendi lõppväärtus B, sammu väärtus H ja sammu koefitsent C. Alamprogrammis "int arvutamine" toimub funktsiooni väärtuste ning argumentide arvutamine kuni argumendi väärtus on ületanud argumendi lõppväärtuse B. Alamprogrammis "int v2ljastus" toimub argumendi ja sellele vastava funktsiooni väärtuse väljastamine. Peaprogrammis on deklareeritud muutujad. Pilt programmist Kasutatud kirjandus 1. Teodor Luczkowski "Baasteadmised programmeerimiskeelest C++" 2. http://elrond.tud.ttu.ee/material/vladimir/PROGRAMMEERIMINE/
kuidase need omavahel ja välismaailmaga suhtlevad. ● Süsteemianalüütik (ingl system analyst) aitab “tõlkida” ärisoovid arendajatele sobivateks juhisteks. ● Programmeerija on keegi, kes kirjutab programmi. Kõige lihtsamalt võib see olla keegi, kes instruktsioonide järgi programmi kirjutab, ise programmi ehitusele vähe mõeldes. ● Arendaja on üldmõiste töötaja kohta, kes tarkvara loob. Arendustööks on vaja arusaamist programmeerimiskeelest ja nõuetest, kuid keerukamate ülesannete jaoks võib olla tarvis laialdasemaid teadmisi. Oskuste, kogemuste ning vastutuse põhjal eristatakse vahel nooremarendajat ja vanemarendajat. ● Tarkvarainsener tunneb programmeerimisega seotud infotehnoloogilisi võimalusi (raamistikke, malle, arhitektuure, protsesse, tehnikaid jne.) ning oskab neid otstarbekohaselt rakendada. ● Testija kontrollib, et tarkvara teeks seda, mida ta peab tegema, ehk et ärisoovid
tehis- ehk formaalkeelteks. Programmeerimiskeeled jms. Liiklusmärkide süsteem on ka keel. Morsetähestik. Ükskõik milline tingmärkide süsteem. Rahvusvahelised abikeeled (volapük, ido, novial, esperanto leiutaja on Ludwig (Lazar) Zamenhof 1887.a.). Esperantol on aga olemas väike kõnelejaskond, kes räägib seda esimese keelena > loomuliku keele tunnused. 8. Formaakleeled vs. loomulikud keeled. On üpris kitsa kasutusalaga (programmeerimiskeelest on vähe kasu liikluse korraldamisel ja vastupidi jms). Miks? Sümbolite arv on piiratud. Inimkeeles on teatud sümbolite (sõnade) arv piiramatu, neid tekib juurde, mõned kaovad aga kasutuselt. Inimkeele kasutusala ei ole piiratud. Loomuliku keele omandamise võime on kaasasündinud, formaalkeeli omandatakse ainult õppides. Formaalkeel väldib mitmetähenduslikkust. Loomulik keel ei suuda seda vältida (ega peagi)
aastal 12,8 miljardit dollarit (Austin American-Statesman 1994), mis näitab, et suur arv tarkvara toodetest oli läbi piraatluse saadud. Järelikult on piraatlus tõsine probleem tarkvara-, muusika- ja filmitööstuse arengu jaoks. Kuid kas internetipiraatlusel on ka positiisveid külgi? Ehk on internetipiraatlus ka kuidagimoodi tootjatele kasulik, rääkimata tarbijatest? Internetipiraatluse ajalugu algab aastast 1975, kui Dan Sokol, kes oli Homebew Computer Club liige, kopeeris versiooni programmeerimiskeelest BASIC [1]. Sellest saadik on piraatlus ajapikku kasvanud. Tänaseks on internetipiraatlus väga palju etappe läbinud ning arenenud väga targaks ja keeruliseks, valmistades peavalu paljudele mõjuvõimsatele isikutele, näiteks Hollywoodis ning muusika- ja tarkvaratööstuses. Massilise piraatluse alguseks võib lugeda programmi Napster, mille teenused toimisid aastatel 1999-2001 ning mis andis inimestele võimaluse lihtsalt alla laadida muusika MP3 faile, tasuta
ühemõttelisus; informatsioonimudel peab olema arvutipärane (STEP-i infomudel on loodud formaalsel objektorienteeritud EXPRESS keelega); efektiivsus (STEP-i faili struktuur ja vorm peavad olema efektiivsed töötlemisel, salvestamisel ja andmevahetusel, kuid vastama ka kõigile teistele nõudmistele); minimaalne elementide hulk (selle abil välditakse kontrollimatuid STEP-i laiendusi, mis kaotavad üks-ühese interpreteeritavuse); sõltumatsu arvutuskeskkonnast (programmeerimiskeelest, OS-ist, arvuti tüübist); dokumentatsioon; atesteerimine (STEP protsessorid tuleb enne kasutusele vöttu kontrollida) Andmekaevandamise algoritmid: Segmenteerimine; otsustuspuud; närvivõrgud; klasteranalüüs; regressioon analüüs. Turingi test on Alan Turingi poolt välja pakutud eksperiment otsustamaks, kas arvuti suudab mõelda. Tehisintellekti osad teadmusbaas; järeldusmehhanism; kasutajaliides; omandamis / õppimiskomponent;
Lisaks lihttüüpidele on programmeerimiskeeltes keerulisemaid andmetüüpe, mida nimetatakse STRUKTUURSETEKS TÜÜPIDEKS. Paljudes keeltes on algselt defineeritud selliseks struktuurseks tüübiks sümbolite jada, mida nimetatakse ka STRINGIKS. Väärtus Nagu ka eelnevalt sai mainitud, võib iga arvutis olev andmeobjekt sõltuvalt tema tüübist kanda mingisugust informatsiooni. Öeldakse, et andmeobjekt võib omada mingisugust lõplikku hulka VÄÄRTUSI. Sõltuvalt programmeerimiskeelest võib see väärtuste hulk olla erinev. Konstant Programmeerimiskeeltes jagatakse andmeobjekte teatud tunnuse järgi kaheks - konstantideks ja muutujateks. KONSTANT on andmeobjekt, mille väärtust programmi täitmise käigus muuta ei saa. Muutuja MUUTUJA on andmeobjekt, mille väärtus võib programmi täitmise käigus muutuda. AVALDIS on väärtuse leidmise eeskiri, mis moodustatakse operandidest ja operaatoritest ning nende grupeerimiseks kasutatakse sulgusid. Aritmeetiline avaldis
väljendatakse dünaamika diagrammidega). Klassidiagrammi klassi saab otseselt realiseerida objektorienteeritud programmeerimiskeeles (n. Java,C++,..), mis toetab klassi konstruktsiooni. Klassidiagramm esitab ainult klasse, kuid eksisteerib ka objektidiagramm, kus näidatakse klasside objektieksemplare. Nimi Atribuudid Operatsioonid Joonis 2. Klass UML-is. Klass joonistatakse ristkülikuna, mis on jagatud kolme ossa. Neis kasutatav süntaks on programmeerimiskeelest sõltumatu. Kuidas leida klasse ? Klasside identifitseerimine on loominguline tegevus, mida tehakse koostöös probleemvaldkonna ekspertidega. Klassid tulenevad meie arusaamisest antud probleemvaldkonnast ning selle järgi peavad klaasid saama ka oma nime. Klasside ülesleidmisel võib abiks olla objektide üldine liigitus: Käegakatsutavad (füüsilised) objektid: isik, auto, maja,.. Rollid: tudeng, õppejõud Sündmusobjektid (ühe ajaparameetriga): eksam (algusaeg)
SÜMBOL. Lisaks lihttüüpidele on programmeerimiskeeltes keerulisemaid andmetüüpe, mida nimetatakse STRUKTUURSETEKS TÜÜPIDEKS. Paljudes keeltes on algselt defineeritud selliseks struktuurseks tüübiks sümbolite jada, mida nimetatakse ka STRINGIKS. Väärtus Nagu ka eelnevalt sai mainitud, võib iga arvutis olev andmeobjekt sõltuvalt tema tüübist kanda mingisugust informatsiooni. Öeldakse, et andmeobjekt võib omada mingisugust lõplikku hulka VÄÄRTUSI. Sõltuvalt programmeerimiskeelest võib see väärtuste hulk olla erinev. Selle kursuse raames käsitletavatel keeltel on andmetüübid ja vastavad väärtuste hulgad sarnased. Näiteks täisarvu väärtuseks võib olla arv vahemikus -32768 kuni 32767. Väga paljude ülesannete puhul on see piisav, kuid vajaduse korral on võimalik kasutada ka pikka täisarvu, mille väärtuste vahemik on -2147483648 kuni 2147483647. Näiteks võib programmeerija defineerida uue tüübi, millele ta paneb nimeks INIMESE_PIKKUS
Lisaks lihttüüpidele on programmeerimiskeeltes keerulisemaid andmetüüpe, mida nimetatakse STRUKTUURSETEKS TÜÜPIDEKS. Paljudes keeltes on algselt defineeritud selliseks struktuurseks tüübiks sümbolite jada, mida nimetatakse ka STRINGIKS. Väärtus Nagu ka eelnevalt sai mainitud, võib iga arvutis olev andmeobjekt sõltuvalt tema tüübist kanda mingisugust informatsiooni. Öeldakse, et andmeobjekt võib omada mingisugust lõplikku hulka VÄÄRTUSI. Sõltuvalt programmeerimiskeelest võib see väärtuste hulk olla erinev. Selle kursuse raames käsitletavatel keeltel on andmetüübid ja vastavad väärtuste hulgad sarnased. Näiteks täisarvu väärtuseks võib olla arv vahemikus -32768 kuni 32767. Väga paljude ülesannete puhul on see piisav, kuid vajaduse korral on võimalik kasutada ka pikka täisarvu, mille väärtuste vahemik on -2147483648 kuni 2147483647. Näiteks võib programmeerija defineerida uue tüübi, millele ta paneb nimeks