INŽINERINIŲ SISTEMŲ MODELIAVIMAS VISUAL BASIC APLINKOJE

Size: px
Start display at page:

Download "INŽINERINIŲ SISTEMŲ MODELIAVIMAS VISUAL BASIC APLINKOJE"

Transcription

1

2 ALEKSANDRO STULGINSKIO UNIVERSITETAS Žemės ūkio inžinerijos fakultetas Algirdas Raila, Egidijus Zvicevičius INŽINERINIŲ SISTEMŲ MODELIAVIMAS VISUAL BASIC APLINKOJE Mokomoji knyga AKADEMIJA,

3 UDK 0049(0758) Algirdas Raila, Egidijus Zvicevičius INŽINERINIŲ SISTEMŲ MODELIAVIMAS VISUAL BASIC APLINKOJE Mokomoji knyga Recenzavo: doc. dr. J. Čėsna, Šilumos ir biotechnologijų inžinerijos katedra; lekt. dr. A. Genutis, Profesinės saugos ir inžinerijos vadybos katedra; doc. dr. D. Makutėnienė, Ekonomikos katedra. Aprobuota: Žemės ūkio inžinerijos fakulteto Šilumos ir biotechnologijų inžinerijos katedros 2012 m. birželio 15 d., protokolas Nr. 11/12-18 Žemės ūkio inžinerijos fakulteto Metodinės komisijos 2012 m. birželio 25 d., protokolas Nr. 100 Universiteto metodinės komisijos 2012 m. rugpjūčio 31 d., protokolas Nr. 53 Kalbą redagavo: Laima Jonikienė Maketavo Vita Spūdytė Viršelio dailininkė Danguolė Raudonienė A. Raila, E. Zvicevičius, 2012 Aleksandro Stulginskio universitetas,

4 TURINYS ĮVADAS 5 1. VISUAL BASIC DARBO APLINKA 8 2. OBJEKTAI IR JŲ SAVYBĖS Formos laukas (Form) Įrašo laukas (Label) Teksto laukas (TextBox) Komandų mygtukas (CommandButton) Darbo režimų jungiklis (CheckBox) Darbo režimų pasirinkimo jungiklis (OptionButton) Rėmelis (Frame) Sąrašo laukas (ListBox) Kombinuoto sąrašo laukas (ComboBox) Šliaužiklis (HScrollBar ir VScrollBar) Laikmatis (Timer) PROGRAMAVIMO-MODELIAVIMO PAGRINDAI Veiksmai su objektais Duomenų tipai Kintamieji Masyvai Konstantos Veiksmų operatoriai Sąlygos instrukcija IF...THEN Ciklo instrukcijos Ciklo instrukcija FOR...NEXT Ciklo instrukcija DO...LOOP ALGORITMAS IR ALGORITMŲ SCHEMOS 63 LITERATŪRA 68 1 priedas. Programos Grandinės stiprumo įvertinimas vizualinio modelio langas 69 2 priedas. Programos Grandinės stiprumo įvertinimas vizualinio modelio kodas 70 3 priedas. Programos Kasos aparatas vizualinio modelio langas 74 4 priedas. Programos Kasos aparatas vizualinio modelio kodas 75 4

5 ĮVADAS Įvairūs pavieniai ir į technologines linijas sujungti įrenginiai ar mašinos yra neatsiejama šiuolaikinio gyvenimo dalis. Juose atskiri inžineriniai sprendimai sujungiami į bendrą visumą, suformuojant tam tikras inžinerines sistemas. Viena nuo kitos jos skiriasi teoriniais principais, paskirtimi, funkcinėmis galimybėmis ir kitais bruožais. Tačiau visas inžinerines sistemas vienija sudėtingumas. Tokių sistemų kūrimas tradiciniu būdu, kai gaminami ir išbandomi prototipai, yra brangus ir reikalaujantis daug laiko. Informacinės technologijos leidžia tai padaryti paprasčiau inžinerines sistemas ir atskirus technologinius procesus modeliuoti. Kompiuterinis modelis supaprastina ir paspartina tobulinimo ir tyrimo darbus. Be to, tokiu būdu inžinerines sistemas ar atskirus technologinius procesus galima vizualizuoti, paverčiant juos lengviau suvokiamais, o sukurtus vizualinius modelius panaudoti valdymo procesui (1 pav.). Modeliavimui gali būti naudojamos įvairios priemonės. Viena iš tokių yra Visual Basic programa. Tai viena pirmųjų objektinio programavimo kalbų, kuri ilgainiui ištobulėjo ir šiuo metu leidžia kurti sudėtingus įvairaus pobūdžio modelius, juos susieti su kitomis Windows aplinkos programomis, duomenų bazėmis ir internetiniu tinklu. Kitas neatsiejamas Visual Basic programos bruožas jos paprastumas, kuris net pradedantiems programuotojams leidžia nesunkiai suprasti ir savarankiškai kurti naujas programas bei modelius. Visual Basic objektinio programavimo kalba. Vartotojas, programuodamas inžinerinę sistemą ir kurdamas jos modelį, naudojasi jau sukurtais programos elementais objektais, jų galimybėmis ir tarpusavio ryšiais. Tai palengvina užduotį ir atleidžia vartotoją nuo dalies darbo. Lieka tik pakoreguoti naudojamų objektų savybes, juos suderinti tarpusavyje ir nurodyti reakcijos pobūdį į modelio vartotojo veiksmus. Objektinis programavimas taip pat supaprastina ir yra patogus vizualizuojant inžinerinę sistemą ar technologinį procesą. Galimybė naudoti įrenginių atvaizdus, paveikslėlius, šliaužiklius ir kitas vaizdines priemones leidžia pasiekti puikių rezultatų ir sukurti lengvai suprantamą bei nesudėtingai valdomą modelio langą interfeisą. 5

6 a 1 pav. Technologinio proceso vizualinis modelis: a biomasės džiovinimo proceso valdymo vizualinis modelis; b biodujų jėgainės valdymo vizualinis modelis b Knyga skirta norintiems pramokti programuoti Visual Basic kalba. Tačiau ji yra per maža pateikti išsamų programavimo kalbos aprašymą. Knygos autoriai ir nekėlė sau tokio uždavinio. Tikslas buvo supažindinti inžinerinių sistemų ir technologinių procesų modeliavimą studijuojančius studentus su Visual Basic programavimo kalba, jos ypatumais, išmokyti naudotis pagrindiniais objektais, keisti jų savybes ir išaiškinti programos veikimo logiką. Tai pirmasis žingsnis ugdant programavimo įgūdžius. Leidinį sudaro keturi skyriai, kuriuose, kaip minėta, pateikta svarbiausia informacija apie Visual Basic programą ir programavimomodeliavimo pagrindus. Pirmajame skyriuje Visual Basic darbo aplinka studentai supažindinami su Visual Basic programos aplinka. Pristatomas programos darbo langas ir jo struktūrinės dalys, pagrindinės komandos, jų paskirtis ir valdymas. 6

7 Antrasis skyrius Objektai ir jų savybės skirtas pagrindinėms objektinio programavimo priemonėms objektams pristatyti. Aprašyta vienuolika dažniausiai naudojamų objektų, nurodant jų paskirtį, pagrindines savybes ir tipines reikšmes. Trečiasis skyrius Programavimo pagrindai skirtas trumpai supažindinti su programavimo-modeliavimo proceso pagrindais: dažniausiai naudojamais objektų veiksmais, duomenimis kintamaisiais ir konstantomis, jų tipais, vartojimo būdais, veiksmų operatoriais ir jų hierarchija, sąlygos instrukcija IF...THEN ir ciklais. Lengvesniam informacijos suvokimui ir įsisavinimui skyriuje panaudotos vaizdinės priemonės. Ketvirtajame skyriuje Algoritmas ir algoritmų schemos pasakojama apie grafines-blokines algoritmų schemas, naudojamas sukurtų programų ir modelių struktūrai vaizduoti. Pristatyti algoritmų sudarymo principai ir naudojami grafiniai simboliai. Leidinio pabaigoje pateikiami dviejų skirtingo sudėtingumo Visual Basic kalba sukurtų programų pavyzdžiai: kiekvienos programos formos langas vizualinis programos modelis ir kiekvienos programos kodas. Antroje programoje kodo rašymui buvo panaudotas ne tik formos langas, bet taip pat modulio langas. Knyga skirta Aleksandro Stulginskio universiteto Žemės ūkio inžinerijos fakulteto Biomasės inžinerijos antrosios pakopos studentams, studijuojantiems dalyką Biomasės inžinerijos sistemų modeliavimas ir rengiantiems inžinerinių sistemų arba technologinių procesų virtualius modelius Visual Basic programa. Autoriai nuoširdžiai dėkoja recenzentams doc. dr. Jonui Čėsnai, lekt. dr. Algirdui Genučiui ir redaktorei Laimai Jonikienei už patarimus ir pastabas. 7

8 1. VISUAL BASIC DARBO APLINKA Programa Visual Basic paleidžiama paspaudus programos ikoną arba du kartus spragtelėjus ant pavadinimo instaliuotų programų sąraše. Atsidaro dialogo langas (2 pav.), kuriame pradedantiesiems programuotojams rekomenduojama pasirinkti standartinį Windows lango rengimo būdą ir programos-modelio tipą, ikoną Standard.EXE. Nuspaudžiamas mygtukas Open. 2 pav. Dialogo langas programos-modelio tipui pasirinkti Pasirodo Visual Basic programos darbo langas (3 pav.). Jis suskirstytas į keletą smulkesnių langų, kurie skiriasi funkcine paskirtimi. Valdymo komandų ir mygtukų juosta skirta valdyti Visual Basic programos aplinką ir kuriamą programą-modelį (projektą). Joje galima išskirti penkis struktūrinius elementus: antraštė viršutiniame kairiajame kampe kuriamo modelio pavadinimui pateikti, valdymo komandų (meniu) eilutė, valdymo mygtukų eilutė, formos lango arba objekto koordinačių ir matmenų laukeliai, programos uždarymo, sumažinimo ir išskleidimo mygtukų zona viršutiniame dešiniajame kampe. Valdymo komandų ir mygtukų juostos struktūra ir sudėtis yra paslanki. Kiekvienas programos vartotojas gali ją keisti, pertvarkyti ir pritaikyti savo poreikiams bei įpročiams. Tuo Visual Basic niekuo nesiskiria nuo kitų Windows aplinkoje dirbančių programų. Struktūriniai koregavimai atliekama nuspaudus pelės dešinį mygtuką ir atvertus vietinį valdymo komandų sąrašą arba pasirinkus komandas View Toolbars. 8

9 3 pav. Visual Basic programos darbo langas: 1 valdymo komandų ir mygtukų juosta; 2 objektų juosta; 3 projekto langas; 4 objekto savybių langas; 5 formų maketo langas; 6 programos-modelio kūrimo langas Valdymo komandų (meniu) eilutė. Visos Visual Basic programos aplinkos ir kuriamo modelio valdymui naudojamos komandos yra sugrupuotos į funkcines grupes, jų pavadinimai matomi valdymo komandų eilutėje. Su pele ar klavišais aktyvavus kurį nors pavadinimą, išsiskleidžia atitinkamas komandų sąrašas tolesniam pasirinkimui. Visas komandų grupes ar atskiras komandas galima suskirstyti į pagrindines (dažnai naudojamas) ir pagalbines, su kuriomis susiduriama tik konkrečiais atvejais. Pagrindinių funkcinių komandų grupių paskirtis: File komandos dokumentams (failams) tvarkyti; Edit redagavimui skirtos komandos; View komandos Visual Basic programos langui (aplinkai) tvarkyti ir keisti; Project komandos projektui ir struktūrai kurti bei redaguoti, pavyzdžiui, naujam formos arba modulio langui įkelti ir t. t.; 9

10 Format komandos programos grafiniam vaizdui formuoti, grafiniams elementams tvarkyti; Debug komandos programos tekstui (kodui) derinti, pavyzdžiui, tarpinių kontrolės taškų įvedimas, pakopinis komandų vykdymas ir t. t.; Run komandos projekto aktyvumui Visual Basic aplinkoje valdyti (projektą sužadinti, sustabdyti ir t. t.); Query komandos duomenims tvarkyti ir atrinkti; Diagram komandos grafikams pagal turimus duomenis braižyti ir tvarkyti; Tools komandos darbo aplinkos parametrams nustatyti ir paprogramėms įterpti; Add-Ins komandos Visual Basic galimybėms išplėsti, papildomų programų prijungimui; Windows komandos aktyviems Visual Basic aplinkos langams tvarkyti; Help komandos pagalbai iškviesti. Valdymo mygtukų eilutė. Joje pateikiamos dažniausiai vartojamos komandos. Tai palengvina darbą Visual Basic aplinkoje, nes galima greičiau aktyvuoti pageidaujamą komandą ir išvengiama paieškos procedūros. Paprastai yra matoma standartinės sudėties valdymo mygtukų eilutė (4 pav.). Tačiau vartotojui leidžiama keisti jos struktūrą ir sudėtį ištrinant esamus ir įkeliant naujus mygtukus arba jų grupes. mygtukas su išsiskleidžiančiu sąrašu programos-modelio (projekto) tipui pasirinkti; mygtukas su išsiskleidžiančiu sąrašu naujam programosmodelio langui pasirinkti ir įkelti; mygtukas valdymo komandų (meniu) eilutei kuriamos programos-modelio formos lauke kurti ir redaguoti; mygtukas programai-modeliui atidaryti; 10

11 mygtukas programai-modeliui išsaugoti; mygtukas pažymėtai kodo daliai (objektui) ištrinti ir į tarpinės kaupyklės atmintą įkelti; mygtukas pažymėtai kodo daliai (objektui) į tarpinės kaupyklės atmintį įkelti; mygtukas informacijai iš tarpinės kaupyklės atminties į pažymėtą vietą įkelti; mygtukas nurodytai informacijai ieškoti; mygtukas paskutiniam atliktam veiksmui panaikinti; mygtukas paskutiniam panaikintam veiksmui atkurti; mygtukas programai-modeliui Visual Basic aplinkoje aktyvuoti; mygtukas Visual Basic aplinkoje aktyvuotai programaimodeliui sustabdyti; mygtukas Visual Basic aplinkoje aktyvuotai programaimodeliui išjungti; mygtukas projekto langui atidaryti; mygtukas naudojamų objektų savybių langui atidaryti; mygtukas formos išdėstymo langui atidaryti; mygtukas objektų bibliotekai atidaryti; 11

12 mygtukas objektų juostai atidaryti. 4 pav. Tipinis valdymo mygtukų rinkinys Mygtukų valdymui naudojama pelė. Pelės žymeklį užvedus ant mygtuko, jis tarsi pakyla, išryškėja mygtuko ribos. Netrukus pasirodo aiškinamasis užrašas mygtuku simbolizuojamos komandos pavadinimas, o komandos veiksmas aktyvuojamas spragtelėjus su pele ant mygtuko. Objektų juostoje pateikiamas programų languose naudojamų struktūrinių komponentų rinkinys, iš kurio programuotojas gali pasirinkti objektą ir įterpti į kuriamos programos-modelio formos lauką. Taip kuriamas programos-modelio veidas, jos langas, kartu apsprendžiami būsimo vartotojo naudojimosi programa-modeliu ypatumai. Tipinėje objektų juostoje pateikiami dažniausiai naudojami objektai (5 pav.). Išsamiau kai kurie iš jų bus pristatyti 2 skyriuje. nuspausta rodyklė žymi įjungtą darbo režimą formos lange (Pointer); mygtukas grafinio vaizdo laukui kurti (PictureBox); mygtukas įrašo laukui kurti (Label); mygtukas teksto laukui kurti (TextBox); mygtukas rėmeliui kurti (Frame); mygtukas komandų mygtukui kurti (CommandButton); mygtukas darbo režimų jungikliui kurti (CheckBox); mygtukas darbo režimų pasirinkimo jungikliui kurti (OptionButton); 12

13 mygtukas kombinuoto sąrašo laukui kurti (ComboBox); mygtukas sąrašo laukui kurti (ListBox); mygtukas horizontaliam šliaužikliui kurti (HScrollBar); mygtukas vertikaliam šliaužikliui kurti (VScrollBar); mygtukas laikmačiui kurti (Timer); mygtukas kaupiklių sąrašui kurti (DriveListBox); mygtukas katalogų sąrašui kurti (DirListBox); mygtukas dokumentų (failų) sąrašui kurti (FileListBox); mygtukas geometrinių figūrų piešimo formos lauke režimui įjungti (Shape); mygtukas tiesės piešimo formos lauke režimui įjungti (Line); mygtukas paveikslėlio laukui kurti (Image); mygtukas programos sujungimo su duomenų baze laukui kurti (Data); mygtukas programos ryšio laukui su kitomis programomis kurti (OLE). 5 pav. Tipinis pateikiamų objektų rinkinys Įtraukiant naujus komponentus, objektų rinkinį programuotojas gali išplėsti. Papildomi objektai įterpiami naudojant komandas Project Components. Atsivėrusio dialogo lango skyriaus Controls sąraše pažymimi reikiamų objektų pavadinimai ir paspaudžiamas mygtukas OK. 13

14 Programos-modelio kūrimo langas sudarytas iš dviejų dalių: programos kodo lauko ir formos lauko. Formos laukas skirtas programos langui programos matomai daliai, kurti. Į jį įkeliami visi programuoto iš objektų juostos pasirinkti objektai. Objektui į formos lauką įterpti naudojami du būdai: pele objektų juostoje pažymimas pasirinkto objekto atvaizdas. Tuomet pelės žymeklis perstumiamas ant formos lauko ir, nuspaudus kairįjį pelės mygtuką, brėžiami būsimo objekto kontūrai. Atleidus pelės mygtuką, formos lauke pasirodo naujas objektas, o formoje naudojamų objektų sąraše naujas pavadinimas; du kartus pele spragtelėjus ant pasirinkto objekto atvaizdo objektų juostoje. Viduryje formos lauko automatiškai atsiranda naujas objektas, o formoje naudojamų objektų sąraše naujas pavadinimas. Įkeltą objektą pele galima patraukti į kitą formos lauko vietą, sumažinti arba padidinti. Du kartus pele spragtelėjus ant formos lauko, bet kokio į formos lauką įkelto objekto arba pasinaudojus komandomis View Code, pasirodo kodo laukas (6 pav.). Jame rašomas programos-modelio kodas, pagal kurį privalės dirbti aktyvuota programa ar modelis. Tai svarbiausia Visual Basic darbo aplinkos vieta. Kodo lauke sugaištama daugiausia laiko kuriant ir derinant naują programą ar modelį. 6 pav. Programos-modelio kodo laukas Kodo lauko antraštėje pateikiamas užrašas su formos lauko pavadinimu, o šiek tiek žemiau du išskleidžiami sąrašai. Pirmasis, kairėje pusėje, skirtas į formos lauką įkeltų objektų sąrašui, kurį išskleidus ma- 14

15 tomi objektų pavadinimai. Tarp jų kaip atskiri objektai taip pat įtraukta forma ir kodo lauko sritis General. Bet kokia informacija, pavyzdžiui, kintamaisiais, paskelbtais srityje General, galės naudotis visi formos lauko objektai. Jų nereikės aprašyti kiekviename objekte atskirai. Antrajame sąraše dešinėje kodo lauko pusėje pateikiamas veiksmų arba įvykių (žr skyrių) sąrašas. Jis nėra vienodas visiems objektų tipams, todėl, pasirinkus konkretų objektą pirmajame sąraše, kaskart yra pertvarkomas. Pažymėjus pageidaujamą veiksmą, atverčiama tam tikra programos-modelio kodo sritis ir kodo rašymo lauke pasirodo jos pradžia bei pabaiga. Tarp šių dviejų eilučių rašomas programosmodelio kodas. Programuotojas nurodo, kaip aktyvuota programamodelis privalo sureaguoti į atliktą programos-modelio vartotojo veiksmą. Su tuo pačiu objektu gali būti atliekamas ne vienas veiksmas. Kodo rašymo lauke yra aprašomos reakcijos į kiekvieną iš jų. Visuma šių reakcijų sudaro programos-modelio kodą. Kodo lauke taip pat yra keli pagalbiniai valdymo mygtukai: kodo lauko sumažinimo, išskleidimo ir uždarymo mygtukai viršutiniame dešiniajame kampe ir du mygtukai apatiniame kairiajame lauko kampe. Pastarieji lemia tai, ką programuotojas mato kodo rašymo lange: visą programos-modelio kodą kaip vientisą tekstą ar dalimis, suskaidytą pagal objektus ir veiksmus. Visiems Visual Basic programoje naudojamiems objektams: formos langui, komandų mygtukams ir kitiems, kurie vartojami kuriant programos-modelio langą, yra būdingos tam tikros savybės. Dalis jų pasikartoja ir yra būdingos visiems arba daugeliui skirtingų objektų, dalis tik konkrečiam objektui. Nuo suteiktų savybių priklauso objektų išvaizda, atliekamos funkcijos ir reakcija į veiksmus. Net tos pačios rūšies objektams, esantiems viename formos lauke, gali būti suteikiamos skirtingos savybės. Objektų savybių sąrašai pateikiami objekto savybių (parametrų) lange (7 pav.). 15

