91 -92 8 -62 -2 90 45 -89 -48 -2 Kõrvaldiagonaalist ülalpoo -15 -33 82 -56 -20 45,2 60 -14 -42 -72 -58 Tee maatriks Tee vektor Lahenda Kõrvaldiagonaalist ülalpool asuvate elementide absoluutne keskmine: 5 3 Prots Op_Mas_1 peaprotseduur, käivitab vajalikud alamprotseduurid ja kirjutab tulemused töölehele Prots Tee_Mas_1() Teeb töölehele soovitud suurusega maatriksi Prots M_maks_rvn(A(), m, n, maks, rn, vn) A() - maatriks m - veergude arv n - ridade arv maks - mälupesa minimumi jaoks rn - mälupesa reanumbri jaoks rv - mälupesa veerunumbri jaoks Leiab minimaalse elemendi antud veergude vahemikus Funkts PosK_MR(A(), n, rn) A() - maatriks n - ridade arv rn - mälupesa reanumbri jaoks
Töö VBA Kodutöö Üliõpilane Õppemärkmik Õppejõud Kristina Murtazin Õpperühm kaülikool nstituut A Kodutöö Õppemärkmik Õpperühm ringe aeg_1 aeg_2 aeg_3 paku võitja võitja 2 9,140625 9,296875 9,2539063 loom_1 loom_1 START PEATU MÄNGU PÕHIMÕTE U PÕHIMÕTE Objektid Protseduurid *Loomad (loom_1, loom_2, loom_3) * Peaprotseduur jookse ja alamprots *Päike jookse- seob objektid (loomad) muut *Tüdruk muutujad, kustutab lahtrid, fikseerib *Pilv kontrollib loomade jooksmist, kasuta *Piksenool protseduuri Tee_samm. *Lahtrid (loom_1,loom_2, loom_3, *Tee_samm- selle igal täitmisel fikse ringe, paku_võitja, võitja) muudetakse ühe looma asukohta sa
J - püüdja P - pall Sub tagasi() protseduur tagastab palli viskajale püüdja poolt M - maa J - püüdja S - viskaja Sub rahvas() protseduur liigutab publikut kui pall on läinud korvi R - rahvas Sub korv() protseduur, mis töötab palli korvi minekul, põrgatab palli peale korvi minekut ja kirjutab tö J - püüdja M - maa P - pall S - viskaja Sub lenda() peaprotseduur, juhib kõiki teisi protseduure, viib palli viske tugevuse vastavusse töölehe J - juku (püüdja) S - viskaja M - maa P - pall K - korv R - rahvas (pealtvaatajad) Z - post ui tulemus on kirjas stud numbriga töölehelt b töölehele kirje, et pall on käes li peale korvi minekut ja kirjutab töölehele "Korv" ske tugevuse vastavusse töölehel sisestatuga J J J J J J J J J J J J
J - püüdja P - pall Sub tagasi() protseduur tagastab palli viskajale püüdja poolt M - maa J - püüdja S - viskaja Sub rahvas() protseduur liigutab publikut kui pall on läinud korvi R - rahvas Sub korv() protseduur, mis töötab palli korvi minekul, põrgatab palli peale korvi minekut ja k J - püüdja M - maa P - pall S - viskaja Sub lenda() peaprotseduur, juhib kõiki teisi protseduure, viib palli viske tugevuse vastavusse J - juku (püüdja) S - viskaja M - maa P - pall K - korv R - rahvas (pealtvaatajad) Z - post kui tulemus on kirjas estud numbriga töölehelt ab töölehele kirje, et pall on käes alli peale korvi minekut ja kirjutab töölehele "Korv" iske tugevuse vastavusse töölehel sisestatuga J J J J J J J J J J J J 11 J
- jagada leitud väärtusega maatriksi need elemendid, mis on suuremad nullist - leida maksimaalne element saadud maatriksi igas reas Ruutmaatriks - leida negatiivsete elementide keskmine ülalpool peadiagonaali (S) - liita vektor nendele ridadele, kus viimane element on negatiivne moodustada uus maatriks nendest ridadest, kus peadiagonaali element on suurem nullist etiline keskmine, m maksimaalne element viimases veerus (S) Peaprotseduur OP_Mas() määratleb muutujad ja massiivid loeb töölehelt vastavad massivid kasutades alamprotseduure Loe_Tab ja Loe teeb kindlaks, kas töölehel olev maatriks on ruutmaatriks või ristkülikmaatriks vastavalt maatriksi tüübile rakendab alamprotseduurid kirjutab vajalikud tulemid töölehele Protseduur tee_uus(A(), B(), m, mitu) moodustab uue maatriks B() maatriksi A() nendest ridadest, kus peadiagonaa m on ridade arv algses maatriksis A() ja mitu on ridade arv uues maatriksis B(
Tallinna Tehnikaülikool Informaatikainstituut Ülesanne Massiivid: variant nr. 25 Üliõpilane Allar Plaksi Õppejõud Ermo Täks hnikaülikool ainstituut iant nr. 25 Matrikli nr. 062005 Õpperühm EALB-41 Spetsifikatsioonid Üldprotseduurid Peaprotseduur Op_Mas_1() Määratleb muutujad ja massiivid. Loeb töölehelt antud massiivid, kasutades alamprotseduure Loe_Tab ja Loe_Tulp Käivitab alamprotseduurid erinevate tegevuste täitmiseks. Kirjutab tulemid töölehele. Protseduur Tee_Mas_1() Genereerib vastavalt etteantud ridade ning veergude arvule suvalised numbrid, mis hiljem massiividesse loetak Protseduur Loe_Tab(A, m, n, Aprk) Loeb töölehele piirkonnast Aprk sisse väärtused ja salvestab sellle maatrksis A.
sisendi,j > max max = sisendi, j ruut_ri = i ruut_ve = j max, ruut_ri, ruut_ve Üldised parameetrid ja muutujad prk - maatriksi piirkond ridu - maatriksi ridade arv veerge - maatriksi veergude arv i - maatriksi reaindeks j - maatriksi veeruindeks sisend - etteantud maatriksile vastav massiiv valjund ja valjund2 - protseduuride käigus loodavad uued massiivid vektor - etteantud vektorile vastav massiiv Peaprotseduur Massiiv() Loeb maatriksi read ja veerud, deklareerib dünaamilised massiivid ning loeb nendesse töölehelt maat käivitab vastavalt sellele kas protseduurid Max_ül_diag, Liida, Tee_Uus ja Kir_Tab või protseduurid rist_ve - etteantud veeru järjekorranumber ristkülikmaatriksi puhul summa - leitud positiivsete elementide summa ristkülikmaatriksi etteantud veerus Protseduur Max_ül_diag(sisend, ridu)
A()- andtud maatriks (rida ja veerg määratud) AU()- uus maatriks mis on saadud Iga rea elemendi jagamise selle rea elementide summaga B()- antud vektor (ainult rida määratud) c()- saadud ridade arvutamisega maatriks (rida ja veerg määratud) R()-ruutmaatriksi korral (rida ja veerg määratud) F( )-ruutmaatriksi korral peadiag. kasutades (rida rida määratud) Aprk/Bprk- vastavalt siis piirkond Aalg ja Balg töölehelt Protseduurid Massiivid - peaprotseduur, mis loeb sisse massiivid ja lahendab siis vastavalt kas ruutmaatriki või ristkülikma Kustuta - kustutab vastavate lahtrite sisu, mis kuuluvad piirkonda, kus on aktiivne lahter. Kustuta2- kustutab andmed lahtritest Mat_Vek- leiab maatriksi viimase veeru ja vektori skalaarkorrutise Rea_Sum- jagab iga rea elemendid selle rea elementide summaga Tee_Mas_2- genereerib maatriksi vastavalt ette antud parameetritele kontroll- funktsioon kontrollib kas veeru viimane element on suurem antud arvust
3) vahetada viimane veerg veeruga, kus asub leitud maksimum arvust atiivne (S) atiivne oht (S) Tee maatriks Tee vektor Lahenda Kustuta Ristkülik: Vali arv: Summa: 10 ektor Ruut: Max.el: Rida: Veerg: Sub Tee_Maatriks() Koostab vabalt valitud ridade ning veergude arvuga maatriksi töölehele. Sub Tee_Vek() Koostab vabalt valitud ridade arvuga vektori töölehele. PEAPROTSEDUUR Sub Lahenda() Loeb töölehelt maatriksi ning vektori VBA massiivi. Teeb If-protseduuriga kindlaks, kas maatriksit ei ole või ristkülik - või ruutmaatriksiga, annab teate ning kui maatriks on olemas, siis vastavalt käivitab, kas ristkülik- ruutmaatriksi alamprotseduurid. RISTKÜLIKU ALAMPROTSEDUURID: Sub max_el_igas (A(),m,n,maks(),rida(),veerg()) Parameetrid: massiiv A(), ridade arv m, veergude arv n, vektror maks(), vektor rida(), vektor veerg()
Kukkum Tuld ine tabas aeg max_aeg 3 15.03 15 Tulista Start Protseduur Lend Protseduur Tuld Protseduur Algseis Protseduur Kukkumine Demo. Suur võidusõit Protseduurid Peaprotseduur Soida ja Kolm autot sõidavad võidu etteantud arvu ringe. Programm Tee_samm fikseerib ajad. Kasutaja saab pakkuda võitja Peaprotseduur seob objek Objektid töölehel muutujatega , 3 autod: auto_1, auto_2, auto_3, Juku ja Kraps - algväärtustab muutujad,
Aalg Lahter, millest alustatakse massiivi väljakirjutamist. i Massiivi rea number. j Massiivi veeru number. Sub Värvi_1 Protseduur värvib ruutmaatriksi peadiagonaali, peadiagonaalist üleval ja all oleva osa erine n Värvitava ala ridade ja veergude arv. Aalg Lahter, millest alustatakse värvimist. i Värvitava ala ridade number. j Värvitava ala veergude number. Sub Peaprotseduur Protseduur teeb kindlaks kas tegemist on ristkülik või ruutmaatriksiga m Massiivi viimane rea järjenumber. n Massiivi viimane veeru järjenumber. Aalg Lahter, kus alustatakse maatriksi lugemist ja kirjutamist. m2 Vektori viimase rea järjenumber. Kalg Lahter,kust alustatakse vektori lugemist. Ruutmaatriksi protseduurid.
d b - b - Detail. VBA makro. Struktuur ja protseduurid prots Detail_1 Makro (programm) koosneb järgmistes protseduuridest - peaprotseduur Detail_1() prots Loe_Alg(b, h, d, L) - protseduur Loe_Alg(b, h, d, L) - algandmete lugemine töölehelt - protseduur Kir_Tul(V, S) - tulemite kirjutamine töölehele - funktsioon Det_Ru(b, h, d, L) -l eiab detaili ruumala funkts Det_Ru(b, h, d, L) - funktsioon Det_Pi(b, h, d, L) - leiab detaili täispindala - protseduur Tee_Pilt(b, h, d) - teeb mõõtkavas ristlõike skeemi
tagastamiseks. Tema poole pöördutakse avaldistest funktsiooniviite abil. Alamprogramm kirjeldab üldisema iseloomuga tegevusi. Ta võib leida ja tagastada suvalise hulga väärtusi, täita mitmesuguseid tegevusi objektidega . Alamprogramme ei saa käsutada avaldistes, pöördumiseks nende poole käsutatakse spetsiaalseid pöördumislauseid. Programmi ja keele põhielemendid Programm koosneb ühest või mitmest protseduurist. Viimasel juhul on üks protseduuridest alati peaprotseduur. Programmi täitmine algab peaprotseduurist, täitmise ajal võib see pöörduda alamprotseduuride poole. Protsedur võib olla parametritega või ilma. Funktsioonil võivad olla parameetrid, nad näitavad sisendandmeid. Parameetrid saavad väärtused vastavatelt argumentidelt, kui pöördutakse protseduuri poole. Funktsiooni poolt leitav väärtus omistatakse funktsiooni nimele, mille kaudu ta tagastatakse pöördumiskohta.