Examen januari 2005

Jaarvak op 7 studiepunten
Forumregels
Misschien werd je vraag al vorig jaar gesteld? Gebruik dus eerst de zoekoptie!

Er zijn formularia/samenvattingen aanwezig op de volgende link: viewtopic.php?f=19&t=93
mistermojito
Beginnend forumgebruiker
Beginnend forumgebruiker
Berichten: 40
Lid geworden op: 04 okt 2008, 18:56

Re: Examen januari 2005

Berichtdoor mistermojito » 22 jan 2009, 18:22

Aaaah ok, ik begin het te snappen! :-)
Thx, mooi overzicht btw! ;-)
JeroenV
Beginnend forumgebruiker
Beginnend forumgebruiker
Berichten: 40
Lid geworden op: 03 okt 2008, 20:47
Locatie: Grimbergen

Re: Examen januari 2005

Berichtdoor JeroenV » 22 jan 2009, 19:02

Bij vraag 10 had ik ook hetzelfde gedaan ma khad et zo bedacht (ik weet niet of het juist is dus verbeter mij maar)

voor n elementen zouden we n keer moeten vergelijken, dus een rekenkundige rij zoals gezegd
Sn= (n²-n)/2 maar omdat we al weten dat het laatste element goed staat is er eigenlijk 1 vergelijking minder te doen dus
(n²-n)/2 -1

't is nogal simplistisch dus kdenk da er ergens wel een grote fout in zit, ma bon

Jeroen
SvenB
heeft den knop voor het posten van berichten gevonden!
heeft den knop voor het posten van berichten gevonden!
Berichten: 5
Lid geworden op: 21 okt 2008, 16:12

Re: Examen januari 2005

Berichtdoor SvenB » 22 jan 2009, 19:05

Het is misschien wat laat, achja:

Bij vraag 9 tel je gewoon alle bytes op. Maar als ik me niet vergis wordt de procedure Src in totaal 20 maal simultaan opgeroepen.
Moet men dan niet 20x(Data geheuge Src() ) doen?
Gebruikersavatar
Gill
Heeft dit forum graag
Heeft dit forum graag
Berichten: 166
Lid geworden op: 19 okt 2008, 16:29
Locatie: Ternat
Contacteer:

Re: Examen januari 2005

Berichtdoor Gill » 22 jan 2009, 19:18

SvenB schreef:Het is misschien wat laat, achja:

Bij vraag 9 tel je gewoon alle bytes op. Maar als ik me niet vergis wordt de procedure Src in totaal 20 maal simultaan opgeroepen.
Moet men dan niet 20x(Data geheuge Src() ) doen?

Hm... Ja, de waarde van Key is toch niet gegeven, dus je weet niet hoe veel keer opnieuw wordt opgeroepen?
En ik vrees dat ik ook nog de return-waardes vergeten ben ^^
Afbeelding
murda
Regelmatig forumgebruiker
Regelmatig forumgebruiker
Berichten: 57
Lid geworden op: 26 okt 2008, 17:10

Re: Examen januari 2005

Berichtdoor murda » 22 jan 2009, 19:22

mja kdenk ook da ge paar foutjes hebt gemaakt, aangezien src zichzelf recursief oproept totdat a[m] = Key, normaal zal dit hierdoor zichzelf ongeveer 20x oproepen :)
dus ge moet da van die src veranderen in 3 * 4 * 20 ;)
en ksnap ni goed wat u laatste stap is
geen variabele parameters -> er wordt 2 keer een kopie gemaakt van de waarde --> 2 * 4 bytes

daar benk ni zo goed mee, is da dat u min en max opnieuw worden opgeroepen in u src ?
Hoe da ik da zie gebruikt da geen geheugen, aangezien da die variabelen min en max binnen src zelf ni gedefinieerd worden, en dus als globale parameters beschouwd kunnen worden ;)
murda
Regelmatig forumgebruiker
Regelmatig forumgebruiker
Berichten: 57
Lid geworden op: 26 okt 2008, 17:10

Re: Examen januari 2005

Berichtdoor murda » 22 jan 2009, 19:24

Gill schreef:En ik vrees dat ik ook nog de return-waardes vergeten ben ^^

ja nee die zitten in die 3 * 4 telkens e, da is het return-adres +links (check tibi zijn mail)
Gebruikersavatar
Gill
Heeft dit forum graag
Heeft dit forum graag
Berichten: 166
Lid geworden op: 19 okt 2008, 16:29
Locatie: Ternat
Contacteer:

Re: Examen januari 2005

Berichtdoor Gill » 22 jan 2009, 19:26

murda schreef:ja nee die zitten in die 3 * 4 telkens e, da is het return-adres +links (check tibi zijn mail)


Tibi schreef:Return address + links: 3 * 4 bytes.
Een 16 bit value parameter : 2 bytes.
Een VAR parameter : 4 bytes (bij VAR parameters geeft men het adres van de actuele parameter door).
Een REAL teruggekeerde waarde : 4 bytes