16 7 pav. Objekto pavadinimu btnstart (komandų mygtukas) savybių langas Objekto savybių langą sudaro antraštė su aktyvuoto objekto pavadinimu, atsidarantis naudojamų objektų sąrašas, informacinis laukelis ir savybių sąrašas, kuriame pateikiamos konkretaus tuo metu aktyvuoto objekto savybės. Jos išdėstomos abėcėlės tvarka (Alphabetic) arba pagal paskirtį (Categorized). Aktyvuoto objekto vardas yra matomas objekto savybių lauko antraštėje ir objektų sąraše. Naujas objektas gali būti aktyvuojamas pažymėjus jį objektų sąraše arba spragtelėjus ant jo formos lauke. Kartu su savybėmis antrame savybių sąrašo stulpelyje nurodomos galimos jų reikšmės. Tai gali būti fiksuotų variantų sąrašas, loginės reikšmės ( True arba False ). Tačiau taip pat yra savybių, kurioms programuotojas turi suteikti tekstinę arba skaitinę reikšmę, nurodyti konkretų dokumentą (failą), pavyzdžiui, komandų mygtuką iliustruojančio paveiksliuko dokumentą. Konkretesnė informacija apie pagrindinių objektų kai kurias savybes skaitykite 2 skyriuje. Darbui su objektų savybėmis palengvinti apačioje informaciniame laukelyje taip pat pateikiama trumpa informacija apie pažymėtą sąraše objekto savybę. Projekto lange pateikiamas sukurtą programą-modelį sudarančių dokumentų (failų) sąrašas. Kiekvienas formos langas, modulis ir kiti struktūriniai elementai, kurie naudojami programoje, išsaugant programą įrašomi skirtingais dokumentais. Pavyzdžiui, informacija apie formos langą ir jame surašytą programos-modelio kodą saugoma doku- 16

17 mente su plėtiniu *.frm, informacija apie modulyje surašytą programos kodą dokumente su plėtiniu *bas ir t. t. Visų jų sąrašas matomas projekto lange. Taigi, projekto lange pateikiama programos sandara. Jame visi dokumentai sujungiami į vieną visumą ir ši informacija apie programos sudėtį saugoma atskirame dokumente su plėtiniu *.vbp. Naudojantis projekto langu programuotojui labai patogu tvarkyti dokumentus: juos pašalinti, įterpti, taip pat judėti kuriamoje programoje, pereiti iš vienos formos lango į kitą ir panašiai. Tai ypač aktualu, kai dirbama su didelėmis programomis. Formų maketo lange pateikiama formos, kuri duotu metu yra aktyvi, lango padėtis monitoriaus ekrane paleidus programą ar modelį. Programuotojas taip pat gali įvertinti, kokia dalis ekrano bus užimta. Be to, su pele galima keisti virtualiame monitoriuje vaizduojamo programos-modelio lango padėtį ir ją parinkti rankiniu būdu. Automatiškai pasikeis formos lauko koordinates ekrane nusakančių savybių (Left ir Top) reikšmės. Aktyvavus pagalbines programas, Visual Basic aplinkoje gali būti daugiau struktūrinių elementų (juostų ir laukų) nei buvo pristatyta. Tai pagalbiniai langai: Immediate Window betarpiško komandų vykdymo langas; Locals Window kintamųjų ir parametrų būsenos langas; Watch Window pasirinktų kintamųjų stebėjimo langas. Visi jie automatiškai susiformuojami Visual Basic darbo lango apačioje. Tačiau jų padėtis nėra fiksuota ir gali būti keičiama pertraukiant langą pele į kitą vietą. 17

18 2. OBJEKTAI IR JŲ SAVYBĖS Dirbant su objektinio programavimo programomis naudojami standartiniai objektai: formos laukai (Form), modulio laukai (Module), komandų mygtukai (CommandButton), įrašo laukai (Label), teksto laukai (TextBox), darbo režimų pasirinkimo jungikliai (OptionButton), kombinuoti sąrašai (ComboBox) ir kiti. Programuotojui lieka tik patikslinti jų savybes ir pritaikyti kuriamos programos ar modelio poreikiams. Visos konkretaus objekto savybės pateikiamos objekto savybių lange. Dalis jų kartojasi arba yra panašios ir sutinkamos skirtingų objektų savybių sąrašuose, pavyzdžiui: Name objekto pavadinimas, kuriuo į jį kreipiamasi rašant komandas ir pagal kurį programa atpažįsta skirtingus objektus; Font tekstinės informacijos pateikimo nustatymai. Atsidariusiame lange programuotojui iš sąrašo leidžiama pasirinkti į objektą įrašomo teksto šriftą, jo stilių, dydį ir kitus parametrus. Keičiant šiuos parametrus programiškai, naudojamos standartinės komandos: FontName, FontSize, FontBold, FontItalic, FondStrikethru, FontUnderline. Joms suteikiama reikšmė True arba False, išskyrus dviems pirmoms komandoms, kai būtina konkrečiai nurodyti pageidaujama šrifto tipą ir dydį; ForeColor ir BackColor atitinkamai į objektą įrašyto teksto ir fono (objektu apibrėžto plotelio) spalvos. Objekte rėmelis (Frame) savybė ForeColor taip pat lemia rėmelio linijos spalvą, o objektų komandų mygtukas (CommandButton), šliaužiklis (HScrollBar ir VScrollBar) ir laikmatis (Timer) apibūdinimui ji apskritai nenaudojama; Left ir Top objekto viršutinio kairiojo kampo padėtis formos lauke (Form) (8 pav.). Atstumai matuojami pikseliais (1 pikselis yra lygus 0,0018 cm) ir skaičiuojami nuo viršutinio kairiojo formos lauko kampo, kuriame yra formos lauko koordinačių centras. Koordinačių ašys nukreiptos iš kairės į dešinę ir iš viršaus žemyn. Savybėmis Left ir Top nurodomos ir fiksuojamos objektų padėtys formos lauke. Šios savybės taip pat naudojamos programos lango padėčiai monitoriaus ekrane fiksuoti (apie tai bus rašoma vėliau); 18

19 Height ir Width objekto aukštis ir plotis pikseliais (1 pikselis yra lygus 0,0018 cm) (8 pav.). Savybės naudojamos formos lauko ir kitų objektų dydžiui apibrėžti ir jam keisti. Išimtį sudaro objektas laikmatis (Timer), kuriam savybės Height ir Width yra neaktualios ir į savybių sąrašą neįtrauktos; TabIndex objektų aktyvavimo, naudojant klavišą Tab, eiliškumas. Savybei gali būti suteikiama bet kokia neneigiama skaitinė reikšmė. Be to, ji negali kartotis, jei objektai yra tame pačiame formos lauke. Objektas, kurio savybei TabIndex suteikiama reikšmė 0, aktyvuojamas iškart paleidus programą. Paspaudus klavišą Tab, kaskart aktyvuojamas naujas objektas su didesne savybės TabIndex reikšme; 8 pav. Objekto padėties fiksavimas formos lauke TabStop objekto reakcija į klavišo Tab paspaudimą. Pageidaujant išbraukti objektą iš klavišu Tab aktyvuojamų objektų eilės, savybei TabStop parenkama reikšmė False. Objektas elgsis priešingai ir reaguos į veiksmus su klavišu Tab, jei bus nustatyta savybės reikšmė True. Kai kurios objektų savybės yra specifinės ir būdingos tik tam tikriems objektams. Todėl šiame skyriuje bus apžvelgti dažniausiai naudojami objektai, jų paskirtis ir svarbiausios savybės. 19

20 2.1. Formos laukas (Form) Paskirtis vieta programos matomai daliai programos langui, jos vizualiniam modeliui, kurti (9 pav.). Jame pateikiami komandų mygtukai, jungikliai, įrašo laukai, valdymo juostos ir kiti objektai, t. y. formos lauke sukuriamas vaizdas, kurį mato programa besinaudojantis vartotojas. Kiekvienas formos laukas, o jų programoje gali būti ne vienas, išsaugomas projekte atskiru dokumentu su plėtiniu *.frm. Šiame dokumente įrašoma informacija apie formos ir joje esančių kitų objektų savybes, darbo aplinką ir su jais susijusį programos kodą. 9 pav. Mygtukas formos laukui (Form) kurti Formos lauko (Form) savybės: BorderStyle sukurtos programos ar modelio lango tipas. Ši savybė lemia tai, kokį langą vartotojas matys dirbdamas su programa ar modeliu. Tačiau ji neturi jokios įtakos formos lauko išvaizdai ir gali būti keičiama tik kuriant programą. Pasirenkama viena iš šešių savybės BorderStyle reikšmių: 0 None fiksuoto dydžio ir padėties (neleidžiama patraukti į kitą vietą) programos langas vaizduojamas be rėmelio, antraštės, sumažinimo ir išskleidimo mygtukų; 1 Fixed Single programos langas įrėmintas viengubu rėmeliu, yra fiksuoto dydžio ir programos vartotojas negali jo keisti, tačiau vartotojui leidžiama langą sumažinti ir išskleisti; 2 Sizable (suteikiama pagal nutylėjimą) dvigubu rėmeliu įrėmintas įprastas langas su neapribota galimybe keisti jo padėtį, matmenis, sumažinti ir išskleisti; 3 Fixed Dialog dvigubu rėmeliu įrėmintas fiksuoto dydžio langas be sumažinimo bei išskleidimo mygtukų viršutiniame dešiniajame kampe (naudojamas dialogo langams kurti); 4 Fixed Tool Window fiksuoto dydžio langas su sumažinta antraštine eilute (naudojamas mygtukų ir kitų priemonių juostoms kurti); 5 Sizable Tool Window keičiamų matmenų langas su sumažinta antraštine eilute (taip pat naudojamas mygtukų ir kitų priemonių juostoms kurti); Caption formos lauko užrašas, kuris pateikiamas antraštinėje lango eilutėje; 20

21 ControlBox sisteminio valdymo komandų sąrašo (meniu) aktyvumas. Jai gali būti suteikta reikšmė True arba False, kuri lems, ar bus leidžiama atidaryti vietinį valdymo komandų sąrašą spragtelėjus pele viršutiniame kairiajame lango kampe ir ar bus matomas programos uždarymo ženkliukas viršutiniame dešiniajame lango kampe. Savybė ControlBox gali būti keičiama tik programavimo metu ir tik tada, jei pasirinktas lango tipas (savybė BorderStyle) yra ne 0 None ; Enabled formos lango aktyvumo būklė. Savybės reikšmė True lems tai, kad programos langas bus aktyvus ir vartotojas galės dirbti su jame esančiais objektais. Suteikus savybei reikšmę False, programos langas taps neaktyviu ir nereaguos į jokius veiksmus pele arba klaviatūra, bet vartotojas jį matys; MaxButton ir MinButton mygtukų programos langui sumažinti (minimalizuoti) arba išskleisti (maksimalizuoti) viršutiniame dešiniajame jo kampe egzistavimas. Savybė gali įgyti dvi reikšmes: True mygtukai egzistuos ir bus aktyvūs ir False mygtukai bus nematomi arba neaktyvūs. Naudojant lango tipus (savybė BorderStyle) 0 None, 3 Fixed Dialog, 4 Fixed Tool Window arba 5 Sizable Tool Window, pastarosios savybės yra nereikšmingos ir ignoruojamos; Top ir Left programos lango viršutinio kairio kampo padėtis ekrane. Šios savybės naudojamos programos lango, kuris pasirodo įjungus programą, padėčiai ekrane nurodyti, taip pat jai keisti. Koordinačių ašys monitoriaus ekrane nuo viršutinio kairio kampo nukreiptos iš kairės į dešinę ir iš viršaus žemyn, o atstumai matuojami pikseliais (1 pikselis yra lygus 0,0018 cm); Visible programos lango vizuali būsena. Pasirinkus savybės reikšmę True ir įjungus programą, jos langas yra matomas, o pasirinkus reikšmę False nematomas. Matomu jį galima paversti programiškai, pavyzdžiui, iš kito matomo programos lango, su kuriuo tuo metu dirba vartotojas; WindowState lango būklė monitoriaus ekrane įjungus programą ar modelį. Programuotojui leidžiama pasirinkti vieną iš trijų savybės reikšmių: 0 Normal (bus matomas sukurto dydžio atida- 21

22 rytas programos langas), 1 Minimazed (bus matomas sumažintas langas, jo piktograma, apatinėje monitoriaus ekrano valdymo juostoje) arba 2 Maximazed (bus matomas per visą monitoriaus ekraną išskleistas programos langas) Įrašo laukas (Label) Paskirtis įrašo laukas trumpai tekstinei informacijai pateikti (10 pav.). Paprastai naudojamas įvedimo ar išvedimo laukelių pavadinimams, kitų komentarų užrašams programos ar modelio formoje įrašyti. Svarbiausias skiriamasis bruožas yra tai, kad įrašo laukelyje pateiktą tekstinę informaciją programos vartotojas negali keisti ar ištrinti. 10 pav. Mygtukas objektui įrašo laukui (Label) kurti Įrašo lauko (Label) savybės: Alignment nurodomas teksto pateikimo būdas įrašų lauke, centravimas. Pagal nutylėjimą suteikiama reikšmė 0 Left Justify, kuri reiškia, kad tekstas centruojamas pagal kairiąją kraštinę. Kitos reikšmės: 1 Right Justify centruojama pagal dešiniąją kraštinę ir 2 Center tekstas centruojamas pagal įrašo lauko centrą; AutoSize automatinė įrašo lauko matmenų korekcija pagal įvestą tekstinę informaciją. Savybei gali būti suteiktos dvi reikšmės: True savybė aktyvuota ir lauko dydis automatiškai pritaikomas savybėje Caption nurodytam tekstui pateikti, False savybė neaktyvuota ir įrašo lauko dydis išlieka toks, koks buvo nustatytas objektą įkeliant į formos lauką, netelpanti teksto dalis nevaizduojama; BackStyle įrašo lauko fono būsena. Ji gali būti permatoma ( 0 Transparent ) ir nepermatoma ( 1 Opaque ). Antruoju atveju įrašo lauko fono spalvą lems objekto savybės BackColor reikšmė (pasirinkta spalva), o pirmuoju atveju formos lauko (Form) arba rėmelio (Frame) savybės BackColor reikšmė; BorderStyle įrašo lauko rėmelio tipas: 0 None įrašo laukas be rėmelio, ši savybė suteikiama objektui pagal nutylėjimą, 1 Fixed Single įrašų laukas apvedamas vienguba linija; 22

23 Caption įrašo lauke pateikiamas tekstas. Su šia savybe į įrašo lauką galima įkelti tekstinę informaciją, ją nuskaityti arba redaguoti; Enabled nurodoma objekto būklė. Pagal nutylėjimą objektui suteikiama reikšmė True įrašo laukas yra ryškus. Taip pat gali būti suteikta reikšmė False, tokiu atveju laukas ir įrašas jame yra matomas, bet blankus, t. y. objektas neaktyvus; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Teksto laukas (TextBox) Paskirtis įrašo laukas tekstinei informacijai įvesti ir pateikti (11 pav.). Priešingai nei įrašo lauke (Label), čia pateiktą informaciją programos ar modelio vartotojas gali keisti, koreguoti arba įrašyti. Taip pat gali būti naudojamas tiek trumpai, tiek ilgai informacijai talpinti. Šiuo objektu programos-modelio formos lauke arba ekrane išskiriama sritis darbui su tekstu ir tekstine informacija. 11 pav. Mygtukas objektui teksto laukas (TextBox) kurti Teksto lauko (TextBox) savybės: Alignment nurodomas teksto pateikimo būdas, centravimas. Pagal nutylėjimą suteikiama reikšmė 0 Left Justify, kuri reiškia, kad tekstas centruojamas pagal kairiąją kraštinę. Kitos reikšmės: 1 Right Justify centruojama pagal dešiniąją kraštinę ir 2 Center tekstas centruojamas pagal teksto lauko centrą; BorderStyle įrašo lauko rėmelio tipas. Pasirinkus reikšmę 1 Fixed Single objektas vaizduojamas apvestas vienguba linija, o pasirinkus reikšmę 0 None teksto laukas vaizduojamas be rėmelio; Enabled nurodoma objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos ar modelio vartotojo veiksmus. Pasirinkus savybės reikšmę False objektas yra matomas, bet blyškus ir neaktyvus. Jis nereaguoja į vartotojo veiksmus; Locked teksto lauko ir jame pateiktos informacijos apsauga. Programa automatiškai šiai savybei suteikia reikšmę False ir ją deakty- 23

24 vuoja. Programuotojui suteikus reikšmę True, apribojamos programos ar modelio vartotojo galimybės dirbti su objektu. Teksto lauke gali būti pateikiama informacija, tačiau vartotojui neleidžiama ją keisti, redaguoti arba įvesti; MaxLenght tekstinės informacijos įrašo ilgis simboliais. Šiai savybei gali būti suteikiama reikšmė 0 arba bet koks teigiamas skaičius. Įrašius reikšmę 0, kuri suteikiama pagal nutylėjimą, tekstinio įrašo ilgis neribojamas ir į įrašo lauką galima įvesti bet kokį skaičių simbolių. Bet kokia kita savybės reikšmė, nelygi 0, riboja tekstinės informacijos ilgį iki nurodyto simbolių skaičiaus; MultiLine įrašo eilučių skaičius tekstiniame lauke. Pagal nutylėjimą savybei suteikiama reikšmė False, pagal kurią visa tekstinė informacija lauke talpinama tik į vieną eilutę. Nustačius savybės reikšmę True, leidžiama įrašo lauke tekstinę informaciją pateikti skirtingose eilutėse. Į naują eilutę pereinama paspaudus klavišą Enter. Eilučių skaičius yra nenormuojamas. Jei su įvedama tekstine informacija viršijamas įrašo lauko aukštis, kairėje lauko pusėje automatiškai atsiranda vertikalus šliaužiklis matomos informacijos daliai keisti; PasswordChard įvedamos tekstinės informacijos kodavimas. Ši įrašo lauko savybė naudojama tuomet, kai kuriamas slaptažodžio įvedimo laukelis ir nepageidaujama, kad įvedama tekstą nematytų aplinkiniai. Pagal nutylėjimą šiai savybei nesuteikiama jokia reikšmė, vaizduojama tuščia eilutė. Įvedamo teksto kodavimas neaktyvuotas ir įrašo lauke vaizduojami klaviatūroje spaudžiami simboliai. Tačiau, objekto savybės įvedimo lauke įrašius bet kokį simbolį, pavyzdžiui, žvaigždutę *, tekstinės informacijos turinys atitiks įvestos informacijos turinį, bet visi į įrašo lauką įvedami simboliai bus koduoti nurodytu simboliu, matysime tik žvaigždutes; ScrollBars šliaužiklio naudojimas įrašo lauke. Savybei gali būti suteikiamos keturios reikšmės: reikšmė 0 None įrašo laukas bus vaizduojamas be šliaužiklių, reikšmė 1 Horizontal įrašo laukas vaizduojamas su horizontaliu šliaužikliu, reikšmė 2 Vertical įrašo laukas vaizduojamas su vertikaliu šliaužikliu, reikšmė 3 Both įrašo laukas vaizduojamas su horizontaliu 24

25 ir vertikaliu šliaužikliu. Tačiau teksto laukas su šliaužikliais pasirodys tik tada, jei savybei MultiLine bus suteikta reikšmė True ; Text įrašo lauke pateikiama tekstinė informacija. Su šia savybe į įrašo lauką galima įkelti tekstinę informaciją, ją nuskaityti arba redaguoti; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Komandų mygtukas (CommandButton) Paskirtis veiksmų vykdymo aktyvavimas ir programos ar modelio valdymas (12 pav.). 12 pav. Mygtukas objektui komandų mygtukas (CommandButton) kurti Komandų mygtuko (CommandButton) savybės: Cancel reakcija į klavišo Esc paspaudimą. Ši savybė būdinga tik komandų mygtukams. Jai suteikus reikšmę True, komandos mygtuką galima bus aktyvuoti tiek palės spragtelėjimu, tiek klavišo Esc klaviatūroje paspaudimu. Nustačius objekto savybės reikšmę False, komandos mygtukas reaguos tik į pelės spragtelėjimą. Būtina atkreipti dėmesį į tai, kad savybei Cancel reikšmė True gali būti suteikta tik vienam komandos mygtukui formos lauke; Caption priskiria reikšmę (pavadinimą) komandų mygtuko užrašui; Enabled nurodoma objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos ar modelio vartotojo veiksmus. Pasirinkus savybės reikšmę False objektas yra matomas, bet blyškus ir neaktyvus. Jis nereaguoja į vartotojo veiksmus; Default reakcija į klavišo Enter paspaudimą. Kaip ir prieš tai nagrinėta savybė, Default savybė būdinga tik komandų mygtukams: reikšmė True lems tai, kad komandos mygtuką galima bus aktyvuoti tiek pelės spragtelėjimu, tiek klavišo Enter klaviatūroje paspaudimu, o reikšmė False tik pelės spragtelėjimu. Taip pat būtina atkreipti dėmesį, kad formos lange tik vieno komandos mygtuko savybei Default gali būti suteikta reikšmė True ; 25

26 Style komandų mygtuko stilius. Pagal nutylėjimą savybei suteikiama reikšmė 0 Standard. Formos lauke bus matomas įprastas mygtuko vaizdas su rėmeliu ir užrašu. Savybės reikšmė 1 Graphical pasirenkama tuomet, kai pageidaujama mygtuką iliustruoti grafiniu vaizdu ar nuotrauka. Bus matomas iliustruotas mygtukas su rėmeliu ir užrašu. Grafinis vaizdas arba nuotrauka, kuriais pageidaujama iliustruoti mygtuką, nurodomi objekto savybėje Picture; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Darbo režimų jungiklis (CheckBox) Paskirtis priemonė programos, modelio arba objekto funkcijoms-parametrams nustatyti ir keisti (13 pav.). Dirbdamas su programa ar modeliu, vartotojas gali mechaniškai redaguoti darbo režimų jungiklių žymėjimus, kartu programos arba objekto funkcijas ir parametrus. Programos ar modelio formos lauke naudojamų darbo režimo jungiklių kiekis neribojamas. Jei programuotojas nenurodo kitaip, visi jie veikia kaip autonominiai objektai. Jų žymėjimo galimybės nepriklauso nuo kitų programos formoje naudojamų darbo režimų jungiklių žymėjimo. 13 pav. Mygtukas objektui darbo režimų jungiklis (CheckBox) kurti Darbo režimų jungiklio (CheckBox) savybės: Alignment tekstinės informacijos pateikimo būdas įrašų laukelyje, centravimas. Jungiklio įrašo laukelyje tekstinė informacija gali būti centruojama pagal kairiąją ( 0 Left Justify ) arba dešiniąją ( 1 Right Justify ) kraštinę; Caption priskiria reikšmę (pavadinimą) darbo režimų jungiklio užrašui; Enabled objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos vartotojo veiksmus. Pasirinkus savybės reikšmę False objektas yra matomas, bet blyškus, neaktyvus ir nereaguoja į vartotojo veiksmus; Value darbo režimų jungiklio būsena. Šiai darbo režimų jungiklių savybei gali būti suteikiamos trys reikšmės: nurodžius reikšmę 0 Unchecked, programos formoje jungiklis bus vaizduojamas ne- 26

27 pažymėtas, nurodžius reikšmę 1 Checked pažymėtas ir nurodžius reikšmę 2 Grayed blyškus, bet vartotojui su juo dirbti leidžiama. Vartotojas jungiklį gali pažymėti arba nuimti pažymėjimą; Style darbo režimų jungiklio atvaizdavimo būdas. Nustačius reikšme 0 Standard, bus matomas įprastas jungiklio vaizdas su varnelės žymėjimo laukeliu ir pavadinimu, o pasirinkus reikšmę 1 Graphical, žymėjimo laukelis išnyksta ir programuotojui leidžiama panaudoti grafinį vaizdą jungikliui iliustruoti. Grafinis vaizdas, kuriuo pageidaujama iliustruoti jungiklį, nurodomas objekto savybėje Picture. Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Darbo režimų pasirinkimo jungiklis (OptionButton) Paskirtis priemonė programos, modelio arba objekto funkcijomsparametrams nustatyti ir keisti (14 pav.). Šis objektas labai panašus į prieš tai aprašytą darbo režimų jungiklį CheckBox. Jų kiekis programos formos lauke taip pat neribojamas. Tačiau priešingai nei darbo režimų jungikliai CheckBox, darbo režimų pasirinkimo jungikliai OptionButton funkcionuoja grupėje. Iš visų formoje pateiktų arba į grupę sujungtų (žr. 2.7 skyrių) darbo režimo pasirinkimo jungiklių galima pažymėti tik vieną. Kiti jungikliai būtinai bus nepažymėti. Šiuo objektu iš nurodytų variantų grupės vartotojui leidžiama pasirinkti tik vieną variantą. 14 pav. Mygtukas objektui darbo režimų pasirinkimo jungiklis (OptionButton) kurti Darbo režimų pasirinkimo jungiklio (OptionButton) savybės: Caption priskiria reikšmę (pavadinimą) darbo režimų pasirinkimo jungiklio užrašui; Alignment tekstinės informacijos pateikimo būdas įrašų laukelyje, centravimas. Jungiklio įrašo laukelyje tekstinė informacija gali būti centruojama pagal kairiąją ( 0 Left Justify ) arba dešiniąją ( 1 Right Justify ) kraštinę; 27

28 Enabled objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos ar modelio vartotojo veiksmus. Pasirinkus savybes reikšmę False objektas yra matomas, bet blyškus, neaktyvus ir nereaguoja į vartotojo veiksmus; Value darbo režimų pasirinkimo jungiklio būsena. Suteikus objekto savybei reikšmę True, darbo režimų pasirinkimo jungiklis bus pažymėtas, jo centre matysime juodą tašką. Nustačius savybės reikšmę False, programos ar modelio formoje objektas bus vaizduojamas nepažymėtas; Style darbo režimų pasirinkimo jungiklio atvaizdavimo būdas. Ji yra analogiška to paties pavadinimo darbo režimų jungiklio CheckBox savybei: pasirinkus reikšmę 0 Standard, matomas įprastas jungiklio vaizdas su žymėjimo laukeliu ir pavadinimu, o pasirinkus reikšmę 1 Graphical žymėjimo laukelis išnyksta ir programuotojui leidžiama panaudoti grafinį vaizdą jungikliui iliustruoti. Grafinis vaizdas, kuriuo pageidaujama iliustruoti jungiklį, nurodomas objekto savybėje Picture; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Rėmelis (Frame) Paskirtis išskirti formos lauke atskiras sritis ir suskirstyti naudojamus objektus į grupes (15 pav.). Dažniausiai jis naudojamas kaip vizualinė priemonė kuriant formos programos ar modelio langą, bet taip pat pritaikomas valdant kai kuriuos objektus. Pavyzdžiui, su rėmeliu formos lange esančius darbo režimų pasirinkimo jungiklius Option- Button galima suskirstyti į grupes. Tuomet programa vartotojui leis pažymėti formoje ne vieną darbo režimo pasirinkimo jungiklį, o po vieną jungiklį kiekvienoje tokioje grupėje. 15 pav. Mygtukas objektui rėmelis (Frame) kurti Pageidaujant objektus įterpti į rėmelį, negalima naudoti automatinio objekto įkėlimo arba kopijavimo funkcijų. Jis privalo būti nubrėž- 28

29 tas rėmelio apibrėžtame plote ranka valdant pelę. Priešingu atveju programa supras, kad objektas yra už rėmelio ribų ir su rėmeliu jį nesusies. Rėmelio (Frame) savybės: BorderStyle objekto rėmelio tipas: 0 None objektas vaizduojamas be rėmelio ir antraštinio užrašo objekto viršutiniame kairiajame kampe, 1 Fixed Single objektas apvedamas vienguba linija su antraštiniu užrašu objekto viršutiniame kairiajame kampe. Pastaroji savybės reikšmė suteikiama objektui pagal nutylėjimą; Caption priskiria reikšmę (pavadinimą) rėmelio užrašui, kuris matomas objekto viršutiniame kairiajame kampe; Enabled objekto būklė. Rėmelį ši savybė veikia kitaip nei kitus objektus. Pagal nutylėjimą rėmelio savybei Enabled suteikiama reikšmė True : rėmelis ir visi jame esantys objektai yra aktyvūs. Nustačius savybės reikšmę False, rėmelis tampa blyškiu ir neaktyviu. Tuo pačiu neaktyviais tampa visi objektai rėmelyje, tačiau jų užrašai išlieka ryškūs. Visible darbo objekto vizuali būsena (objektas yra matomas ar nematomas). Objekto savybei leidžiama suteikti reikšmę False arba True. Pastaroji lems tai, kad rėmelis arba juo išskirtas formos lango plotas bus matomas. Nustačius savybės reikšmę False, rėmelis kartu su visais jame esančiais objektais išnyksta, yra nematomi Sąrašo laukas (ListBox) Paskirtis pateikti sąrašą alternatyvų, iš kurio programos ar modelio vartotojas galėtų pasirinkti pageidaujamą variantą (16 pav.). Rekomenduojama, kad programos ar modulio lange vaizduojamas sąrašas apimtų ne mažiau kaip tris sąrašo eilutes. Tuomet darbas su objektu bus patogesnis, o estetinis objekto vaizdas priimtinesnis. Esant didesniam sąrašo variantų sąrašo elementų, skaičiui, dešinėje objekto pusėje automatiškai atsiranda vertikalus šliaužiklis, leidžiantis keisti matomą sąrašo dalį. Sąrašo lauko (ListBox) savybės: 16 pav. Mygtukas objektui sąrašo laukas (ListBox) kurti 29

30 Columns įrašo stulpelių skaičius sąraše. Šiai savybei gali būti suteikta bet kokia skaitinė reikšmė. Pagal nutylėjimą ji yra lygi nuliui, t. y. visi sąrašo elementai bus pateikti viename stulpelyje. Suteikus objekto savybei reikšmę didesnę už nulį, objekte taip pat bus suformuotas atitinkamas stulpelių skaičius ir alternatyvų variantai pateikti stulpeliais. Netelpant stulpeliams objekte, apačioje automatiškai atsiranda horizontalus šliaužiklis matomiems stulpeliams keisti; Enabled nurodoma objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos ar modelio vartotojo veiksmus. Pasirinkus savybes reikšmę False objektas yra matomas, bet blyškus, neaktyvus ir nereaguoja į vartotojo veiksmus; List savybė, jungianti sąrašo elementus ir naudojama jų nuskaitymui bei atpažinimui. Ji suprantama kaip masyvas, kurį sudaro sąrašo elementai. Kiekvienas elementas sąraše koduojamas skaičiumi indeksu. Būtina atsiminti, kad sąrašo elementai pradedami numeruoti nuo nulio. Taigi, indeksų seka: 0, 1, 2... ListCount sąrašo dydis. Šios savybės programos vartotojas negali keisti. Ji naudojama tada, kai norima išsiaiškinti sąrašo ilgį arba į sąrašą įtrauktų sąrašo elementų skaičių; ListIndex pažymėto arba išskirto elemento indeksas. Naudojama tada, kai norima išsiaiškinti, kurį sąrašo elementą vartotojas pažymėjo, arba nurodyti programai, kurį sąrašo elementą išskirti. Todėl minėta savybė gali įgyti reikšmę nuo nulio iki bet kokio sveiko skaičiaus. Didžiausia savybei ListIndex suteikiama skaitinė reikšmė negali viršyti į sąrašą įtrauktų elementų skaičiui minus vienas. Jei sąraše nepageidaujama išskirti jokio įrašo sąrašo elemento, savybei suteikiama reikšmė 1 ; MultiSelect sąrašo elementų pažymėjimo arba išskirimo galimybės. Nurodoma, kiek sąrašo elementų galima išskirti vienu metu. Jeigu savybei suteikiama reikšmė 0 None, tuo pačiu metu leidžiama pažymėti arba išskirti tik vieną sąrašo elementą, reikšmė 1 Simple kelis elementus, reikšmė 2 Extended pagreitintai išskirti grupę elementų, t. y. pažymėjus pirmąjį pagei- 30

31 daujamos išskirti sąrašo dalies elementą ir, laikant nuspaudus klavišą Shift, nuspausti paskutinį jos elementą. Tačiau nepriklausomai nuo to, kokia reikšmė būtų suteikta savybei MultiSelect ir kokiu būdu pažymėti sąrašo elementai, programa visuomet atsimins tik paskutinio išskirto elemento indeksą; Selected apibūdina sąrašo elemento būklę, jis yra pažymėtas ar nepažymėtas. Ši savybė suprantama kaip masyvas, kuriame kiekvienam sąrašo elementui suteikiama reikšmė True arba False. Savybės reikšmė True reiškia, kad sąrašo elementas yra pažymėtas arba išskirtas, o savybės reikšmė False neišskirtas; Sorted sąrašo elementų pateikimo sąraše būdas. Pageidaujant objekte sąrašo elementus išdėstyti abėcėlės tvarka, savybei Sorted suteikiama reikšmė True. Savybės reikšmė False reiškia, kad sąrašo elementai nebus rūšiuojami. Programa ar modelis sukurtame sąraše juos parodys tokia tvarka, kokia jie buvo įkelti programuotojo; Style sąrašo atvaizdavimo būdas. Jei savybei suteikta reikšmė 0 Standard, matomas įprastas alternatyvių variantų sąrašas. Pasirinkus savybės reikšmę 1 Checkbox, ties kiekvienu sąrašo elementu atsiras varnelės žymėjimo laukelis. Objektas vaizduojamas tarsi grupė darbo režimų jungiklių (CheckBox). Pasirenkant variantą, ties atitinkamu sąrašo elementu pažymima varnelė; Text išskirto sąrašo elemento tekstinei išraiškai nuskaityti ir atsiminti; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Kombinuoto sąrašo laukas (ComboBox) Paskirtis pateikti sąrašą alternatyvų, iš kurio programos ar modelio vartotojas galėtų pasirinkti pageidaujamą variantą arba jį įvesti (17 pav.). Šis objektas savo paskirtimi ir savybėmis yra labai panašus į prieš tai aprašytą sąrašą ListBox. Tačiau priešingai nei pastarasis, kombinuotas sąrašas ComboBox jungia alternatyvų sąrašą ir įvedimo laukelį, kuriame programos ar modelio vartotojas gali įrašyti naują sąrašo elementą arba mato iš sąrašo išrinktą elementą. Todėl ComboBox gali būti naudojamas ne tik informacijai pateikti, bet taip pat jai įvesti, nau- 31

32 jam sąrašo elementui į sąrašą įtraukti. Antras skirtumas alternatyvūs variantai sąraše gali būti pateikiami tik vienu stulpeliu. Kombinuotam sąrašui savybė MultiSelect nebūdinga. 17 pav. Mygtukas objektui kombinuoto sąrašo laukas (ComboBox) kurti Kombinuoto sąrašo lauko (ComboBox) savybės: Enabled nurodoma objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos ar modelio vartotojo veiksmus. Pasirinkus savybes reikšmę False objektas yra matomas, bet blyškus, neaktyvus ir nereaguoja į vartotojo veiksmus; List savybė, jungianti sąrašo elementus ir naudojama jų nuskaitymui bei atpažinimui. Savo paskirtimi analogiška objekto sąrašas (ListBox) savybei List. Dirbant su kombinuotu sąrašu (ComboBox) taip pat naudojamos kitos objektui sąrašas (ListBox) būdingos savybės: ListCount, ListIndex, NewIndex, TopIndex, ItemData; Locked pateiktos informacijos apsauga. Programa automatiškai šiai savybei suteikia reikšmę False ir ją deaktyvuoja. Programuotojui suteikus reikšmę True, apribojamos programos ar modelio vartotojo galimybės dirbti su objektu. Vartotojui leidžiame naudotis kombinuotame sąraše pateikta informacija, tačiau jis negali jos keisti, redaguoti arba įvesti; Style kombinuoto sąrašo tipas. Kombinuotas sąrašas gali būti trijų tipų (18 pav.). Skirtingų tipų kombinuoti sąrašai skiriasi išvaizda ir funkcinėmis galimybėmis. Suteikus objekto savybei Style reikšmę 0 Dropdown Combo, sukuriamas atsidarantis sąrašas, kurį sudaro viena eilutė su žemyn nukreipta rodykle dešinėje pusėje. Ją nuspaudus, apačioje pasirodo visas sąrašas ir programos ar modelio vartotojas gali pasirinkti pageidaujamą variantą. Šio tipo kombinuotame sąraše programos ar modelio vartotojas gali įrašyti savo variantą ir taip įterpti naują sąrašo elementą. 32

33 18 pav. Kombinuoto sąrašo (ComboBox) tipai: a išskleistas atsidarantis kombinuotas sąrašas Dropdown Combo ; b paprastas kombinuotas sąrašas Simple Combo ; c išskleistas atsidarantis kombinuotas sąrašas Dropdown List Reikšmė 1 Simple Combo pasirenkama tuomet, kai pageidaujama sukurti paprastą kombinuotą sąrašą. Jį sudaro įvedimo ir po juo esantis sąrašo laukeliai. Sąrašo laukelis yra pastovaus dydžio ir visuomet matomas. Jis neišsiskleidžia kaip atsidarančiojo tipo ( 0 Dropdown Combo ) kombinuotame sąraše. Naudodamasis paprastu 1 Simple Combo kombinuotu sąrašu, vartotojas gali tiek pasirinkti pageidaujamą variantą iš pateikto sąrašo, tiek įvesti naują sąrašo elementą. Kai pasirenkama savybės Style reikšmė 2 Dropdown List, taip pat sukuriamas atsidarantis kombinuotas sąrašas. Alternatyvūs variantai pateikiami tik nuspaudus žemyn nukreiptą rodyklę. Tačiau priešingai nei prieš tai aprašytame kombinuoto sąrašo tipe 0 Dropdown Combo, čia programos ar modelio vartotojas gali tik pasirinkti pageidaujamą variantą iš pateikto sąrašo. Įvesti naują sąrašo elementą neleidžiama; Sorted sąrašo elementų pateikimo kombinuotame sąraše būdas. Pageidaujant objekte sąrašo elementus išdėstyti abėcėlės tvarka, savybei Sorted suteikiama reikšmė True. Savybės reikšmė False reiškia, kad sąrašo elementai nebus rūšiuojami. Programa ar modelis sukurtame sąraše juos parodys tokia tvarka, kokia jie buvo įkelti programuotojo; 33

34 Text išskirto ir naujai įrašyto sąrašo elemento tekstinei išraiškai nuskaityti ir atsiminti, t. y. šiai savybei suteikiama reikšmė, kuri šiuo metu yra matoma kombinuoto sąrašo įvedimo laukelyje; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Šliaužiklis (HScrollBar ir VScrollBar) Paskirtis padėties arba reikšmių kontrolei ir nustatymui (19 pav.). Į kai kurių objektų, pavyzdžiui, teksto laukas (TextBox), sąrašas (ListBox), sudėtį šliaužiklis įterpiamas automatiškai, jei tekstinė informacija netelpa į objekto ribas. Programos vartotojas su šliaužikliu gali keisti matomos informacijos dalį. Tai nereikalauja jokių papildomų komandų ir veiksmų aprašymo. Tačiau šliaužiklis taip pat gali būti naudojamas kaip atskiras objektas. Visas funkcijas, kurias pageidaujama, kad jis atliktų, būtina užprogramuoti. Objektas šliaužiklis automatiškai nieko nevaldo. Egzistuoja dviejų tipų šliaužikliai: horizontalus (HScrollBar) ir vertikalus (VScrollBar). Jie skiriasi tuo, kad veikia skirtingomis kryptimis. Tačiau jų savybės ir galimybės yra vienodos. Šliaužiklį patogu naudoti tada, kai būtina tiksliai valdyti naudojamų rodmenų reikšmes ir ribas. Kurdamas programą ar modelį, programuotojas iškart gali nurodyti rodmens mažiausią ir didžiausią reikšmes, jo kitimo intensyvumą ir taip apriboti vartotojo galimybes bei apsaugoti programą ar modelį nuo klaidų. a b 19 pav. Mygtukas objektui šliaužiklis kurti: a horizontaliam šliaužikliui (HScrollBar); b vertikaliam šliaužikliui (VScrollBar) Šliaužiklių (HScrollBar ir VScrollBar) savybės: Enabled nurodoma objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aiškiai matomas, aktyvus ir reaguoja į programos ar modelio vartotojo veiksmus. Pasirinkus savybes reikšmę False objektas yra matomas, bet blyškus, neaktyvus ir nereaguoja į vartotojo veiksmus; 34

35 LargeChange šliaužiklio kontroliuojamo rodmens kitimo žingsnis spragtelėjus pele ant objekto, išskyrus ant objekto galuose esančių rodyklių; Max ir Min didžiausia ir mažiausia kontroliuojamo rodmens reikšmė. Ji gali būti nuo iki Šiomis savybėmis apibrėžiamos šliaužiklio veikimo ribos. Vertikaliame šliaužiklyje kontroliuojamo rodmens reikšmė mažėja judant iš apačios į viršų, o horizontaliame šliaužiklyje iš dešinės į kairę. Viršijus didžiausią arba mažiausią rodmens reikšmę, programa informuoja vartotoją apie klaidą; SmallChange šliaužiklio kontroliuojamo rodmens kitimo žingsnis naudojant objekto galuose esančias rodykles (ant jų spragtelėjus su pele); Value kontroliuojamo rodmens reikšmė. Ji atitinka šliaužiklio padėtį ir gali keistis nuo nurodytos mažiausios iki didžiausios reikšmės. Perstumiant šliaužiklį, keičiasi savybės Value skaitinė reikšmė ir atvirkščiai programiškai keičiant savybės Value reikšmę, atitinkamai persislenka šliaužiklis; Visible objekto vizuali būsena: objektas yra matomas (savybės reikšmė True ) ar nematomas (savybės reikšmė False ) Laikmatis (Timer) Paskirtis periodiškam veiksmų vykdymo aktyvavimui (20 pav.). Nors laikmačio panaudojimą riboja kompiuterio galimybės ir programos ar modelio vykdymo trukmė, tačiau tai gera priemonė programai valdyti, pageidaujamu momentu ją aktyvuoti ir sustabdyti. Tai ypač paranku tokiu atveju, jei programos ar modelio vykdymas vizualizuotas. Panaudojus laikmatį, programos bei modelio vykdymą galima sulėtinti, kad vartotojas suspėtų pastebėti ir įsisąmoninti vaizduojamus vizualinius pokyčius. 20 pav. Mygtukas objektui laikmatis (Timer) kurti 35

36 Svarbu įsidėmėti, kad programuotojo į formos lauką įkelta laikmačio ikona, paleidus programą, nesimato. Taip pat vienu metu gali dirbti ne daugiau kaip 32 laikmačiai, todėl kuriamoje programoje ar modelyje nerekomenduojama jų naudoti daugiau kaip 31. Laikmačio (Timer) savybės: Enabled nurodoma objekto būklė. Jei šiai savybei suteikiama reikšmė True, objektas yra aktyvus. Pasirinkus savybes reikšmę False objektas deaktyvuojamas (išjungiamas); Interval laikmačio aktyvavimo intervalas milisekundėmis. Šiai savybei gali būti suteikta bet kokia reikšmė nuo 0 iki Teoriškai kompiuteris gali aktyvuoti programą 1000 kartų per sekundę, jei tai neriboja kitos aplinkybės. Išjungti laikmatį galima, suteikus savybei Interval reikšmę 0. 36