Returnwaarde = de real waarde.. Hier wordt m of 0 gereturned, ma kvraag mij gewoon af of er in dees voorbeeld wel extra geheugen voor nodig is aangezien er al een geheugenplaats voor de variabele m voorzien is
Afbeelding
murda
Regelmatig forumgebruiker
Regelmatig forumgebruiker
Berichten: 57
Lid geworden op: 26 okt 2008, 17:10

Re: Examen januari 2005

Berichtdoor murda » 22 jan 2009, 19:28

btw, kom is op msn gill :D
Gebruikersavatar
Gill
Heeft dit forum graag
Heeft dit forum graag
Berichten: 166
Lid geworden op: 19 okt 2008, 16:29
Locatie: Ternat
Contacteer:

Re: Examen januari 2005

Berichtdoor Gill » 22 jan 2009, 19:29

murda schreef:mja kdenk ook da ge paar foutjes hebt gemaakt, aangezien src zichzelf recursief oproept totdat a[m] = Key, normaal zal dit hierdoor zichzelf ongeveer 20x oproepen :)
dus ge moet da van die src veranderen in 3 * 4 * 20 ;)
en ksnap ni goed wat u laatste stap is
daar benk ni zo goed mee, is da dat u min en max opnieuw worden opgeroepen in u src ?
Hoe da ik da zie gebruikt da geen geheugen, aangezien da die variabelen min en max binnen src zelf ni gedefinieerd worden, en dus als globale parameters beschouwd kunnen worden ;)


Nee... als er een procedure wordt opgeroepen bijvoorbeeld van 2 waardeparameters, gaat hij nie werke via de waarde van de variabele die ge invuld als parameter, anders zou uw waarde van uw variabele veranderd worde na de procedure wa nie het geval is. Hij gaat die 2 waardes kopiere en daarmee verder werken.
In het geval van een variabele parameter gaat hij WEL de waarde van uw variabele gaan verandere, en moet hij enkel het adres van die variabele nog mee ontouden.

EDIT: klein voorbeeldje om duidelijker te maken
Stel gebt een bepaalde procedure P(a,b)
met a = variabele parameter
b = waardeparameter, en in die procedure wordt zowel de waarde van a als die van b veranderd

Stel ge hebt in uw programma in zijn geheel, 2 globale variabelen, x en y en ge geeft die waardes.
als ge dan P(x,y) berekent, en ge gaat na de procedure de waardes van x en y opvragen, gaat uw waarde van x veranderd zijn na de procedure (want da was variabele parameter, werkt dus via het ADRES, hij gaat dus nieuwe waardes gaan "storen" in da adres van die variabele x) terwijl uw waarde van y nie veranderd zal zijn na de procedure omdat de procedure enkel de waarde van y gekopieerd heeft en daarmee verdergewerkt heeft, maar hij heeft in geen geval de waarde van uw variabele y veranderd
Afbeelding
SvenB
heeft den knop voor het posten van berichten gevonden!
heeft den knop voor het posten van berichten gevonden!
Berichten: 5
Lid geworden op: 21 okt 2008, 16:12

Re: Examen januari 2005

Berichtdoor SvenB » 22 jan 2009, 19:46

Aangezien er wat onduidelijkheid heerst over vraag 9: Hier is mijn versie

De module:
wordt gezien als procedure, dus inderdaad: 3*4 = 12 bytes voor de links en adres
Verder hebben we in onze module
een tabel, van 0 tot 1000000, dus in totaal 1000001 elementen => 4*1000001 bytes
Key, found: 2 CARDINALS van 4 bytes: 4*2 = 8 bytes

De procedure Search:
Links + adres: 3*4 = 12 bytes
Parameters: ADRES (4bytes) + CARDINAL (4 bytes) = 8 bytes
Functie return waarde: CARDINAL = 4 bytes
Lokale variabelen: 4 bytes * 3 CARDINALS = 12 bytes

De procedure Src:
Links + adres = 3*4 = 12 bytes
Parameters: 4bytes * 2 CARDINALS = 8 bytes
Functie return waarde: geen, ze gebruikt een globale variabele m die hij haalt met behulp van static links
Lokale variabelen: geen

Neem Totaal = 0
Tel hierbij de bytes op voor de module
Tel hierbij de bytes op voor Search
In search wordt src opgeroepen, en in Src zelf wordt Src nogmaals opgeroepen. Dit gebeurt tot dat het verschil tussen min en max < 1 (min = max) of dus 2^n > 1000000 of wel 2log(1000000) omdat bij elke oproep het verschil tussen min-max de helft wordt (op een ZRM reken je dit uit, dan geeft dit log(1 000 000) / log(2) = 19.9315686) dus 20 keer.
Dus 20 keer wordt Src opgeroepen, dus moet je het aantal bytes van Src vermenigvuldigen met 20 en dit bij Totaal optellen.
* Let wel op dat je hier * 20 moet doen omdat ze recursief opgeroepen worden. Als functies niet tegelijk geactiveerd worden, moet je ze ook niet optellen en moet je appart onderzoeken wat het grootste aantal bytes is voor het data geheugen.

Terug naar “Informatica”

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers en 1 gast

cron