37 Formos laukas (Form) Įrašo laukelis (Label) Teksto laukas (TextBox) Komandų mygtukas (CommandButton) Darbo režimų jungiklis (CheckBox) Darbo režimų pasirinkimo jungiklis (OptionButton) Rėmelis (Frame) Sąrašo laukelis (ListBox) Kombinuoto sąrašo laukelis (ComboBox) Šliaužiklis (HScrollBar ir VScrollBar) Laikmatis (Timer) 3. PROGRAMAVIMO-MODELIAVIMO PAGRINDAI 3.1. Veiksmai su objektais Kiekvienas Visual Basic objektas reaguoja į vienus ar kitus programos ar modelio vartotojo veiksmus: klavišo paspaudimą, pelės žymeklio patraukimą ir t. t. Objektą suaktyvinantys veiksmai, arba kitaip vadinami įvykiai, nurodomi kodo lauko išskleidžiamame sąraše. Šis sąrašas nėra visiškai vienodas visiems objektams, tačiau kai kurie veiksmai pasikartoja. Pagrindiniai ir dažniausiai programuojant naudojami veiksmai (įvykiai) pateikti 1 lentelėje. 1 lentelė. Dažniausiai naudojami kai kurių objektų veiksmai Objektai Veiksmai Change Click DblClick GotFocus KeyDown KeyPress KeyUp Load + LostFocus Unload + Timer + 37

38 Change reaguojama į bet kokią įrašo korekciją objekto laukelyje įrašymą, šalinimą arba perrašymą. Galima panaudoti įrašo kontrolei, kintamųjų reikšmių korekcijai programos kode ir t. t. Svarbu įsidėmėti, kad veiksmas Change aktyvuojamas po kiekvieno simbolio korekcijos. Jei, pavyzdžiui, programos ar modelio vartotojas į teksto lauką TextBox įrašo keturis simbolius, tai programa į veiksmą Change taip pat kreipsis keturis kartus. Click dažniausiai naudojamas veiksmas, ypač valdant komandų mygtukus CommandButton. Jis paleidžiamas užvedus pelės žymeklį ant atitinkamo objekto ir nuspaudus pelės kairįjį mygtuką arba klavišu Tab aktyvavus objektą ir paspaudus klavišą Enter. DblClick kaip ir prieš tai minėtas veiksmas Click, aktyvuojamas užvedus pelės žymeklį ant atitinkamo objekto ir du kartus spragtelėjus pelės kairįjį klavišą. Dažnai naudojamas sąrašo laukelių ListBox ir ComboBox valdymui. GotFocus veiksmas susijęs su objekto aktyvavimu. Besiruošdamas naudotis vienu ar kitu formos lauko objektu, programos ar modelio vartotojas atlieka paruošiamuosius veiksmus. Pavyzdžiui, perkelia kursorių į teksto lauką TextBox, paspaudžia komandų mygtuką CommandButton) ir panašiai. Tuo metu aktyvuojamas atitinkamas objektas ir jo veiksmas GotFocus. KeyDown aktyvuojamas nuspaudus klavišą. Į programos ar modelio kodą grąžinami du kintamieji: KeyCode ir Shift, pagal kuriuos galima orientuotis, kurie klavišai ar klavišų kombinacija buvo nuspausta. Kintamuoju KeyCode grąžinamas nuspausto klavišo ASCII kodas, o kintamuoju Shift funkcinių klavišų Shift, Ctrl ir Alt būklė. KeyPress reaguojama į darbą su klaviatūra. Priešingai nei dauguma kitų veiksmų, palaiko grįžtamąjį ryšį su veiksmo sukėlėjais. Į programos kodą grąžinamas paspausto klavišo ASCII kodas ir informacija apie funkcinių klavišų būklę. Tačiau veiksmas reaguoja ne į visų funkcinių klavišų paspaudimą: veiksmas aktyvuojamas tik paspaudus funkcinius klavišus Enter, Esc ir Backspace. Veiksmas KeyPress glaudžiai siejasi su kitais dviem galimais veiksmais su klaviatūra, t. y. KeyDown ir KeyUp. Paspaudus klavišą jie aktyvuojami tokiu nuoseklumu: KeyDown, KeyPress ir KeyUp. Be to, naudojant pro- 38

39 gramos ir modelio valdymui šiuos veiksmus su klaviatūra, būtina atitinkamo objekto savybei KeyPreview suteikti reikšmę True. KeyUp aktyvuojamas atleidus nuspaudą klavišą. Veiksmas KeyUp yra priešingas veiksmui KeyDown, bet jo reakcija analogiška. Į programos kodą grąžinami du kintamieji: KeyCode ir Shift, pagal kuriuos galima orientuotis, kurie klavišai ar klavišų kombinacija buvo nuspausta. Kintamuoju KeyCode grąžinamas nuspausto klavišo ASCII kodas, o kintamuoju Shift funkcinių klavišų Shift, Ctrl ir Alt būklė. Load aktyvuojamas atidarant formos langą. Šiame veiksme nurodytos komandos įvykdomos dar prieš vizualiai pasirodant programos ar modelio formos langui monitoriaus ekrane. Todėl veiksmą Load patogu naudoti kintamiesiems arba objektų savybėms reikšmes suteikti, formos laukui maketuoti, pavyzdžiui, paslėpti arba deaktyvuoti šiuo metu nereikalingus objektus, užpildyti sąrašo laukelius ListBox ir ComboBox ir t. t. LostFocus veiksmas, susijęs su objekto deaktyvavimu. Jis yra atvirkščias veiksmui GotFocus. Aktyvavus formos lauke naują objektą, su kuriuo ruošiamasi dirbti, tuo pačiu metu baigiamas darbas su senu objektu. Prieš aktyvuojant naują objektą ir jo veiksmą Got- Focus, sužadinamas senojo objekto veiksmas LostFocus. Unload priešingas veiksmui Load. Jis vykdomas baigiant dirbti su programos ar modelio formos langu ir jį uždarant. Naudojamas atidarytiems dokumentams, duomenų bazėms uždaryti, formos lango būklei pertvarkyti, jei programos vykdymas perkeliamas į kitą programos ar modelio formos langą. Timer veiksmas būdingas tik laikmačiui Timer ir periodiškai aktyvuojamas praėjus nustatytam intervalui. Intervalo trukmė nurodomas objekto savybe Interval. Be to, šis veiksmas aktyvus tik tuomet, jei savybės Enabled reikšmė True Duomenų tipai Kokio sudėtingumo programa ar modelis būtų bekuriami, kokia programavimo kalba besinaudojama, nepavyks išvengti darbo su duo- 39

40 menimis. Visi duomenys pagal paskirtį skirstomi į tris grupes: kintamieji (Variable), masyvai (Array) ir konstantos (Constant) Kintamieji Kintamasis atminties fragmentas, skirtas programoje ar modelyje naudojamiems duomenims laikinai saugoti. Tokiame fragmente saugomi skaičiai, simbolių sekos, įvairūs formatuoti duomenys. Vykdant programą ar modelį, jie gali būti atnaujinami ir kintamasis įgyti įvairias reikšmes. Kiekvienam kintamajam suteikiamas vardas ir dažniausiai dar papildomai nurodomas jo tipas. Kintamojo vardas yra nuoroda į atminties sritį, kurioje saugoma minėto kintamojo informacija. Jis būtinai turi prasidėti raide, gali būti naudojamos didžiosios ir mažosios raidės, bet negali būti taškų ir tarpų. Kintamojo vardas negali sutapti su Visual Basic baziniais žodžiais, objekto ar parametro pavadinimais. Taip pat jis negali būti sudarytas iš daugiau kaip 255 simbolių. Pagal pavaldumą ir veikimo ribas kintamieji skirstomi į tris lygius (2 lentelė): lokaliniai veiksnūs tik tame veiksme, kuriame buvo įvardinti. Baigus darbą su šiuo veiksmu ir aktyvavus kitą veiksmą, t. y. pradėjus vykdyti kitame veiksme esantį kodą, programa kintamąjį ir jo reikšmę ištrina iš atminties. Programa kintamąjį pamiršta; veikiantys formos ribose veiksnūs tik formoje, kurioje buvo paskelbti. Persikėlus programos vykdymui į kitą programos formą arba modulį, tokie kintamieji ir jų reikšmės taip pat ištrinami; globaliniai veiksnūs visoje programoje ar modelyje. Nepriklausomai nuo to, kurioje formoje ar modulyje, objekte ar veiksme šiuo metu vykdomas kodas, minėtas kintamasis ir jo reikšmė saugomi atmintyje. Jis bus ištrintas tik nutraukus programos ar modelio vykdymą. Kintamojo tipas lemia, kokiems duomenis jis skirtas saugoti. Duomenų tipų yra labai įvairių: Integer, Long, Single, Currency ir t. t. Kiekvienam jų būdingos savitos savybės. 40

41 Sritis General Paprogramė 1 Paprogramė 2 Sritis General Objektas 1 Objektas 2 Sritis General Objektas 1 Paprogramė 2 lentelė. Kintamųjų pavaldumo ir veiksnumo ribos Programos kodo sritis Kintamasis Modulis Forma 1 Forma 2 Deklaravimo kodas Lygis Public a As Integer globalinis Dim b As Integer veikia modulyje Static c As Integer lokalinis Dim d As Integer veikia formoje Dim e As Integer lokalinis Dim f As Integer lokalinis Dim g As Integer veikia formoje Dim h As Integer lokalinis Dim e As Integer lokalinis Static f As Integer lokalinis Žymėjimas: kintamojo paskelbimo vieta; kintamasis veiksnus; tuščias langelis kintamasis neveiksnus. 3 lentelėje pateikti dažniausiai naudojamų duomenų tipų ypatumai. Su kitais susipažinsite, jei programavimo įgūdžius nutarsite tobulinti toliau. Procesas, kurio metu iš anksto, suteikiant pavadinimą ir nurodant tipą arba tik suteikiant pavadinimą, sukuriamas kintamasis, vadinamas kintamojo paskelbimu arba deklaravimu. Kintamiesiems paskelbti var- 41

42 tojami baziniai žodžiai Public, Static arba Dim, lemiantys kintamojo veikimo ribas kuriamoje programoje ar modelyje. 3 lentelė. Dažniausiai naudojami duomenų tipai Duomenų Pastabos tipas Integer Reikšmės ribos nuo iki (Sveikieji Skiriama vietos atminties kaupiklyje: 2 baitai. skaičiai) Skirtas tik sveikoms skaitinėms reikšmėms. Bet kokia reikšmė su dešimtainiu skyrikliu bus suapvalinta. Pavyzdžiui: Dim atsakymas As Integer; atsakymas = Long (Dvigubo tikslumo sveikieji skaičiai) Single (Realieji skaičiai) Double (Dvigubo tikslumo realieji skaičiai) Currency (Valiutą išreiškiantys skaičiai) Reikšmės ribos nuo iki Skiriama vietos atminties kaupiklyje: 4 baitai. Skirtas tik sveikoms skaitinėms reikšmėms. Bet kokia reikšmė su dešimtainiu skyrikliu bus suapvalinta. Pavyzdžiui: Dim atsakymas As Long; atsakymas = Reikšmės ribos nuo 3, iki +3, Skiriama vietos atminties kaupiklyje: 4 baitai. Skirtas skaitinėms reikšmėms, kurios gali turėti iki šešių reikšminių skaitmenų po dešimtainio skyriklio, pavyzdžiui: Dim atsakymas As Single; atsakymas = 1,257821E-12. Reikšmės ribos nuo 1, iki +1, Skiriama vietos atminties kaupiklyje: 8 baitai. Skirtas skaitinėms reikšmėms, kurios gali turėti iki keturiolikos reikšminių skaitmenų po dešimtainio skyriklio, pavyzdžiui: Dim atsakymas As Double; atsakymas = 3, Reikšmės ribos nuo ,5808 iki ,5807. Skiriama vietos atminties kaupiklyje: 8 baitai. Skirtas skaitinėms reikšmėms su fiksuotu kableliu. Gali turėti iki penkiolikos reikšminių skaitmenų prieš dešimtainį skyriklį ir keturis po jo, pavyzdžiui: Dim atsakymas As Currency; atsakymas = ,

43 Boolean (Loginė reikšmė) String (Simbolių sekos) Variant (Universalaus tipo kintamieji) Reikšmės ribos: True arba False. Skiriama vietos atminties kaupiklyje: 2 baitai. Gali įgyti tik vieną iš dviejų reikšmių True (teisinga arba False (klaidinga). Pagal nutylėjimą kintamajam suteikiama reikšmė False. Be to, reikšmės gali būti nurodomos skaitiniais simboliais: skaitinė reikšmė 0 atitinka reikšmę False, o bet koks kitas reikšminis skaičius (nuo 1, iki 9 ) reikšmę True. Pavyzdžiui: Dim atsakymas As Boolean; atsakymas = True arba atsakymas = 0 (bus suprantamas kaip False ). Skiriama vietos atminties kaupiklyje: 1 baitas simboliui. Tai riboto ilgio seka, kurioje vienam simboliui skiriamas vienas baitas, o sekoje gali būti nuo 0 iki simbolių. Sekos ilgį lemia naudojamos operacinės sistemos galimybės. Kintamajam priskiriama reikšmė visada rašoma kabutėse. Užrašas, kai tarp kabučių nenurodomas joks simbolis, pvz.,, suvokiamas kaip tuščia seka. Ja galima išvalyti kintamuosius. Pavyzdžiui: Dim atsakymas As String; atsakymas = Jonas. Skiriama vietos atminties kaupiklyje: 16 baitų skaičiams ir 22 plius po vieną baitą simboliui simbolių sekoms. Šio duomenų tipo kintamieji užima daug vietos, bet gali talpinti net apie du milijardus simbolių. Be to, tokiuose kintamuosiuose galima saugoti bet kokio tipo duomenis: skaičius, simbolių sekas, logines reikšmes, datas ir t. t. Taip pat nebūtina iš anksto deklaruoti įvedamą kintamąjį. Jeigu dirbdama programa sutinka kintamąjį, kuris nebuvo paskelbtas ir pavadinimo pabaigoje nenurodytas jokio duomenų tipo skiriamasis simbolis, tai jam automatiškai suteikiamas universalaus kintamojo tipas. Pavyzdžiui: Dim atsakymas As Variant; atsakymas = 7306,1920 (bus suprantamas kaip skaičius); atsakymas = BMW (bus suprantamas kaip žodis); atsakymas = 192 (bus suprantamas kaip simbolių seka, tekstas). Baziniu žodžiu Public deklaruojami globaliniai kintamieji. Tai atliekama modulyje kodo lauko srityje General. Kintamojo deklaravimo komandos sintaksė: Public KintamojoPavadinimas [As KintamojoTipas]. 43

44 Laužtiniais skliaustais žymima nebūtina komandos teksto dalis. Deklaruojant kintamąjį, gali būti nurodomas tik jo vardas. Pateikiami keli kintamųjų paskelbimo pavyzdžiai: Public a; Public a As Integer; Public Vardas As String. Simbolių sekos kintamojo (tekstinio įrašo, String) deklaravimo komanda gali būti ilgesnė: Public KintamojoPavadinimas [As KintamojoTipas] [* SekosIlgis]. Eilutės pabaigoje galima nurodyti didžiausią simbolių sekos ilgį. Šiuo tikslu yra dedamas simbolis * ir skaičiumi nurodomas leidžiamas simbolių kiekis. Jei bus norima kintamajam priskirti ilgesnės simbolių sekos reikšmę, programa įsimins tik tiek simbolių, kiek jai nurodyta. Pavyzdžiui: Public Vardas As String * 5; Vardas = Jonas (suteiktas ir įsimintas penkių simbolių ilgio tekstas Jonas ); Vardas = Lietu (pageidauta suteikti reikšmę Lietuva, bet programa įsidėmėjo tik pirmus penkis simbolius Lietu ). Bazinis žodis Static naudojamas lokaliniams kintamiesiems deklaruoti. Taip deklaruoti kintamieji išsaugo reikšmę tarp kreipimosi į paprogramę, t. y. programos ar modelio vykdymą laikinai perkėlus į kitą programos kodo dalį ir vėliau grąžinus atgal, jie išliks žinomi ir nepraras suteiktos reikšmės. Kintamieji su baziniu žodžiu Static skelbiami veiksmo pradžioje: Static a; Static a As Integer; Static Vardas As String. Bazinis žodis Dim taip pat naudojamas lokaliniams ir veikiantiems programos ar modelio formos ribose kintamiesiems deklaruoti. Pastarieji skelbiami formoje kodo lauko srityje General, lokaliniai objekto veiksmo pradžioje. Taip deklaruotus kintamuosius programa prisimena tol, kol dirbama toje programos ar modelio kodo dalyje, ku- 44

45 rioje jie buvo paskelbti. Net trumpam nutraukus darbą veiksme ir perėjus į kitą veiksmą, programa ar modelis kintamuosius ir jų reikšmes iškart ištrins iš atminties. Kintamojo deklaravimo pavyzdžiai: Dim a; Dim a As Integer; Dim Vardas As String. Parenkant kintamojo tipą ir jo pavaldumo lygį atsižvelgiama į programos ar modelio sudėtingumą ir programą ar modelį aprašančio kodo paskirstymą skirtinguose objektuose, o naudojamas kintamojo tipas priklauso nuo užimamos atminties kiekio ir skaičiavimo tikslumo. Kaip jau supratote, kintamojo tipas deklaruojamas nurodant duomenų tipo, kuriam skiriamas kintamasis, pavadinimą. Kartais naudojamas paprastesnis būdas: kintamojo vardo pabaigoje nurodomas atitinkamo duomenų tipo skiriamasis simbolis (4 lentelė), pavyzdžiui: Dim a%; Dim Vardas$. 4 lentelė. Duomenų tipų simboliai Eil. Duomenų tipas Eil. Duomenų tipas Nr. Pavadinimas Simbolis Nr. Pavadinimas Simbolis 1 Integer % 4 Double # 2 Long & 5 3 Single! 6 String $ Kartą nurodžius kintamojo tipą, programa ar modelis jį įsidėmės ir nekeis. Taigi, deklaravimo kodo eilutėje įvedus kintamojo vardą su skiriamuoju simboliu, vėliau šį simbolį galima praleisti ir rašyti tik kintamojo vardą. Tai sutrumpina programos kodą, bet Microsoft nerekomenduoja naudoti duomenų tipo deklaravimo būdą su skiriamaisiais simboliais. Priešingai nei kitose programavimo kalbose, dirbant su Visual Basic programa, deklaruoti kintamuosius ir nurodyti jų tipus nebūtina. Nedeklaruoti kintamieji arba kintamieji, kurie buvo paskelbti nenurodant duomenų tipo, automatiškai priskiriami universalių kintamųjų tipui. Vis dėlto, siekiant sukurti efektyvią programą, taupančią kompiuterio atmintį 45

46 ir resursus, kintamųjų deklaravimo rekomenduojama nepraleisti. Pakanka įvertinti tai, kad nepaskelbtam, pavyzdžiui, Integer tipo kintamajam programa automatiškai priskirs Variant tipą ir skirs jam net aštuonis kartus daugiau vietos atminties kaupiklyje. Be to, visi nepaskelbti kintamieji suprantami kaip lokaliniai. Dėl šių priežasčių duomenų deklaravimo procesą naudinga kontroliuoti ir kintamuosius paskelbti iš anksto Masyvai Masyvai yra tam tikras kintamųjų variantas. Paprasti kintamieji, kurie apibūdinti ankstesniame skyrelyje, turi vieną pavadinimą ir vieną reikšmę. Vykdant programą ar modelį paprastojo kintamojo reikšmė gali keistis, bet ji visuomet bus tik viena: senąją kintamojo reikšmę programa ištrins ir vietoj jos įrašys naują. Priešingai nei paprastas kintamasis, masyvas tuo pačiu metu gali saugoti keletą to paties kintamojo reikšmių. Taigi, masyvas yra kintamasis, vienu pavadinimu jungiantis grupę to paties duomenų tipo reikšmių. Atskiros masyvo reikšmės vadinamos masyvo elementu arba indeksuotu masyvo elementu. Veiksmai, atliekami su vienu masyvo elementu, neturi jokios įtakos kitiems to paties masyvo elementams. Masyvai gali būti globaliniai, veikiantys formos ribose arba lokaliniai. Tai lems jų deklaravimo vieta ir būdas. Vartojami tie patys baziniai žodžiai Public ir Dim. Pageidaujant sukurti globalinį masyvą, deklaravimo procesas atliekamas modulyje kodo lauko srityje General ir vartojamas bazinis žodis Public. Lokalinis arba formos ribose veikiantis masyvas sukuriamas paskelbiant jį atitinkamai objekto veiksmo pradžioje arba formos kodo lauko srityje General. Tiek vienu, tiek kitu atveju vartojamas bazinis žodis Dim. Pavyzdyje pateiktos įvairių masyvų deklaravimo komandų sintaksės: Public MasyvoPavadinimas(ElementųKiekis) [As KintamojoTipas]; Dim MasyvoPavadinimas(ElementųKiekis) [As KintamojoTipas]. Masyvo deklaravimo komandoje nurodomas kintamojo (masyvo) pavadinimas. Jis sudaromas pagal tas pačias taisykles kaip paprasto kintamojo pavadinimas (žr skyrių). Masyvo pavadinimo pabaigoje lenktiniuose skliaustuose būtinai nurodomas masyvo dydis, t. y. kelių 46

47 masyvo elementų grupę jis jungia. Taip pat gali būti apibrėžiamas suteikiamų reikšmių duomenų tipas. Šios deklaravimo komandos dalies rašyti nebūtina. Tuomet programa tai atliks savarankiškai, priskirdama masyvo reikšmes universaliam duomenų tipui. Visos viename masyve saugomos reikšmės yra to paties tipo. Tai negali būti skirtingiems duomenų tipams priklausančių reikšmių grupė. Pavyzdžiui: Dim Miestas(4) As String. Programa, perskaičiusi šią komandą, skirs vietos atminties kaupiklyje ir sukurs kintamąjį masyvą, pavadinimu Miestas, kuriame bus galima saugoti penkias reikšmes, pavyzdžiui: Miestas(0) = Vilnius; Miestas(1) = Kaunas; Miestas(2) = Utena; Miestas(3) = Alytus; Miestas(4) = Jurbarkas. Skaičiai 0, 1, 2, 3, 4 nurodo konkretų masyvo elementą ir vadinami indeksais. Svarbu įsidėmėti, jei nenurodyta kitaip, masyvo elementai pradedami skaičiuoti nuo nulio. Todėl deklaravus masyvą Miestas(4), sukuriamas ne keturių, o penkių elementų kintamasis. Visual Basic programa programuotojui leidžia keisti masyvo elementų skaičiavimo pradžią. Tokiu atveju, deklaruojant masyvą, lenkiniuose skliaustuose nurodomos indeksų skaičiavimo ribos, pavyzdžiui: Dim Miestas(1 To 5) As String. Programa taip pat sukurs penkių elementų masyvą, tiktai masyvo elementų indeksai bus 1, 2, 3, 4 ir 5. Vartotojui leidžiama nurodyti bet kokias indeksų skaičiavimo ribas, tačiau kaip indeksus galima naudoti tik teigiamus sveikuosius skaičius. Praktikoje taip pat naudojami sudėtingesni masyvai. Jie gali būti ne tik vienmačiai (aptartas masyvas Miestas(4) ), bet taip pat dvimačiai, trimačiai ir t. t. Visiems masyvams būdingos tos pačios savybės, todėl darbas su daugiamačiais masyvais mažai kuo skiriasi. Pagrindinis skirtumas yra tai, kad masyvo elemento padėtį apibūdina ne vienas indeksas, o atitinkamai du, trys ar daugiau indeksų. Masyvo elemento pa- 47

48 dėčiai nurodyti programa Visual Basic leidžia naudoti net iki 60 indeksų. Daugiamačių masyvų deklaravimo ir kreipimosi į masyvų elementus pavyzdžiai: Dim Pozicija(3, 8) As String; Dim Pozicija(1 To 3, 4 To 8) As String; Pozicija(2, 6) = Miltai ; Dim Atstumas(6, 5, 23) As Single; Dim Atstumas(0 To 6, 2 To 5, 10 To 23) As Single; Atstumas(0, 4, 17) = Atstumas(0, 4, 18) = Kuriant programą ar modelį nustatyti tikslias masyvo ribas dažnai yra sudėtinga. Nurodyti dideles ribas, kad visi masyvo elementai tikrai tilptų, netikslinga, nes, kaip jau žinote, kiekvienas deklaruotas kintamasis rezervuoja vietą atminties kaupiklyje, o masyvai jos užima labai daug. Tokiais atvejais naudojami ne statiniai masyvai, kuriuos deklaruojant nurodomas konkretus masyvo elementų skaičius (tokie masyvai buvo aptarti iki šiol), o dinaminiai. Dinaminių masyvų deklaravimo komandos sintaksė šiek tiek skiriasi: Public MasyvoPavadinimas( ) [As KintamojoTipas]; Dim MasyvoPavadinimas( ) [As KintamojoTipas]. Deklaruojant nereikia nurodyti masyvą sudarančių elementų skaičiaus. Masyvo pavadinimo pabaigoje rašomi neužpildyti lenktiniai skliaustai. Aptikusi kintamojo pavadinimą su skliaustais, programa suvokia jį kaip masyvą, tačiau jo ribų neapibrėžia. Dinaminio masyvo riboms nurodyti naudojama komanda ReDim. Ji paprastai nurodoma toje programos kodo dalyje, kurioje pradedamas darbas su masyvu arba reikia pakeisti išplėsti arba susiaurinti, masyvo ribas. Pavyzdžiui: Dim Miestas( ) As String; (deklaruojamas dinaminis masyvas) ReDim Miestas(4); (suformuojamas masyvas iš penkių elementų) ReDim Miestas(9). (performuojamas į masyvą iš dešimties elementų) 48

49 Kaip supratote, komanda ReDim taip pat naudojama jau suformuoto dinaminio masyvo riboms keisti masyvui išplėsti arba sumažinti. Ši komanda nenaudojama dirbant su statiniais masyvais. Žemiau pateikta komandos ReDim sintaksė: ReDim [Preserve] MasyvoPavadinimas(ElementųKiekis) [As KintamojoTipas]. Ji panaši į masyvo deklaravimo komandos eilutę. Skiriasi tuo, kad joje gali būti nurodomas bazinis žodis Preserve. Keičiant jau suformuoto ir reikšmėmis užpildyto arba dalinai užpildyto dinaminio masyvo ribas, visa jame sukaupta informacija bus ištrinta. Raktinis žodis Preserve naudojamas, kai masyve sukauptą informaciją pageidaujama neprarasti. Tuomet visi pradiniai duomenys bus išsaugoti ir perkelti į performuotą masyvą Konstantos Konstanta kintamasis, kuriam suteikta reikšmė nekinta. Tuo konstantos skiriasi nuo kintamųjų. Pastarųjų reikšmę, vykdant programą ar modelį, galima keisti neribotą kartų skaičių, o konstantų reikšmę tik nuskaityti. Konstantoms gali būti suteikiamos įvairios reikšmės: simbolių sekos, skaitinės ar loginės reikšmės. Simbolių sekos konstantoms taip pat rašomos kabutėse, pavyzdžiui, Kaunas, 123. Šiuo atveju seka 123 reiškia ne skaičių, o simbolių seką, su kuria įprastų aritmetinių veiksmų atlikti negalima. Prieš atliekant aritmetinius veiksmus ją būtina konvertuoti į skaičių. Visos konstantų reikšmės nurodomos programuotojo kuriant programą ar modelį, o priskiriamos deklaruojant konstantas aktyvuotoje programoje. Pagal pavaldumą ir veikimo ribas konstantos gali būti lokalios, veikiančios formos ribose ir globalinės. Tai priklauso nuo jos paskelbimo. Deklaravimui vartojami baziniai žodžiai Const arba Public Const. Pastarasis vartojamas globalinėms konstantoms. Jos deklaravimas vyksta tik modulyje kodo lauko srityje General: Public Const KonstantosPavadinimas [As KonstantosTipas] = Reikšmė. 49

50 Bazinis žodis Const naudojamas lokalinėms ir veikiančioms formos ribose konstantoms deklaruoti. Jos skelbiamos atitinkamai objekto veiksmo pradžioje ir formos kodo lauko srityje General. Tiek vienu, tiek kitu atveju naudojama ta pati konstantos deklaravimo komandos sintaksė: Const KonstantosPavadinimas [As KonstantosTipas] = Reikšmė. Pavyzdžiui: Public Const Pi As Single = ; Public Const Vardas As String = ASU ; Const MaxGreitis As Integer = 130; Const GatvesPavadinimas As String = Studentu. Taigi, deklaruojant konstantoms suteikiamas pavadinimas ir nurodomas reikšmės duomenų tipas. Laužtiniais skliaustais išskirtos konstantos deklaravimo komandos dalies nebūtina rašyti. Tuomet neapibrėžiamas jai suteiktos reikšmės duomenų tipas. Programa tai atlieka automatiškai, priskiria konstantos reikšmę universaliam duomenų tipui. Tiek konstantų, tiek kintamųjų reikšmėms apibrėžti naudojami tokie patys duomenų tipai, iš kurių populiariausi yra Integer, Long, Single, Double, Currency, Boolean, String. Konstantos reikšmės duomenų tipą taip pat galima nurodyti duomenų tipo skiriamaisiais simboliais (3.4 lentelė). Jie rašomi konstantos pavadinimo pabaigoje, pavyzdžiui: Const MaxGreitis% = 130 (suteiktas duomenų tipas Integer); Const GatvesPavadinimas$ = Studentu (suteiktas duomenų tipas String); Const Pi = (nenurodytas duomenų tipas. Programa jį priskirs automatiškai). Visual Basic programavimo kalboje dažnai naudojamos vidinės konstantos. Tai specialios konstantos, kuriomis nustatomos objektų savybės, pavyzdžiui, spalva ColorConstants ir panašiai. Informacija apie vidines konstantas pateikta objektų paieškos kataloge Object Browser (View Object Browser). Papildomai vidinių konstantų deklaruoti nereikia. Paprasčiausiai jos panaudojamos reikiamoje programos ar modelio kodo vietoje, priskiriant atitinkamą savybę vienam ar kitam objektui. 50

51 3.3. Veiksmų operatoriai Programuojant Visual Basic programa naudojami aritmetiniai, palyginimo, sąryšio ir loginiai operatoriai. Aritmetiniai operatoriai ir operacijos yra labiausiai paplitę. Dauguma aritmetinių operatorių Visual Basic programoje niekuo nesiskiria nuo jiems įprastų žymėjimų ir vykdomų veiksmų (5 lentelė). Atskirai tikslinga aptarti tik kėlimo laipsniu, šaknies traukimo ir dalybos operatorius. 5 lentelė. Aritmetiniai operatoriai Simbolis Operacija Pavyzdys Veiksmas Išraiška Rezultatas + sudėtis atimtis * daugyba * 5 15 / dalyba / 5 7, (suapvalinant) 23 / (suapvalinant) 9 / 4 2 \ dalyba \ 5 7 (sveikos dalies \ 4 5 radimo) \ 4 2 ^ ^ kėlimas laipsniu šaknies traukimas ^ ^ arba 1/ ^ -2 0,01 25 ^ (1/2) arba Sqr(25) ^ (1/3) 3 5 Kvadratinės šaknies traukimo operacijai atlikti naudojama speciali komanda Sqr(Kintamasis) arba kėlimo laipsniu operatorius. Tik kintamasis yra keliama ne kvadratu, o laipsniu 1/2 arba 0,5. Atitinkamai, pageidaujant ištraukti kubinę šaknį, kintamojo reikšmę reikia pakelti laipsniu 1/3 ir t. t. Dalybai naudojami du simboliai: / ir \. Dalyba su pirmuoju simboliu / yra tipiškas dalybos veiksmas, Kitaip jis vadinamas dalyba 51

52 su nefiksuotu dešimtainiu skyrikliu. Veiksmo rezultatas yra realus skaičius su vieneto dalimis. Sveikos dalies radimo operacija, dalyba naudojant simbolį \ (matematikoje ji nenaudojama), kaip rezultatą pateikia tik sveikąją gauto skaičiaus dalį. Tai, kas lieka už dešimtainio skyriklio, programa ne suapvalina, o ištrina. Svarbu įsidėmėti, kad aritmetiniams veiksmams būdinga hierarchija. Pirmiausia atliekama kėlimo laipsniu operacija ( ^ ), antroje vietoje daugybos ir dalybos operacijos ( * ir / ), trečioje vietoje dalyba (sveikos dalies radimas) ( \ ), ketvirtoje vietoje sudėtis ir atimtis ( + ir - ). Jų vykdymo eiliškumą galima valdyti apskliaudžiant atskirus veiksmus. Programa pirmiausia atliks tuos veiksmus, kurie yra skliaustuose, ir tik po jų už skliaustų arba tarp skliaustų. Skliaustų naudojimas taip pat palengvina aprašytų veiksmų skaitymą ir suvokimą. Simbolis + taip pat naudojamas kaip sąryšio operatorius atskiroms išraiškoms programos kode sujungti. Iš atskirų ir trumpų išraiškų simbolių sekų (žodžių ar jų dalių) galima suformuoti ilgą ir vientisą simbolių seką sakinį. Pavyzdžiui: Dalis1$ = esu ; Dalis2$ = stud ; Dalis3$ = entas ; Text1.Text = Aš + Dalis1$ + + Dalis2$ + Dalis3$. Įvykdžius programą, objekto Text1 laukelyje bus matomas sakinys Aš esu studentas. Vietoj simbolio + gali būti naudojamas simbolis &. Visual Basic kūrėjai rekomenduoja naudoti pastarąjį simbolį. Naudojant simbolį +, susiduriama su problemomis, jei bent vienas iš ketinamų sujungti išraiškų yra skaičius. Programa mėgins atlikti sudėties veiksmą ir praneš apie klaidą: skaičių prie žodžio pridėti neįmanoma. Tokiu atveju skaitinę reikšmę būtina performatuoti į simbolių seką, naudojant, pavyzdžiui, komandą Str$. Ne mažiau reikšmingi palyginimo operatoriai. Jie naudojami įvairiose reikšmių, simbolių sekų ir kitų savybių palyginimo veiksmuose. 6 lentelėje pateiktas palyginimo operatorių sąrašas. Palyginimo operacijos pagal hierarchiją yra žemiau aritmetinių operacijų, todėl atliekamos po jų. 52

53 6 lentelė. Palyginimo operatoriai Pavyzdys Simbolija Išraiška Pastabos Operaci- Rezultatas > daugiau > 8 True 9 yra daugiau už 8 už 15 > 20-2 False 15 yra ne daugiau už 18 < mažiau < 8 False 9 yra ne mažiau už 8 už 15 < 20-2 True 15 yra mažiau už 18 >= daugiau 12 >= True 12 yra daugiau už 9 už arba 8 >= False 8 yra ne daugiau ir nelygu 9 lygu 12 >= True 12 yra lygu 12 <= mažiau už arba lygu 12 <= False yra ne mažiau ir nelygu 9 8 <= True 8 yra mažiau už 9 12 <= True 12 yra lygu 12 = lygu = True 8 yra lygu = False 6 yra nelygu 8 sekas sudaro tie patys simboliai, todėl sąlyga tenki- ab = a + True b nama <> nelygu <> False 8 yra lygu 8, o ne nelygu <> True 6 yra nelygu 8 ab <> a + b False sekas sudaro tie patys simboliai, todėl sąlyga netenkinama Vykdant palyginimo operacijas, tikrinamas programuotojo suformuotų palyginimo sąlygų teisingumas. Gautas rezultatas gali tenkinti arba netenkinti palyginimo sąlygą. Atitinkamai generuojama loginio duomenų tipo (Boolean) atsakymo reikšmė: True, jei palyginimo sąlyga buvo patenkinta, arba False, jei palyginimo sąlyga buvo nepatenkinta. Tolesniuose veiksmuose vietoj loginio duomenų tipo atsakymo reikšmių True ir False, gali būti naudojamos skaitinės jų reikšmės. Pagal nutylėjimą, konstanta True prilyginama skaičiui 1, o konstanta False skaičiui 0. Būtina paminėti apie kelis rečiau sutinkamus loginius operatorius Is ir Like. Pastarasis naudojamas lyginant simbolių sekas, o opera-

54 torius Is objektus, jų parametrus. Priklausomai nuo rezultato, išduodamas atsakymas True arba False. Programoje Visual Basic naudojami šeši loginiai operatoriai: pagrindiniai loginiai operatoriai NOT (loginis ne ), AND (loginis ir ) ir OR (loginis arba ). Jie yra plačiausiai paplitę; išvestiniai loginiai operatoriai XOR (išimtinis arba ), EQV (loginis ekvivalentiškumas) ir IMP (loginė implikacija). Loginiai operatoriai naudojami aprašant ciklų arba instrukcijos IF...THEN vykdymo sąlygas. Visi jie gali dirbti su skaitinėmis reikšmėmis ir simbolių sekomis išraiškomis. Tuo pačiu metu loginiai veiksmai atliekami su dviem arba keliomis išraiškomis. Išimtis yra loginis operatorius NOT. Pastarasis vertina tik vieną išraišką ir grąžina loginę reikšmę, priešingą išraiškos loginei reikšmei. Loginių operatorių naudojimo pavyzdžiai: Rezultatas = NOT Išraiška1; (jei Išraiška1 = True, tai rezultatas = False) a > 5 AND a <= 12; (aprašyta sąlyga 5 < a 12) a = 2 OR a = 8. Loginiai operatoriai generuoja loginio duomenų tipo (Boolean) atsakymo reikšmes True arba False (atitinkamai skaitines reikšmes 1 arba 0 ). Kaip rezultato reikšmė priklauso nuo lyginamų išraiškų reikšmių, pateikta 7 lentelėje. 7 lentelė. Loginių operacijų rezultatai Išraiškos Loginės operacijos A B A AND B A OR B A IMP B A EQV B A XOR B False False False False True True False False True False True True False True True False False True False False True True True True True True True False Loginiai operatoriai hierarchinėje operatorių eilėje yra pabaigoje ir atliekami paskiausiai. Hierarchija taip pat būdinga atskiriems loginiams operatoriams. Ji yra tokia: NOT, AND, OR, XOR, EQV ir IMP. 54

55 3.4. Sąlygos instrukcija IF...THEN Programos ir modeliai yra įvairaus sudėtingumo, tačiau net paprastose programose ar modeliuose neišvengiama veiksmų alternatyvų. Priklausomai nuo užduotų sąlygų ar gautų tarpinių rezultatų, pasirenkamas vienas arba kitas sprendimo variantas, kintamasis ar konstanta. Programos veiksmų krypčiai keisti naudojama sąlygos instrukcija IF...THEN (21 pav.). Tipinė jos sintaksė leidžia pasirinkti vieną variantą iš dviejų. IF Sąlyga1 THEN Veiksmas1 END IF a IF Sąlyga1 THEN Veiksmas1 ELSE Veiksmas2 END IF b c 21 pav. Sąlygos instrukcija IF...THEN: a tipinė instrukcijos sintaksė; b instrukcijos su baziniu žodžiu ELSE sintaksė, c tipinės instrukcijos struktūra (algoritmas); d instrukcijos su baziniu žodžiu ELSE struktūra (algoritmas) Pasiekusi sąlygos instrukciją, programa tikrina suformuotą pirmąją sąlygą (Sąlyga1) (21 pav.). Generuojamas atsakymas True (Taip) sąlyga tenkinama, arba False (Ne) sąlyga netenkinama. Gautas rezultatas lemia tolesnius programos ar modelio veiksmus, jų vykdymo kryptį. Jei pirmoji sąlyga (Salyga1) tenkinama ( True ), veiksmas persikelia į sąlygos instrukcijos IF...THEN darbo sritį. Atliekamos nurodytos komandos (Veiksmas1). Jas įvykdžius, baigiamas 55 d

56 darbas su sąlygos instrukcija IF...THEN ir programa grąžinama į pagrindinę kryptį, programos kodą žemiau bazinio žodžio END IF. Tuo atveju, jei pirmoji sąlyga (Salyga1) netenkinama ( False ), programa aplenkia instrukciją IF...THEN ir iškart toliau tęsia programos kodo vykdymą pagrindinėje kryptyje, žemiau bazinio žodžio END IF. Sąlygos instrukcijos IF...THEN darbo srityje nurodytos komandos (Veiksmas1) nevykdomos. Kai kada tipinės instrukcijos IF...THEN struktūroje vartojamas bazinis žodis ELSE. Juo vidinė sąlygos instrukcijos IF...THEN erdvė dalinama į dvi dalis. Pirmojoje dalyje tarp bazinių žodžių IF...THEN ir ELSE, nurodomos komandos (Veiksmas1), kurios bus vykdomos tenkinus pirmąją sąlygą (Sąlygą1). Antrojoje dalyje tarp bazinių žodžių ELSE ir END IF, pateikiamos kitos komandos (Veiksmas2). Jas programa atliks, jei instrukcijos IF..THEN pirmoji sąlyga (Sąlyga1) bus netenkinama ( False ). Atlikus komandas (Veiksmas1) arba (Veiksmas2), baigiamas darbas su sąlygos instrukcija IF...THEN ir programos vykdymas grąžinamas į pagrindinę kryptį, programos kodą žemiau bazinio žodžio END IF. Bazinis žodis ELSEIF jungia bazinį žodį ELSE ir sąlygos instrukciją IF...THEN. Tokia instrukcijos IF...THEN struktūra naudojama, kai programos vykdymo alternatyvų yra daugiau. Joje suformuojama ir pateikiama ne viena loginė sąlyga (Sąlyga1, Sąlyga2, Sąlyga3...) (22 pav.). Visual Basic jas tikrina iš eilės iki pirmosios tenkinamos sąlygos, iki pirmojo sugeneruoto atsakymo True (Taip). Tuomet, atlikus atitinkamas komandas (Veiksmas1, Veiksmas2 arba Veiksmas3...), programa baigia darbą su sąlygos instrukcija IF...THEN ir jos vykdymas grąžinamas į pagrindinę kryptį, programos kodą žemiau bazinio žodžio END IF. 56

57 IF Sąlyga1 THEN Veiksmas1 ELSEIF Sąlyga2 THEN Veiksmas2 ELSEIF Sąlyga3 THEN Veiksmas3 END IF a b IF Sąlyga1 THEN Veiksmas1 ELSEIF Sąlyga2 THEN Veiksmas2 ELSE Veiksmas3 END IF c 22 pav. Blokinė sąlygos instrukcija IF...THEN: a blokinės instrukcijos sintaksė; b blokinės instrukcijos struktūra (algoritmas), c blokinės instrukcijos su baziniu žodžiu ELSE sintaksė; d blokinės instrukcijos su baziniu žodžiu ELSE struktūra (algoritmas) Sąlygos instrukcijų IF...THEN kiekis programoje neribojamas. Jis priklauso nuo programos ir vykdomų veiksmų sudėtingumo, galimos veiksmų alternatyvų gausos. Instrukcijos IF...THEN programoje gali būti išdėstytos nuosekliai viena paskui kitą, arba lygiagrečiai viena kitos viduje (23 pav). d 57

58 a 23 pav. Sąlygos instrukcijų IF...THEN išdėstymo programoje būdai: a nuoseklus; b lygiagretus Naudojant sąlygos instrukcijas IF...THEN, svarbu įsidėmėti, kad atskirų instrukcijų IF...THEN ribos negali susikirsti. Kiekviena instrukcija IF...THEN turi pradžios eilutę IF Sąlyga... THEN ir pabaigos eilutę END IF. Abi šios eilutės negali būti pateiktos skirtingose sąlygos instrukcijose IF...THEN Ciklo instrukcijos Ciklas yra seka kartojamų veiksmų. Juos programa ar modelis vykdo tol, kol neatliekamas tam tikras pakartojimų skaičius arba neįvykdoma nurodyta sąlygą. Kartojami veiksmai ir ciklo vykdymo sąlyga suprantami kaip tam tikras vientisas programos kodo fragmentas, vadinamas ciklo instrukcija Ciklo instrukcija FOR...NEXT Ciklo instrukcijos FOR...NEXT vykdymo sąlygoje nurodomas pakartojimų skaičius. Todėl šis ciklas kuriant programą naudojamas tada, kai žinomas ciklo kartojimų skaičius. Ciklo instrukcijos FOR...NEXT sintaksė: 58 b

59 FOR Kintamasis = Išraiška1 TO Išraiška2 [STEP Išraiška3] Veiksmas NEXT Kintamasis Instrukcijos FOR...NEXT struktūra (algoritmas) pateikta 24 paveiksle. Bazinis žodis FOR žymi ciklo instrukcijos FOR...NEXT pradžią ir ciklo pradžios eilutę, kurioje pateikiama ciklo vykdymo sąlygas apibrėžianti informacija: nurodomas ciklo parametras (Kintamasis), ciklo pradžios riba parametro pradinė riba (Išraiška1), pabaigos riba (Išraiška2) ir ciklo parametro reikšmės kitimo žingsnis (Išraiška3). Ciklo parametro kitimo žingsnį galima praleisti ir nenurodyti. Tuomet programa priima, kad parametro reikšmė kinta žingsniu lygiu vienetui. Ciklo pabaiga pažymima baziniu žodžiu NEXT. Perskaičiusi šią komandą, programa grąžina veiksmą į ciklo pradžios eilutę. Vėl tikrinama ciklo parametro reikšmė ir sprendžiama, ar ciklas privalo būti nutrauktas, ar kartojamas dar kartą? 24 pav. Ciklo instrukcijos FOR...NEXT struktūra (algoritmas) 59

60 Ciklo instrukcijos FOR...NEXT vykdymo metu kartojamas programos kodo fragmentas, rašomas tarp ciklo pradžią ir pabaigą žyminčių eilučių (Veiksmas). Tai darbinė ciklo dalis. Ji gali būti sudaryti tik iš vienos komandos (kodo eilutės) arba jų grupės. Dirbant su ciklais negalima pamiršti ciklo parametro reikšmės keitimo komandos, todėl ciklo viduje šalia kitų komandų rekomenduojama nurodyti veiksmus ciklo parametrui keisti. Priešingu atveju ciklas bus kartojamas iki begalybės ir programa pakibs. Ciklo instrukcijos FOR...NEXT vykdymas gali būti nutraukiamas dviem būdais. Netenkinant ciklo vykdymo sąlygos, programa aplenks šį programos kodo fragmentą ir toliau tęs programos kodo vykdymą pagrindinėje kryptyje, žemiau bazinio žodžio NEXT. Šiuo būdu ciklo vykdymas bus baigtas natūraliai. Naudojant bazinį žodį EXIT FOR, ciklo vykdymą galima nutraukti priverstinai. Ši komanda paprastai taikoma su sąlygos instrukcija IF...THEN, kuri apibrėžia bazinio žodžio EXIT FOR aktyvavimo sąlygas, ir yra įterpiama į darbinę ciklo dalį. Ciklo instrukcijų FOR...NEXT kiekis programoje neribojamas. Jos gali būti išdėstytos nuosekliai viena paskui kitą, arba lygiagrečiai viena kitos viduje. Tačiau atskirų instrukcijų FOR...NEXT ribos negali susikirsti Ciklo instrukcija DO...LOOP Ciklo instrukcijos DO...LOOP yra lankstesnės nei prieš tai aprašytos instrukcijos FOR...NEXT ir kontroliuojamos pagal ciklo pradžios arba ciklo pabaigos sąlygas. Jų kiekis programoje ar modelyje neribojamas, tačiau atskirų instrukcijų ribos taip pat negali susikirsti. Galimos keturios instrukcijos DO...LOOP struktūros (25 pav). Jos skiriasi naudojamu baziniu žodžiu WHILE ar UNTIL, ir jų vieta ciklo instrukcijos struktūroje: Ciklo pradžia ir pabaiga žymima baziniais žodžiais DO ir LOOP. Tarp jų teikiama ciklo instrukcijos DO...LOOP darbinė dalis (Veiksmas), kartojama komanda arba komandų grupė. Programa jas vykdo, kol pasiekiama komandos eilutė su baziniu žodžiu LOOP. Perskaičiusi šią komandą, programa grąžina veiksmą į ciklo pradžios eilutę ir tikrina sąlygą. Tuomet ciklas kartojamas dar kartą arba nutraukiamas aplen- 60

61 kiamas šis programos kodo fragmentas ir toliau tęsiamas programos kodo vykdymas pagrindinėje kryptyje, žemiau bazinio žodžio LOOP. DO WHILE Sąlyga DO UNTIL Sąlyga Veiksmas Veiksmas LOOP LOOP a DO Veiksmas LOOP WHILE Sąlyga b DO Veiksmas LOOP UNTIL Sąlyga c d 25 pav. Ciklo instrukcijos DO...LOOP variantų sintaksės ir struktūros (algoritmai): a su baziniu žodžiu WHILE instrukcijos pradžioje; b su baziniu žodžiu UNTIL instrukcijos pradžioje, c su baziniu žodžiu WHILE instrukcijos pabaigoje; d su baziniu žodžiu UNTIL instrukcijos pabaigoje 61

62 Ciklo parametras, pagal kurį kontroliuojama instrukcija, nurodomas vykdymo sąlygoje (Sąlyga). Jo reikšmei vertinti tuo pačiu pateikiama atskaitinė ciklo parametro reikšmė, pavyzdžiui: DO WHILE Suma <= Pavyzdyje Suma yra ciklo parametras, 1000 atskaitinė ciklo parametro reikšmė, <= palyginimo operatorius ciklo parametro santykiui su atskaitine reikšme nurodyti. Svarbu atkreipti dėmesį, kad ciklo parametras kistų. Priešingu atveju, aktyvuotas ciklas bus begalinis. Todėl ciklo darbinėje dalyje greta kitų komandų taip pat rekomenduojama nurodyti veiksmus ciklo parametrui keisti. Ciklo instrukcija DO...LOOP su baziniu žodžiu WHILE valdoma pagal ciklo pradžios sąlygą, t. y. ciklas vykdomas, jei nurodyta sąlyga yra tenkinama. Vietoj bazinio žodžio WHILE gali būti vartojamas bazinis žodis UNTIL. Tuomet instrukcijos DO...LOOP funkcionavimas organizuojamas pagal ciklo pabaigos sąlygą. Instrukcija vykdoma, kol nurodyta sąlyga netenkinama, o ją patenkinus nutraukiamas. Kaip pastebėjote 25 paveiksle, instrukcijoje DO...LOOP ciklo vykdymo sąlyga gali būti nurodoma dvejopai: ciklo pradžios eilutėje po bazinio žodžio DO arba ciklo pabaigos eilutėje po bazinio žodžio LOOP. Pirmuoju atveju ciklo vykdymo sąlyga tikrinama ciklo pradžioje. Jei ji netenkinama, programa instrukcijos DO...LOOP darbinę dalį (Veiksmas) aplenkia. Programos vykdymas iškart perkeliamas už ciklo ribų žemiau bazinio žodžio LOOP. Antruoju atveju, kai sąlyga nurodoma ciklo pabaigoje po bazinio žodžio LOOP, toks tikrinimas atliekamas ciklo pabaigoje. Tuo yra pasiekiama, kad ciklo instrukcijos DO...LOOP darbinėje dalyje nurodytos komandos būtų įvykdytos bent kartą. Tik tuomet sprendžiama, ar grįžti atgal į eilutę su baziniu žodžiu DO ir vykdyti ciklą dar kartą, ar ciklo nekartoti ir tęsti programos kodo vykdymą pagrindinėje kryptyje, žemiau bazinio žodžio LOOP. Ciklo instrukcijai DO...LOOP nutraukti taip pat gali būti naudojama speciali komanda su baziniu žodžiu EXIT DO. Jos naudojimo sąlygos ir veikimo principas yra analogiškas komandai su baziniu žodžiu EXIT FOR. 62

63 4. ALGORITMAS IR ALGORITMŲ SCHEMOS Algoritmas tai veiksmų ir instrukcijų sąrašas, nurodantis operacijas ir jų atlikimo seką programoje arba modelyje. Algoritmo pateikimas leidžia lengviau suvokti programos arba modelio struktūrą ir veikimo logiką. Šiuo metu dažniausiai paplitusios ir braižomos grafinėsblokinės (simbolinės) algoritmų schemos. Jos užima daugiau vietos, bet yra lengvai skaitomos ir praktiškai nereikalauja jokių pradinių įgūdžių joms rengti bei suvokti. Dėl šių priežasčių ypač mėgiamos pradedančiųjų programuotojų. Braižant grafines-blokines algoritmo schemas, naudojami šeši grafiniai simboliai, kurių kiekvienas atitinka tam tikrą veiksmo tipą (8 lentelė), o juos jungiančios linijos veiksmų atlikimo tvarką. 8 lentelė. Grafiniai simboliai Eil. Grafinis simbolis Nr. Žymėjimas Pavadinimas ir paskirtis 1 Elipsė Pradžia-pabaiga: nurodoma programos vykdymo pradžia ir pabaiga. Grafinio simbolio viduje įrašomas žodis Pradžia ir programos pavadinimas (trumpinys) arba žodis Pabaiga 2 Lygiagretainis Įvedimas-išvedimas-priskyrimas: nurodomi naudojamų kintamųjų pavadinimai ir įvedamos, priskiriamos arba išvedamos jų reikšmės. Grafinio simbolio viduje surašomi kintamųjų žymėjimai. 3 Stačiakampis Veiksmų vykdymas: nurodomos ir vaizduojamos skaičiavimų ir kitų veiksmų operacijos. Grafinio simbolio viduje surašomi skaičiuojamų kintamųjų žymėjimai arba skaičiavimo formulės, jei yra pakankamai vietos. 4 Rombas Sąlyga: tikrinama loginė arba aritmetinė sąlyga, lemianti tolesnių skaičiavimų kryptį. Grafinio simbolio viduje įrašoma tikrinama sąlyga. 63

64 Eil. Grafinis simbolis Nr. Žymėjimas Pavadinimas ir paskirtis 5 Stačiakampis su užbrėžtais galais Paprogramė: nurodoma, į kokią paprogramę perkeliamas programos arba atskiro veiksmo vykdymas. Grafinio simbolio viduje įrašomas paprogramės pavadinimas, į programą grąžinamas kintamasis. 6 Apskritimas Jungtis: nurodoma nutrauktos linijos tarp grafinių simbolių pradžia ir pabaiga. Jungtys numeruojamos arabiškais skaičiais, įrašant juos į apskritimą. Algoritmo schemose grafiniai simboliai gali būti numeruojami. Tai palengvina algoritmo aprašymą aiškinamuosiuose tekstuose. Grafiniai simboliai numeruojami skaičiais, raidėmis arba raidžių ir skaičių junginiais (26 pav.) pav. Grafinis algoritmo simbolis su žymėjimu Siekiant aiškumo, simbolio viduje sutrumpintai nurodomos atliekamos operacijos arba, taupant vietą, pagrindinė operacija. Reikšmių kintamiesiems priskyrimo operacijoms pavaizduoti naudojamas žymėjimas :=, pavyzdžiui: y:=4; y:=a+2. Grafinius simbolius jungiančios linijos braižomos be rodyklių ir tik vertikaliai arba horizontaliai (27 pav.). 64

65 27 pav. Programos algoritmas: J2 laikymo režimas; z režimo trukmė paromis; Trg užsiduota gydymo režimo trukmė; Trat užsiduota atšaldymo režimo trukmė; Trl užsiduota laikymo režimo trukmė; Trp užsiduota pavasarinio režimo trukmė Veiksmai algoritmuose paprastai vaizduojami iš viršaus į apačią ir iš kairės į dešinę. Tik tuomet, jeigu atliekamų veiksmų kryptis yra kita, jungiančios linijos algoritmų schemose braižomos su rodykle, rodančia veiksmų atlikimo eiliškumą. Pagal struktūrą algoritmai gali būti tiesiniai, išsišakojantys ir cikliniai (28 pav.). Paprasčiausi yra tiesiniai algoritmai, vaizduojantys nuosekliai vienas po kito sekančius veiksmus. Programų ar modelių, kuriuose yra alternatyvų ir, priklausomai nuo apibrėžtų sąlygų, gali bū- 65

66 ti, pavyzdžiui, skaičiuojama pagal vieną arba kitą formulę, algoritmai yra išsišakojantys. Cikliniai algoritmai braižomi tuomet, kai tie patys veiksmai programoje ar modelyje kartojami nurodytą ciklų skaičių arba kol bus patenkintos apibrėžtos sąlygos. a b 28 pav. Skirtingų struktūrų algoritmai: a tiesinis; b išsišakojantis; c ciklinis c 66

67 Programose ar modeliuose, kuriose atliekami cikliniai veiksmai, nuolat tikrinamos ciklo vykdymo sąlygos, t. y. ciklo parametro reikšmė arba būsena. Todėl ciklo viduje, šalia darbinės ciklo dalies, kurioje atliekami pagrindiniai skaičiavimai, būtina numatyti veiksmus ciklo parametrui keisti, pavyzdžiui, x := x + 1 (28c pav.). Priešingu atveju ciklas bus kartojamas iki begalybės, programa pakibs. Skyriuje apžvelgti tiesiniai, išsišakojantys ir cikliniai algoritmai, kurie yra nesudėtingi ir pristato klasikinius algoritmų programų vykdymo, variantus. Praktikoje retai kuriamos tokios paprastos programos ar modeliai. Dažniausiai toje pačioje programoje ar modelyje atliekami įvairūs veiksmai ir jų sekai pavaizduoti naudojami sudėtingesni mišrios struktūros algoritmai, jungiantys į visumą skirtingų struktūrų algoritmus. 67

68 LITERATŪRA 1. Halvorson M. Microsoft Visual Basic 2010: Step by Step.: Accompanying Media, P. ISBN 13: ; ISBN 10: Ostreika A. Programavimo Visual Basic pagrindai. Kaunas: Technologija, p. 3. Slivinskas V. Šiuolaikinių informacinių sistemų programavimas Visual Basic kalba. Vilnius: BMK, p. 4. Šulcas V. Visual Basic 6 gramatika. Kaunas: Smaltijos leidykla, p. 5. Браун С. Visual Basic 5 с самого начала. Санкт-Петербург: Питер, с 6. Шевякова Д. А., Степанов А. М., Карпов. Г., Тихонов А. Ф. Самоучитель Visual Basic Санкт-Петербург: БХВ-Петербург, XIII, 552 с. 7. айтингер М., Муч Г. Visual Basic 6: полное руководство. Киев: ВНV, с 8. Культин Н. Visual Basic: освой самостоятельно. Санкт- Петербург: BHV-СПб, с 68

69 1 priedas. Programos Grandinės stiprumo įvertinimas vizualinio modelio langas Pastaba: Programos Grandinės stiprumo įvertinimas vizualinio modelio lange esančių objektų laukeliuose nurodyti objektų pavadinimai Name. 69

70 2 priedas. Programos Grandinės stiprumo įvertinimas vizualinio modelio kodas 'formos ribose veikiančiu kintamuoju paskelbimas Public k As Integer Private Sub btn_baigti_click() 'isjungiamas taimeris Timer.Enabled = False End End Sub Private Sub btn_kartoti_click() 'isjungiamas taimeris Timer.Enabled = False txt_4.backcolor = &HFFFFFF 'nukreipiame i papragrograme, kurioje sutvarkomas objektu aktyvumas Tvarkyti End Sub Private Sub btn_skaiciuoti_click() 'paskelbiami kintamiji Dim Fmax As Single Dim Fdin As Single Dim F As Single Dim p As Integer Dim v As Single Dim K1 As Integer Dim K2 As Single Dim Fsk As Single 'isjungiamas taimeris Timer.Enabled = False txt_4.backcolor = &HFFFFFF 'padaromi aktyvus rezultato isvedimo laukai, tekstiniai langeliai txt_1.enabled = True txt_2.enabled = True txt_3.enabled = True txt_4.enabled = True 70

71 'kintamiesiems suteikiamos reiksmes Fmax = Val(txt_Fmax.Text) Fdin = Val(txt_Fdin.Text) v = Val(txt_v.Text) p = Val(list_p.Text) F = Val(list_F.Text) 'atsargos koeficientas. faktiskai jis parenkamas pagal grandines trasos sudetinguma K1 = 5 'suteikiam reiksme koeficientui, kuris ivertina grandiniu skaiciu If opt_1.value - True Then K2 = 1 Else K2 = 0.6 End If 'atsizvelgiam i grandines greiti ir skaiciuojame Fsk If v >= 0.2 Then Fsk = K1 * K2 * (Fmax + Fdin) Else Fsk = K1 * K2 * Fmax End If 'isvedami rezultatai txt_1.text = Str$(F) txt_3.text = Str$(Fsk) If F > Fsk Then txt_2.text = ">" txt_4.text = "Grandine parinkta teisingai" ElseIf F = Fsk Then txt_2.text = "=" txt_4.text = "Grandine parinkta teisingai" ElseIf F < Fsk Then txt_2.text = "<" txt_4.text = "Grandine parinkta neteisingai. Grandine nutruks" Timer.Enabled = True End If 'sutvarkomas mygtuku aktyvumas btn_skaiciuoti.enabled = False btn_kartoti.enabled = True btn_baigti.enabled = False 71

72 End Sub Private Sub combo_click() Dim p As Integer 'kai pasirenkamas garndines tipas, sutvarkomi objektai freime "grandine" txt_grand.enabled = True txt_grand.text = combo.list(combo.listindex) list_p.clear list_p.enabled = True For p = 40 To 160 Step 20 list_p.additem p Next list_f.clear list_f.enabled = True list_f.additem list_f.additem list_f.additem list_f.additem list_f.additem End Sub Private Sub combo_gotfocus() 'uzpildome sarasa combo.clear combo.additem "suvirinta" combo.additem "ploksteline" combo.additem "lynas" End Sub Private Sub Form_Load() 'nukreipiame i papragrograme, kurioje sutvarkomas objektu aktyvumas Tvarkyti End Sub Private Sub Tvarkyti() 'sutvarkomi objektu aktyvumai ir irasai txt_fmax.text = "" txt_fdin.text = "" txt_v.text = "" opt_1.value = True 72

73 opt_2.value = False combo.clear combo.additem "Grandines tipas" combo.listindex = 0 txt_grand.enabled = False txt_grand.text = "" list_p.clear list_p.enabled = False list_f.clear list_f.enabled = False txt_1.text = "" txt_2.text = "" txt_3.text = "" txt_4.text = "" txt_1.enabled = False txt_2.enabled = False txt_3.enabled = False txt_4.enabled = False btn_skaiciuoti.enabled = True btn_kartoti.enabled = False btn_baigti.enabled = True End Sub Private Sub Timer_Timer() 'periodiskai keiciama rezultato isvedimo laukelio fono spalva If k = 1 Then txt_4.backcolor = &HFF& k = 0 Beep Exit Sub Else txt_4.backcolor = &HFFFFFF k = 1 End If End Sub Pastaba: Simboliu ' programos kode išskiriami komentarai. Tekstą, kuris parašomas už minėto ženklo, paleista programa neskaito ir nepriima kaip komandinę eilutę. 73

74 3 priedas. Programos Kasos aparatas vizualinio modelio langas Pastaba: Programos Grandinės stiprumo įvertinimas vizualinio modelio lange esančių objektų laukeliuose nurodyti objektų pavadinimai Name. 74

Elektroninis.lt šakninių sertifikatų diegimas

Elektroninis.lt šakninių sertifikatų diegimas Elektroninis.lt šakninių sertifikatų diegimas Ši instrukcija aprašo, kaip į kompiuterį įdiegti šakninius elektroninis.lt sertifikatus. Diegimo darbus galima atlikti turint kompiuterio administratoriaus

More information

C++ programavimo kalba. Konstruktorius, destruktorius, klasių metodų modifikatoriai, objektų masyvai (4 paskaita)

C++ programavimo kalba. Konstruktorius, destruktorius, klasių metodų modifikatoriai, objektų masyvai (4 paskaita) C++ programavimo kalba Konstruktorius, destruktorius, klasių metodų modifikatoriai, objektų masyvai (4 paskaita) Konstruktorius Sukuriant objektą, jo duomenims paprastai turi būti priskiriamos pradinės

More information

Kas yra masyvas? Skaičių masyvo A reikšmės: Elementų indeksai (numeriai): Užrašymas Turbo Paskaliu: A[1] A[2] A[3] A[4] A[5]

Kas yra masyvas? Skaičių masyvo A reikšmės: Elementų indeksai (numeriai): Užrašymas Turbo Paskaliu: A[1] A[2] A[3] A[4] A[5] Masyvas 2013 1 Vienmatis masyvas Veiksmai su masyvo elementais: reikšmių priskyrimas ir išvedimas, paieška, rikiavimas. Masyvų perdavimas procedūros (funkcijos) parametrais. 2 Kas yra masyvas? Masyvu vadinamas

More information

C programavimo kalba. 3 paskaita (Sąlygos ir ciklo operatoriai, funkcija scanf() )

C programavimo kalba. 3 paskaita (Sąlygos ir ciklo operatoriai, funkcija scanf() ) C programavimo kalba 3 paskaita (Sąlygos ir ciklo operatoriai, funkcija scanf() ) Sąlygos operatorius if - else Sąlygos operatoriai skirti perduoti programos vykdymą vienai ar kitai programos šakai. Operatorius

More information

Struktūrų sintaksė Struktūra tai vienodo arba skirtingo tipo kintamųjų rinkinys. Sintaksė: struct vardas { ; type1 var1; type2 var2;... typen varn; //

Struktūrų sintaksė Struktūra tai vienodo arba skirtingo tipo kintamųjų rinkinys. Sintaksė: struct vardas { ; type1 var1; type2 var2;... typen varn; // C programavimo kalba 10 paskaita (Struktūros) Struktūrų sintaksė Struktūra tai vienodo arba skirtingo tipo kintamųjų rinkinys. Sintaksė: struct vardas { ; type1 var1; type2 var2;... typen varn; // Gale

More information

JAVA pagrindai Lek. Liudas Drejeris

JAVA pagrindai Lek. Liudas Drejeris JAVA pagrindai Lek. Liudas Drejeris Programa (1) Programa, tai eilė instrukcijų (vadinamų programiniais sakiniais), kurie vykdomi paeiliui, kol gaunamas norimas rezultatas. Programa (2) Programa (2) /*

More information

Parengė ITMM Artūras Šakalys 1

Parengė ITMM Artūras Šakalys 1 2014.02.02 Parengė ITMM Artūras Šakalys 1 2014.02.02 Parengė ITMM Artūras Šakalys 2 Kaip suprantame masyvą? Pavyzdys: Peteliškių šeima; Gėlių laukas; 2014.02.02 Parengė ITMM Artūras Šakalys 3 Kaip suprasti

More information

El. pašto konfigūravimas

El. pašto konfigūravimas El. pašto konfigūravimas Outlook Express (integruota Windows XP) elektroninio pašto klientas Žemiau pateikta instrukcija, kaip sukonfigūruoti savo elektroninį paštą vartotojams, turintiems elektroninio

More information

HTML dokumentai. Praktinės užduotys

HTML dokumentai. Praktinės užduotys HTML dokumentai Praktinės užduotys 1. DzSoft PHP Editor šablonai Pakeiskite HTML šabloną į: ... Programos

More information

Come to the TypeScript

Come to the TypeScript Come to the TypeScript we have type hinting! Sergej Kurakin Sergej Kurakin Amžius: 36 Dirbu: NFQ Technologies Pareigos: Programuotojas Programuoti pradėjau mokytis 1996 metais. Programuotoju dirbu nuo

More information

Paprastų lentelių kūrimas

Paprastų lentelių kūrimas HTML lentelės Lentelės Informacijos pateikimas HTML-dokumentuose lentelių pagalba yra vienas iš dažniausiai naudojamų. HTML kalboje lentelės yra naudojamos ne tik tradiciškai, kaip duomenų pateikimo metodas,

More information

DUOMENŲ STRUKTŪROS IR ALGORITMAI. Rūšiavimo algoritmai (įterpimo, burbulo, išrinkimo)

DUOMENŲ STRUKTŪROS IR ALGORITMAI. Rūšiavimo algoritmai (įterpimo, burbulo, išrinkimo) DUOMENŲ STRUKTŪROS IR ALGORITMAI Rūšiavimo algoritmai (įterpimo, burbulo, išrinkimo) Rūšiavimo veiksmas Kasdieniniame gyvenime mes dažnai rūšiuojame: Failus kataloguose Katalogus lokaliame diske Kasdienines

More information

C programavimo kalba. 5 paskaita (Funkcijos, masyvai)

C programavimo kalba. 5 paskaita (Funkcijos, masyvai) C programavimo kalba 5 paskaita (Funkcijos, masyvai) Funkcijų pavyzdys // Skaičių lyginimo programa #include void pmax(int, int); /* prototipas */ int main() {int i, j; for (i = -10; i

More information

PHP PROGRAMOS EIGOS VYKDYMO VALDYMAS

PHP PROGRAMOS EIGOS VYKDYMO VALDYMAS PHP PROGRAMOS EIGOS VYKDYMO VALDYMAS Sąlygos sakiniai PHP skriptų vykdymo eigą galite valdyti naudodami sąlygos sakinius. Sąlygos sakiniai tai loginės struktūros, kuriose saugomas kodas, įvykdomas įgyvendinus

More information

Informacijos apsaugos standartai serija

Informacijos apsaugos standartai serija Informacijos apsaugos standartai 27000 serija Pareng : Marius Celskis www.isec.lt 2007 m. balandis 12 d. ISO 27000 serija 2 iš 9 Tarptautin standartizacijos organizacija ISO informacijos apsaugos standartizavimui

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba Operatorių perkrovimas (7 paskaita) Operatorių perdengimas Programavimo kalbose naudojami operatoriai pasižymi polimorfizmu (daugiavariantiškumu). Kaip pavyzdys gali būti operatorius

More information

Amadeus On-Line Helpdesk

Amadeus On-Line Helpdesk Amadeus On-Line Helpdesk Vartotojo instrukcija Skirta kelionių agentūroms Turinys Įžanga... 3 Jungimasis prie Amadeus Helpdesk... 3 Patarimai ir pastabos... 7 Dokumento valdymas 2007 Apsauga Viešas Įmon

More information

2-3 PASKAITOS. Paprasčiausia programa:

2-3 PASKAITOS. Paprasčiausia programa: 2-3 PASKAITOS Turinys: Paprasčiausios programos pavyzdys. Darbas su programavimo terpėmis. Duomenys. Duomenų tipai ir charakteristikos. Paprasčiausia įvestis/išvestis. Paprasčiausia programa: /* Pirmoji

More information

WWW aplikacijų saugumas 2

WWW aplikacijų saugumas 2 WWW aplikacijų saugumas 2 Rolandas Griškevičius rolandas.griskevicius@fm.vgtu.lt MSN: rgrisha@hotmail.com http://fmf.vgtu.lt/~rgriskevicius 2010-11-26 R. Griškevičius, Saugus programavimas, VGTU, 2009

More information

Pažintis su C++ Builder

Pažintis su C++ Builder Pažintis su C++ Builder Turinys C++ Builder aplinka... 2 Komponentai, jų savybės ir metodai, įvykiai... 2 Programos objektų savybių keitimas... 4 Vartotojo programos kūrimas, saugojimas ir vykdymas...

More information

WVGA :9 None. This is the only supported resolution for Windows Phone OS 7.1.

WVGA :9 None. This is the only supported resolution for Windows Phone OS 7.1. Windows Phone Palaikomi ekranai Resolution Resolution Aspect ratio Delta from Windows Phone OS 7.1 Scaled resolution WVGA 480 800 15:9 None. This is the only supported resolution for Windows Phone OS 7.1.

More information

Gijos. Gijų modelis Javoje. R.Vaicekauskas, OP, 2017

Gijos. Gijų modelis Javoje. R.Vaicekauskas, OP, 2017 Gijos Gijų modelis Javoje R.Vaicekauskas, OP, 2017 1 Turinys Motyvacija Sukūrimas Valdymas Sinchronizacija Susijusios klasės 2 Motyvacija Gijos reikalingos tam, kad išreikšti lygiagretumą vieno proceso

More information

ios Uždara operacinė sistema skirta tik Apple įrenginiams: iphone ipad ipod touch Apple TV

ios Uždara operacinė sistema skirta tik Apple įrenginiams: iphone ipad ipod touch Apple TV ios Uždara operacinė sistema skirta tik Apple įrenginiams: iphone ipad ipod touch Apple TV Pagrindas OS X, skirtas ARM įrenginiams Programavimo aplinka: XCode ir Objective-C Programavimo kompiuteris -

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba Rodyklė this, C++ string klasė (9 paskaita) Rodyklėthis Visos objekto funkcijos gali naudotis rodykle this, kuri rodo į patį objektą. Tokiu būdu kiekviena funkcija gali rasti objekto,

More information

Pasirenkamojo modulio kūrybinio darbo atlikimas ir vertinimas

Pasirenkamojo modulio kūrybinio darbo atlikimas ir vertinimas Pasirenkamojo modulio kūrybinio darbo atlikimas ir vertinimas Pasirenkamojo modulio kūrybinis darbas atliekamas keliais etapais: kūrybinio darbo temos (problemos / užduoties) pasirinkimas ir derinimas

More information

Kodėl programą sudaro daug failų? Sukurtos tipinės funkcijų galėtų būti panaudojamos dar kartą; Sudaroma aiškesnė programos struktūra; Sudaroma galimy

Kodėl programą sudaro daug failų? Sukurtos tipinės funkcijų galėtų būti panaudojamos dar kartą; Sudaroma aiškesnė programos struktūra; Sudaroma galimy C programavimo kalba 12 paskaita (Daugiafailinės programos, laiko ir datos funkcijos) Kodėl programą sudaro daug failų? Sukurtos tipinės funkcijų galėtų būti panaudojamos dar kartą; Sudaroma aiškesnė programos

More information

Buferio perpildymo klaida Įvadas, techniniai klausimai

Buferio perpildymo klaida Įvadas, techniniai klausimai Buferio perpildymo klaida Įvadas, techniniai klausimai Rolandas Griškevičius rolandas.griskevicius@fm.vgtu.lt MSN: rgrisha@hotmail.com http://fmf.vgtu.lt/~rgriskevicius 2009-10-16 R. Griškevičius, Saugus

More information

Apletai (įskiepiai) Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras.

Apletai (įskiepiai) Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras. Apletai (įskiepiai) Lekt. dr. Pijus Kasparaitis pkasparaitis@yahoo.com 2008-2009 m. m. pavasario semestras Java grafinės bibliotekos AWT (Abstract Window Toolkit) Swing 2009.04.09 P.Kasparaitis. Objektinis

More information

Paveikslėlių sąrašas

Paveikslėlių sąrašas TURINYS 1 1. Elektroninis paštas...3 1.1. Įvadas...3 1.2. Bendrieji principai...3 1.3. Microsoft Outlook Express programą...5 1.3.1. Darbo lango elementai...6 1.3.2. Elektroninio pašto laišku išsiuntimas

More information

Paveikslėliai. Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras.

Paveikslėliai. Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras. Paveikslėliai Lekt. dr. Pijus Kasparaitis pkasparaitis@yahoo.com 2008-2009 m. m. pavasario semestras Klasė Image Priklauso paketui java.awt Abstrakti klasė paveldėta iš Object Tai visų grafinių paveikslėlių

More information

KAUNO TECHNOLOGIJOS UNIVERSITETAS

KAUNO TECHNOLOGIJOS UNIVERSITETAS KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS VALDIKLIŲ PROGRAMAVIMAS STANDARTO IEC 61131-3 KALBOMIS Referatas Atliko: Kęstutis Valinčius Kaunas 2011 Turinys 1 Įvadas... 3 2 Struktūriniai elementai...

More information

Masyvai Javoje. Masyvai. Objektų talpyklos. Masyvo tipas. Deklaravimo pavyzdžiai. Deklaracija ir sukūrimas. Masyvo superklas - Object

Masyvai Javoje. Masyvai. Objektų talpyklos. Masyvo tipas. Deklaravimo pavyzdžiai. Deklaracija ir sukūrimas. Masyvo superklas - Object Masyvai Javoje Masyvai. Objektų talpyklos (Arrays, collections) Dinamiškai sukuriami java objektai iš anksto apibr žtam komponenčių skaičiui saugoti. Komponent s g.b. primityvaus tipo arba nuorodos tipo

More information

PK architektūra. Microsoft Windows 98 aplinka. I.Bendrosios žinios apie personalinius kompiuterius

PK architektūra. Microsoft Windows 98 aplinka. I.Bendrosios žinios apie personalinius kompiuterius PK architektūra Microsoft Windows 98 aplinka I.Bendrosios žinios apie personalinius kompiuterius Asmeninių kompiuterių tipai Staliniai (desktop). Susideda iš kelių atskirų dalių, lengvai telpa ant stalo.

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba I/O biblioteka (2 paskaita) I/O operatoriai Išvedimo > #include using namespace std; void main() { float A = 18.236; cout

More information

I. FFDATA STRUKTŪROS APRAŠYMAS

I. FFDATA STRUKTŪROS APRAŠYMAS PATVIRTINTA Valstybinio socialinio draudimo fondo valdybos prie Socialinės apsaugos ir darbo ministerijos direktoriaus 2010 m. birželio 4 d. Nr. V-243 (Valstybinio socialinio draudimo fondo valdybos prie

More information

Polimorfizmas. Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras.

Polimorfizmas. Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras. Polimorfizmas Lekt. dr. Pijus Kasparaitis pkasparaitis@yahoo.com 2009-2010 m. m. pavasario semestras Dar apie paveldėjimą Java kalboje kiekvienas paveldėtos klasės objektas gali būti naudojamas ten, kur

More information

Trumpai-ilga istorija

Trumpai-ilga istorija Įvadas į Web Services Kas yra Web Service? Kas ką žino??? 70-ieji: Mainframe Trumpai-ilga istorija 80-ieji: Client-Server Istorijos 90-ieji: Web 2000: SOA 2010: Cloud Computing Šaltinis: Sergejus Barinovas,

More information

Uždavinių sprendimas MATLAB aplinkoje

Uždavinių sprendimas MATLAB aplinkoje Operacijų tyrimas. Įvadas. Laboratoriniai darbai 1 Uždavinių sprimas MATLAB aplinkoje Matlab tai interaktyvi sistema, skirta atlikti inžinerinius bei mokslinius skaičiavimus. Sistemos aplinkoje galima

More information

2017 m. pagrindinės sesijos informacinių technologijų valstybinio brandos egzamino programavimo užduoties galimi sprendimai

2017 m. pagrindinės sesijos informacinių technologijų valstybinio brandos egzamino programavimo užduoties galimi sprendimai Pavyzdys A 2017 m. pagrindinės sesijos informacinių technologijų valstybinio brandos egzamino programavimo užduoties galimi sprendimai int konvertuojamas(int skaic, int id); char konvertuojamas2(int dal);

More information

Lokalizuojamųjų programinės įrangos išteklių metainformacijos formalizavimo metodas

Lokalizuojamųjų programinės įrangos išteklių metainformacijos formalizavimo metodas ISSN 1392-0561. INFORMACIJOS MOKSLAI. 2009 50 Lokalizuojamųjų programinės įrangos išteklių metainformacijos formalizavimo metodas Tatjana Jevsikova Matematikos ir informatikos instituto doktorantė Institute

More information

Redis Ma as, greitas, galingas. Specialiai VilniusPHP

Redis Ma as, greitas, galingas. Specialiai VilniusPHP Redis Ma as, greitas, galingas Specialiai VilniusPHP 2013.06.06 Sergej Kurakin Na, Jūs mane jau nekarta matėte, tai nieko nesakysiu apie save. Kaip aš susipa inau! Tai buvo prieš keletą metų! Projektas

More information

KOMPIUTERINĖ ŽEMĖTVARKOS GRAFIKA

KOMPIUTERINĖ ŽEMĖTVARKOS GRAFIKA LIETUVOS ŽEMĖS ŪKIO UNIVERSITETAS Vandens ūkio ir žemėtvarkos fakultetas Statybinių konstrukcijų katedra Žemėtvarkos katedra Tatjana Sankauskienė Vaiva Stravinskienė KOMPIUTERINĖ ŽEMĖTVARKOS GRAFIKA MOKOMOJI

More information

Tautvydas Dagys Microsoft Lietuva

Tautvydas Dagys Microsoft Lietuva Tautvydas Dagys Microsoft Lietuva Programos akademinėms institucijoms ir studentams Studentų partnerių programa Akademinės institucijoms Studentams MSDN AA Tai efektyvus būdas aprūpinti savo laboratorijas/klases

More information

I. FFDATA STRUKTŪROS APRAŠYMAS

I. FFDATA STRUKTŪROS APRAŠYMAS PATVIRTINTA Valstybinio socialinio draudimo fondo valdybos prie Socialinės apsaugos ir darbo ministerijos direktoriaus 2010 m. birželio 4 d. įsakymu Nr. V-243 (Valstybinio socialinio draudimo fondo valdybos

More information

INFORMACINĖS SISTEMOS INVENTORIAUS VALDYMO SISTEMA

INFORMACINĖS SISTEMOS INVENTORIAUS VALDYMO SISTEMA ŠIAULIŲ UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA Denas Pavlavičius Informatikos specialybės II kurso dieninio skyriaus studentas INFORMACINĖS SISTEMOS INVENTORIAUS VALDYMO

More information

Baltymų struktūrų modeliavimas naudojant HHpred ir SWISS-MODEL Laboratorinis darbas

Baltymų struktūrų modeliavimas naudojant HHpred ir SWISS-MODEL Laboratorinis darbas Baltymų struktūrų modeliavimas naudojant HHpred ir SWISS-MODEL Laboratorinis darbas Justas Dapkūnas 2017 1 Įvadas Šio darbo tikslas yra praktiškai išbandyti baltymų struktūrų modeliavimą, naudojant paprastus

More information

GUJARAT TECHNOLOGICAL UNIVERSITY DIPLOMA IN INFORMATION TECHNOLOGY Semester: 4

GUJARAT TECHNOLOGICAL UNIVERSITY DIPLOMA IN INFORMATION TECHNOLOGY Semester: 4 GUJARAT TECHNOLOGICAL UNIVERSITY DIPLOMA IN INFORMATION TECHNOLOGY Semester: 4 Subject Name VISUAL BASIC Sr.No Course content 1. 1. Introduction to Visual Basic 1.1. Programming Languages 1.1.1. Procedural,

More information

ŠIAULIŲ UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA. Mindaugas Gapšys BAKALAURO DARBAS

ŠIAULIŲ UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA. Mindaugas Gapšys BAKALAURO DARBAS ŠIAULIŲ UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA Mindaugas Gapšys Informatikos specialybės IV kurso dieninio skyriaus studentas Bash skriptų panaudojimas Unix/Linux operacinių

More information

ONSCREENKEYS 5. Windows XP / Windows Vista / Windows 7 / Windows 8 / Windows 10

ONSCREENKEYS 5. Windows XP / Windows Vista / Windows 7 / Windows 8 / Windows 10 ONSCREENKEYS 5 Windows XP / Windows Vista / Windows 7 / Windows 8 / Windows 10 PREKĖS APRAŠYMAS Šis intelektualus ekrane klaviatūra su virtualių pelės paspaudimu funkcijų ir kalbos galia leidžia greitai

More information

A.Kynienė. С, C++ kalbų ABC. Metodinė priemonė

A.Kynienė. С, C++ kalbų ABC. Metodinė priemonė A.Kynienė С, C++ kalbų ABC Metodinė priemonė Vilnius 2004 TURINYS C KALBOS PRIVALUMAI...4 PROGRAMAVIMO PROCESAS...5 OPERACIJOS...6 PAPRASTOS PROGRAMOS STRUKTŪRA...8 DUOMENŲ IR KINTAMŲJŲ TIPAI...9 SIMBOLINĖS

More information

2. Pakopiniai stiliai

2. Pakopiniai stiliai 1 2. Pakopiniai stiliai 2.1. Pakopiniai stiliai (CSS) Pakopinius stilius (Cascading Style Sheets; CSS) kaip ir HTML sukūrė bei kontroliuoja Pasaulinis hipertekstinės informacijos tinklo konsorciumas (World

More information

HTML dokumentai aprašo tinklalapius. HTML dokumentus sudaro HTML gairės ir grynas tekstas. HTML dokumentai vadinami tinklalapiais.

HTML dokumentai aprašo tinklalapius. HTML dokumentus sudaro HTML gairės ir grynas tekstas. HTML dokumentai vadinami tinklalapiais. 1 P u s l a p i s HTML dokumentai HTML kalba HTML yra kalba, naudojama tinklalapių aprašymui. HTML kilo iš HyperText Markup Language. HTML nėra programavimo kalba, ji yra žymėjimo kalba. Žymėjimo kalba

More information

2006 m. valstybinio brandos egzamino užduotis

2006 m. valstybinio brandos egzamino užduotis LIETUVOS RESPUBLIKOS ÐVIETIMO IR MOKSLO MINISTERIJA NACIONALINIS EGZAMINØ CENTRAS 2006 m. valstybinio brandos egzamino užduotis 2006 m. gegužės 26 d. Egzamino trukmė 3 val. Testas 1 val. 25 min (85 min.)

More information

PAŽINTIS SU PROGRAMŲ LIETUVINIMU. Gintautas Grigas

PAŽINTIS SU PROGRAMŲ LIETUVINIMU. Gintautas Grigas PAŽINTIS SU PROGRAMŲ LIETUVINIMU Gintautas Grigas el. p. Gintautas.Grigas@mii.vu.lt Programos vertimas į kitą kalbą ir jos pritaikymas tos kalbos aplinkai vadinamas lokalizavimu. Atskiras lokalizavimo

More information

II SEKCIJA. Duomenų bazės ir modeliai

II SEKCIJA. Duomenų bazės ir modeliai II SEKCIJA Duomenų bazės ir modeliai VEIKLOS TAISYKLIŲ SAUGYKLA, INTEGRUOTA SU VEIKLOS TAISYKLIŲ IŠKVIETIMO MECHANIZMU 1 Rimantas Butleris, Liudas Motiejūnas Kauno technologijos universitetas Straipsnyje

More information

Užduotys mokiniams tema Programavimas mobiliesiems įrenginiams. 1 dalis

Užduotys mokiniams tema Programavimas mobiliesiems įrenginiams. 1 dalis Projektas,,Pedagogų kvalifikacijos tobulinimo ir perkvalifikavimo sistemos plėtra (III etapas), Nr. VP1-2.2-ŠMM-02-V-01-010 Projekto vykdytojas Ugdymo plėtotės centras Stažuotės vieta UAB DEVBRIDGE LT

More information

Microsoft Office PowerPoint 2010 gidas

Microsoft Office PowerPoint 2010 gidas Microsoft Office PowerPoint 2010 gidas Turinys Apie Microsoft Powerpoint 2010... 1 Patarimai, kaip sukurti gerą pateiktį... 2 Standartinio maketo naudojimas... 3 Pasirinkto maketo kūrimas... 4 SmartArt

More information

PHP Lietuviškai. Turinys

PHP Lietuviškai. Turinys PHP Lietuviškai Informacija iš interneto pakampių surinko, visa savaitgalį prie Easy PDF sėdėjo ir kankinosi Justinas L. aka scooox. Taigi, kad visi girdėtų, sakau: šitas dokumentas yra surinktas iš visų

More information

Simboliai ir simbolių eilutės 2 val. Standartinės procedūros ir funkcijos darbui su simbolių eilutėmis

Simboliai ir simbolių eilutės 2 val. Standartinės procedūros ir funkcijos darbui su simbolių eilutėmis T8 Simboliai ir simbolių eilutės 2 val. Standartinės procedūros ir funkcijos darbui su simbolių eilutėmis 1 Kintamasis, kurio tipas nurodomas žodžiu char, skirtas simboliui saugoti. var a, b : char; Su

More information

Interneto technologijų taikymai

Interneto technologijų taikymai Interneto technologijų taikymai Mantas Puida (mantasp@gmail.com) VI paskaita Entity pirminis raktas Kiekviena Entity klasė privalo turėti pirminį raktą (Primary Key). Jei turima Entity objektų hierarchija,

More information

Projektas. .h failai Header failai (interface) .m failai Pačios programos failai ( .xib /.storyboard Vartotojo sąsajos failai

Projektas. .h failai Header failai (interface) .m failai Pačios programos failai ( .xib /.storyboard Vartotojo sąsajos failai ios Projektas.h failai Header failai (interface).m failai Pačios programos failai (.xib /.storyboard Vartotojo sąsajos failai AppDelegate.h / AppDelegate.m aplikacijos pradiniai startavimo prpograminiai

More information

KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS INFORMACIJOS SISTEMŲ KATEDRA

KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS INFORMACIJOS SISTEMŲ KATEDRA KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS INFORMACIJOS SISTEMŲ KATEDRA Giedrius Tamulis Dalykinės srities kalbų kūrimo UML MagicDraw aplinkoje metodika ir šios metodikos pritaikymas, kuriant

More information

Asta Čitavičienė LIBRARY

Asta Čitavičienė LIBRARY elaba REPOSITORY USER GUIDE FOR A STUDENT Asta Čitavičienė LIBRARY 2016-09-10 Login Go to elaba website at www.elaba.lt Select a reference Deposit to elaba Login 1. 2. Select your institution: Kauno technologijos

More information

VILNIAUS PEDAGOGINIS UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA EDITA MUDURYTĖ

VILNIAUS PEDAGOGINIS UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA EDITA MUDURYTĖ VILNIAUS PEDAGOGINIS UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS INFORMATIKOS KATEDRA EDITA MUDURYTĖ MICROSOFT OPERACINIŲ SISTEMŲ SĄSAJŲ LYGINAMOJI ANALIZĖ Magistro baigiamasis darbas Darbo vadovai

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba Standartinė šablonų biblioteka (STL) Duomenų struktūros (11paskaita) Šablonai Programuojant egzistuoja situacijos, kai reikia atlikti tuos pačius veiksmus su skirtingais duomenų

More information

RAŠTINĖS PRIEMONIŲ OPEN OFFICE IR MICROSOFT OFFICE PALYGINIMAS

RAŠTINĖS PRIEMONIŲ OPEN OFFICE IR MICROSOFT OFFICE PALYGINIMAS VILNIAUS PEDAGOGINIS UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS LIUDMILA KOPYLOVA RAŠTINĖS PRIEMONIŲ OPEN OFFICE IR MICROSOFT OFFICE PALYGINIMAS INFORMATIKOS MAGISTRO DARBAS DARBO VADOVAS: dr.

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba Šablonai (10 paskaita) Kodėl šablonai (templates)? Programuojant egzistuoja situacijos, kai reikia atlikti tuos pačius veiksmus su skirtingais duomenų tipais (pvz. modulio radimas,

More information

ĮVADAS JVM Java Virtual Machine Java virtualios mašinos (JVM) JVM write once, run everywhere

ĮVADAS JVM Java Virtual Machine Java virtualios mašinos (JVM) JVM write once, run everywhere ĮVADAS The Java programming language was introduced in 1995 by Sun Microsystems which has since merged into Oracle Corporation. Derived from languages such as C and C++. Pradžioje Java buvo skirta programuoti

More information

Scrum su Kanban naudojančios organizacijos programų sistemų kūrimo proceso vertinimas

Scrum su Kanban naudojančios organizacijos programų sistemų kūrimo proceso vertinimas ISSN 9-056. INORMACIJOS MOKSLAI. 07 79 DOI: https://doi.org/0.588/im.07.79.05 Scrum su Kanban naudojančios organizacijos programų sistemų kūrimo proceso vertinimas Vaidotas Pėkis Vilniaus universiteto

More information

KRISTINA LAPIN PROGRAMAVIMAS PASKALIU IR C. II dalis MATEMATIKOS IR STATISTIKOS STUDIJŲ KRYPČIŲ PIRMO KURSO STUDENTAMS

KRISTINA LAPIN PROGRAMAVIMAS PASKALIU IR C. II dalis MATEMATIKOS IR STATISTIKOS STUDIJŲ KRYPČIŲ PIRMO KURSO STUDENTAMS VILNIAUS UNIVERSITETAS MATEMATIKOS IR INFORMATIKOS FAKULTETAS PROGRAMŲ SISTEMŲ KATEDRA KRISTINA LAPIN PROGRAMAVIMAS PASKALIU IR II dalis MATEMATIKOS IR STATISTIKOS STUDIJŲ KRYPČIŲ PIRMO KURSO STUDENTAMS

More information

Step-by step guide for MRU students to uploading Master s Thesis to elaba repository

Step-by step guide for MRU students to uploading Master s Thesis to elaba repository Step-by step guide for MRU students to uploading Master s Thesis to elaba repository www.elaba.lt Log in the repository Go to www.elaba.lt Select Submit to repository Select your institutional affiliation

More information

LOGINĖS DB SCHEMOS ATSTATYMAS NAUDOJANT JDBC

LOGINĖS DB SCHEMOS ATSTATYMAS NAUDOJANT JDBC LOGINĖS DB SCHEMOS ATSTATYMAS NAUDOJANT JDBC Bronius Paradauskas, Aurimas Laurikaitis, Sigitas Paulavičius, Anna Truncaitė Kauno technologijos universitetas, Informacijos sistemų katedra, Studentų g. 50,

More information

Web servisai WSDL. Osvaldas Grigas

Web servisai WSDL. Osvaldas Grigas Web servisai WSDL Osvaldas Grigas Web servisų aprašymas Kiekvienas web servisas yra unikalus Jis turi adresą(arba kelis adresus), kuriuo į jį galima kreiptis. Jis supranta tik tam tikros struktūros įeinančius

More information

A Lithuanian Verbalization Template for ORM conceptual models and rules

A Lithuanian Verbalization Template for ORM conceptual models and rules A Lithuanian Verbalization Template for ORM conceptual models and rules Mustafa Jarrar, Vrije Universiteit Brussel, Belgium. (Contact Author) Maria Keet, Free University of Bozen-Bolzano, Italy. Juozas

More information

DTD aprašas gali būti XML failo viduje. Šiuo atveju jis įterpiamas į žymę DOCTYPE naudojant tokią sintaksę:

DTD aprašas gali būti XML failo viduje. Šiuo atveju jis įterpiamas į žymę DOCTYPE naudojant tokią sintaksę: XML DTD paskirtis DTD (angl. Document Type Definition) paskirtis nusakyti, iš kokių blokų gali būti sudarytas XML (o taip pat ir HTML) dokumentas. Taigi DTD apibrėžia dokumento struktūrą išvardindama leistinus

More information

Naujos galimybės su Lotus Notes 8.5.1: naudotojams ir programuotojams

Naujos galimybės su Lotus Notes 8.5.1: naudotojams ir programuotojams Naujos galimybės su Lotus Notes 8.5.1: naudotojams ir programuotojams IBM Programinės įrangos diena 2009 m. spalio 21 d. Andrejus Chaliapinas, IĮ Infosana vadovas http://www.infosana.com Prezentacijos

More information

Vilniaus universitetas Fizikos fakultetas Radiofizikos katedra R. Grigalaitis Programavimas (Programavimo C++ kalba paskaitų konspektas)

Vilniaus universitetas Fizikos fakultetas Radiofizikos katedra R. Grigalaitis Programavimas (Programavimo C++ kalba paskaitų konspektas) Vilniaus universitetas Fizikos fakultetas Radiofizikos katedra R. Grigalaitis Programavimas (Programavimo C++ kalba paskaitų konspektas) Vilnius 2010 - 2 - Turinys PROGRAMAVIMO SAMPRATA... - 4 - KINTAMIEJI

More information

2011 m. valstybinio brandos egzamino uþduotis, pagrindinë sesija

2011 m. valstybinio brandos egzamino uþduotis, pagrindinë sesija 1 iš 24 LIETUVOS RESPUBLIKOS ÐVIETIMO IR MOKSLO MINISTERIJA NACIONALINIS EGZAMINØ CENTRAS Kandidato (-ës) darbo vietos þymë 2011 m. valstybinio brandos egzamino uþduotis, pagrindinë sesija Egzamino trukmë

More information

OBJEKTŲ SAVYBIŲ MODELIO GRAFINIS REDAKTORIUS

OBJEKTŲ SAVYBIŲ MODELIO GRAFINIS REDAKTORIUS KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS INFORMACIJOS SISTEMŲ KATEDRA Saulius Menkevičius OBJEKTŲ SAVYBIŲ MODELIO GRAFINIS REDAKTORIUS Magistro darbas Vadovas doc. dr. B. Paradauskas KAUNAS,

More information

1. AJAX įvadas. AJAX principai:

1. AJAX įvadas. AJAX principai: 1. AJAX įvadas AJAX principai: Naršyklė talpina programą (application), ne turinį. Serveris siunčia duomenis ne turinį. Asinchroniškumas - asinchroninio request/response siuntimo pagrindinis principas

More information

PROJEKTAS BRANDOS EGZAMINŲ KOKYBĖS SISTEMOS PLĖTRA. arba

PROJEKTAS BRANDOS EGZAMINŲ KOKYBĖS SISTEMOS PLĖTRA. arba EUROPOS SĄJUNGA Europos socialinis fondas Lietuvos Respublikos Švietimo ir mokslo ministerija PROJEKTAS BRANDOS EGZAMINŲ KOKYBĖS SISTEMOS PLĖTRA 2007 M. INFORMACINIŲ TECHNOLOGIJŲ PILOTINĖS UŽDUOTIES Testas

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba Klasės, klasių savybės, vardų erdvės (3 paskaita) OOP Struktūrinio programavimo modelio problema: Didelės programos tampa labai sudėtingos t.y. egzistuoja tūkstančiai kintamųjų ir

More information

Užduotys mokiniams tema Programavimas mobiliesiems įrenginiams. 1 dalis

Užduotys mokiniams tema Programavimas mobiliesiems įrenginiams. 1 dalis Projektas,,Pedagogų kvalifikacijos tobulinimo ir perkvalifikavimo sistemos plėtra (III etapas), Nr. VP1-2.2-ŠMM-02-V-01-010 Projekto vykdytojas Ugdymo plėtotės centras Stažuotės vieta UAB DEVBRIDGE LT

More information

1 iš 24. RIBOTO NAUDOJIMO (iki teisëtai atskleidþiant vokus, kuriuose yra valstybinio brandos egzamino uþduoties ar jos dalies turinys)

1 iš 24. RIBOTO NAUDOJIMO (iki teisëtai atskleidþiant vokus, kuriuose yra valstybinio brandos egzamino uþduoties ar jos dalies turinys) 1 iš 24 (iki teisëtai atskleidþiant vokus, kuriuose yra valstybinio brandos egzamino uþduoties ar jos dalies turinys) LIETUVOS RESPUBLIKOS ÐVIETIMO IR MOKSLO MINISTERIJA NACIONALINIS EGZAMINØ CENTRAS 2009

More information

Paskirstytos atminties lygiagretusis programavimas Įvadas į MPI

Paskirstytos atminties lygiagretusis programavimas Įvadas į MPI Paskirstytos atminties lygiagretusis programavimas Įvadas į MPI Distributed memory parallel programming Paskirstytos atminties lygiagretieji kompiuteriai Kiekvienas procesorius turi tik savo nuosavą atmintį

More information

Programavimas C kalba

Programavimas C kalba Programavimas C kalba Mokomoji priemonė Elektronikos specialybės studentams Vytautas Vyšniauskas 2008.01.28 09:26 Šiaulių Universitetas, 2007 Turinys Įvadas... 4 1 Simbolių kodavimas ir ASCII kodų lentelė...

More information

MedDream WEB DICOM peržiūros NAUDOTOJO INSTRUKCIJA (versija 6.2)

MedDream WEB DICOM peržiūros NAUDOTOJO INSTRUKCIJA (versija 6.2) MedDream WEB DICOM peržiūros NAUDOTOJO INSTRUKCIJA (versija 6.2) 2018, Softneta UAB, Kaunas Visos turtinės teisės į programinę įrangą, aprašytą šiose naudotojo instrukcijose, ir prekių ženklą priklauso

More information

KAUNO TECHNOLOGIJOS UNIVERSITETAS ONTOLOGIJŲ VAIZDINIO PATEIKIMO MODELIS IR JO REALIZACIJA SEMANTINIAME TINKLE

KAUNO TECHNOLOGIJOS UNIVERSITETAS ONTOLOGIJŲ VAIZDINIO PATEIKIMO MODELIS IR JO REALIZACIJA SEMANTINIAME TINKLE KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS Aurelijus Saldauskas ONTOLOGIJŲ VAIZDINIO PATEIKIMO MODELIS IR JO REALIZACIJA SEMANTINIAME TINKLE Baigiamasis magistro projektas Vadovas prof.

More information

Principles of Computer Architecture Processors Lecture 1

Principles of Computer Architecture Processors Lecture 1 Principles of Computer Architecture Processors Lecture 1 prof.dr. Dalius Mažeika Dalius.Mazeika@vgtu.lt http://dma.vgtu.lt Room No. L424 Lectures and evaluation Scope of the course is 3 ECTS (80 hours)

More information

KLIENTŲ DUOMENŲ BAZĖS IR SANTYKIO SU KLIENTAIS VALDYMO PROGRAMA

KLIENTŲ DUOMENŲ BAZĖS IR SANTYKIO SU KLIENTAIS VALDYMO PROGRAMA KTU INFORMATIKOS FAKULTETAS HENRIKAS SINICKAS KLIENTŲ DUOMENŲ BAZĖS IR SANTYKIO SU KLIENTAIS VALDYMO PROGRAMA MAGISTRO DARBAS Darbo vadovas doc. dr. Ojaras Purvinis KAUNAS 2004 TURINYS 2 1. ĮVADAS... 3

More information

K R I S T I N A L A P I N. I dalis. Matematikos ir statistikos studijų krypčių pirmo kurso studentams

K R I S T I N A L A P I N. I dalis. Matematikos ir statistikos studijų krypčių pirmo kurso studentams V I L N I A U S U N I V E R S I T E T AS M A T E M A T I K O S I R I N F O R M A T I K O S F A K U L T E T A S P R O G R A M Ų S I S T E M Ų K A T E D R A K R I S T I N A L A P I N Programavimas C I dalis

More information

Aleph skaitytojų duomenų bazė XML formato duomenų failas Failo formavimo taisyklės I dalis. Bendroji skaitytojo informacija...

Aleph skaitytojų duomenų bazė XML formato duomenų failas Failo formavimo taisyklės I dalis. Bendroji skaitytojo informacija... 0 Aleph skaitytojų duomenų bazė... 2 XML formato duomenų failas... 3 Failo formavimo taisyklės... 3 I dalis. Bendroji skaitytojo informacija... 3 II dalis. Adresai ir studijos / pareigos... 4 III dalis.

More information

KOMPIUTERIŲ TINKLAI. 5 paskaita Tinklo lygmuo, IP protokolas

KOMPIUTERIŲ TINKLAI. 5 paskaita Tinklo lygmuo, IP protokolas KOMPIUTERIŲ TINKLAI 5 paskaita Tinklo lygmuo, IP protokolas Lokalus tinklas (kartojimas) Lokalaus tinklo technologijos: Kokius žinote prieigos prie terpės metodus? Kas yra Ethernet, kokie jo skiriamieji

More information

ŽILVINAS VAIRA. Programinės įrangos kūrimo technologijos. Mokomoji priemonė

ŽILVINAS VAIRA. Programinės įrangos kūrimo technologijos. Mokomoji priemonė ŽILVINAS VAIRA Programinės įrangos kūrimo technologijos Mokomoji priemonė Projektas Socialinių mokslų kolegijos vykdomų studijų programų internacionalizacija kuriant atvirą aukštąją mokyklą užsienio šalių

More information

Ian Sommerville 2008 Software Engineering, 8th edition. Chapter 28 Slide 1. Tikslai

Ian Sommerville 2008 Software Engineering, 8th edition. Chapter 28 Slide 1. Tikslai Programinės įrangos kūrimo proceso tobulinimas Ian Sommerville 2008 Software Engineering, 8th edition. Chapter 28 Slide 1 Tikslai Paaiškinti programinės įrangos kūrimo proceso tobulinimo principus. Paaiškinti,

More information

JAVA PROGRAMOS KODO ANALIZĖS NAUDOJANT SCRO ONTOLOGIJĄ GALIMYBIŲ TYRIMAS

JAVA PROGRAMOS KODO ANALIZĖS NAUDOJANT SCRO ONTOLOGIJĄ GALIMYBIŲ TYRIMAS KAUNO TECHNOLOGIJOS UNIVERSITETAS INFORMATIKOS FAKULTETAS VYTENIS SODAITIS JAVA PROGRAMOS KODO ANALIZĖS NAUDOJANT SCRO ONTOLOGIJĄ GALIMYBIŲ TYRIMAS Baigiamasis magistro projektas Vadovas doc. dr. R. Butkienė

More information

Objektiškai Orientuotas Programavimas su C++

Objektiškai Orientuotas Programavimas su C++ Vilniaus Universitetas Matematikos ir Informatikos fakultetas Kompiuterijos katedra Saulius Narkevičius Objektiškai Orientuotas Programavimas su C++ paskaitų konspektai pavasaris 2005 Turinys Pratarmė...

More information

Eksperimentiniai sprendimai

Eksperimentiniai sprendimai Komandos Eksperimentiniai sprendimai Prisistatymas Vilniaus Universitetas, MIF 2005 1. Bendras komandos prisistatymas Komanda Eksperimentiniai sprendimai tai Vilniaus Universiteto, Matematikos ir Informatikos

More information

Įdiegus TVS, turintys programavimo pagrindus, gali ir patys nesunkiai šį tą pakoreguoti.

Įdiegus TVS, turintys programavimo pagrindus, gali ir patys nesunkiai šį tą pakoreguoti. Turinio valdymo sistemų apžvalga Turinio valdymo sistemos www svetainėms Turinio valdymo sistemos (TVS) (angl.: CMS Content Management System) padeda paskirstyti svetainės priežiūros darbus, automatiškai

More information

VERSLO KLIENTŲ APTARNAVIMAS TEL

VERSLO KLIENTŲ APTARNAVIMAS TEL paslaugos Virtualus biuras valdymas ir naudojimas VERSLO KLIENTŲ APTARNAVIMAS TEL. 1816 Skambučio kaina tel. 1816 TEO tinkle 0,16 Lt/min., sujungimo mokestis 0,12 Lt; iš Omnitel, Bitė Lietuva ir Tele2

More information