Hoe ben je tot bovenstaande uitwerking gekomen? Was dit een gegeven voorbeeld of heb je dit zelf uitgewerkt?quote:Op zondag 20 december 2009 14:33 schreef adbeentjes het volgende:
(bijv. ¤634,33 = 1x500 + 0x200+ 1x100 +0x50 + 1x20 + 2x5+ 2x2+ 0x1+ 0x0,50 + 1x0,20 + 1x0,10 + 0x0,05 + 1x0.02+1x0,01)
Zelf 'uitgewerkt' dat is de zogenaamde bottum-up techniek, in delen oplossen van een 'groot' probleem.quote:Op zondag 20 december 2009 14:39 schreef HenryHill het volgende:
[..]
Hoe ben je tot bovenstaande uitwerking gekomen? Was dit een gegeven voorbeeld of heb je dit zelf uitgewerkt?
Immers, als je niet weet hoe je het probleem handmatig moet oplossen, dan hoef je al helemaal niet te proberen dit uit te leggen aan een computer
Ok, en nu als iemand met een briefje van 100 voor 64 euro wil afrekenen. Welke coupures krijgt de klant dan terug?quote:Op zondag 20 december 2009 14:44 schreef adbeentjes het volgende:
Idee
Klant moet betalen, bijv. ¤80.
Hij 'betaalt' met briefje van ¤100
Verschilfunctie 100-80=20 retour door kassier.
20 is 1x20 ivm rond getal...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | aantal = array[15] of int; // hoeveel van elke geldeenheid terug te geven (init. op 0!) i = 0; while (wisselbedrag != 0 && i < 15) { if (wisselbedrag >= valuta[i]) { wisselbedrag = wisselbedrag - valuta[i]; aantal[i] = aantal[i]+1; } else { i = i+1; } } for (i=0; i<15; i=i+1) { print(aantal[i] + " maal " + valuta[i] + "teruggeven."); } |
Lekker, vriend. In plaats dat je TS zelf na laat denken over zijn huiswerkquote:Op zondag 20 december 2009 14:48 schreef Thorír het volgende:
Ken VB niet, dus hier wat pseudocode:
Ik kan wel wat aflezen, maar ik ken dat programma niet, en voor een beginner is het zowat onmogelijk om dit te begrijpen,,, heeft u dit ook 'gemaakt' met tabellen? Sequentie, iteratie etc.?quote:Op zondag 20 december 2009 14:48 schreef Thorír het volgende:
Ken VB niet, dus hier wat pseudocode:
[ code verwijderd ]
Op dezelfde wijze; 100-64=36 euro retour door kassierquote:Op zondag 20 december 2009 14:48 schreef HenryHill het volgende:
[..]
Ok, en nu als iemand met een briefje van 100 voor 64 euro wil afrekenen. Welke coupures krijgt de klant dan terug?
Dan moet je bij de print [i] iets van row en en nog wat invoegen in die codequote:Op zondag 20 december 2009 14:50 schreef adbeentjes het volgende:
[..]
Ik kan wel wat aflezen, maar ik ken dat programma niet, en voor een beginner is het zowat onmogelijk om dit te begrijpen,,, heeft u dit ook 'gemaakt' met tabellen? Sequentie, iteratie etc.?
Ik snap het probleem wel, en hoe je het moet oplossen, maar ik snap niet hoe dit in kaart te brengen in Excel VBA, ik moet een algoritme schrijven, waarschijnlijk moet Excel dan 'het spelletje spelen' van de kassier,quote:Op zondag 20 december 2009 14:49 schreef HenryHill het volgende:
[..]
Lekker, vriend. In plaats dat je TS zelf na laat denken over zijn huiswerk
Ok, ben je met me eens dat de truc is om van het retourbedrag (in dit geval 36 euro) net zolang biljetten van 20 euro uit te betalen totdat je retourbedrag onder de 20 euro komt. Vervolgens ga je biljetten van 10 euro uitbetalen totdat het retourbedrag minder dan 10 euro is, etc.quote:Op zondag 20 december 2009 14:51 schreef adbeentjes het volgende:
[..]
Op dezelfde wijze; 100-64=36 euro retour door kassier
36 euro =
1x20
1x10
1x5
1x1
euro..
Zeer zeker mee eens... steeds weer volgens hetzelfde stramien.quote:Op zondag 20 december 2009 14:56 schreef HenryHill het volgende:
[..]
Ok, ben je met me eens dat de truc is om van het retourbedrag (in dit geval 36 euro) net zolang biljetten van 20 euro uit te betalen totdat je retourbedrag onder de 20 euro komt. Vervolgens ga je biljetten van 10 euro uitbetalen totdat het retourbedrag minder dan 10 euro is, etc.
Toch?
Ok, hoe had je dit voorgesteld in Excel?quote:Op zondag 20 december 2009 14:52 schreef adbeentjes het volgende:
[..]
Ik snap het probleem wel, en hoe je het moet oplossen, maar ik snap niet hoe dit in kaart te brengen in Excel VBA, ik moet een algoritme schrijven, waarschijnlijk moet Excel dan 'het spelletje spelen' van de kassier,
Hier loop ik vast, ik weet niet hoé. Voorheen was het een code schrijven net als hierboven, in excel vba, ..quote:Op zondag 20 december 2009 15:00 schreef HenryHill het volgende:
[..]
Ok, hoe had je dit voorgesteld in Excel?
Ik kan me voorstellen dat je twee cellen gebruikt, 1 voor het invullen van het te betalen bedrag en 1 voor hoeveel de klant geeft. Als uitvoer heb je dan een kolom met met onder elkaar de waardes van de coupures (500, 200, 100, etc.). De uitvoer van je programma komt dan in de kolom naast de coupures te staan.
Om de coupures uit te laten rekenen moet je op een knop drukken, deze start jouw VBA-code.
Zoiets?
Heb je in de vorige opdrachten wel eens cellen uit een Excel werkblad moeten lezen? Of pas je gewoon je programmacode aan als je met andere bedragen wilt werken?quote:Op zondag 20 december 2009 15:03 schreef adbeentjes het volgende:
[..]
Hier loop ik vast, ik weet niet hoé. Voorheen was het een code schrijven net als hierboven, in excel vba, ..
Altijd gewoon via "Marco opnemen" uiteindelijk kan je dan als het ware zelf de 'code' achterhalen via VBA.quote:Op zondag 20 december 2009 15:05 schreef HenryHill het volgende:
[..]
Heb je in de vorige opdrachten wel eens cellen uit een Excel werkblad moeten lezen? Of pas je gewoon je programmacode aan als je met andere bedragen wilt werken?
Ok, maar werd de invoer (in dit geval de bedragen) voor de vorige opdrachten ingelezen vanuit een werkblad, of werd de invoer ook in code gespecificeerd?quote:Op zondag 20 december 2009 15:07 schreef adbeentjes het volgende:
[..]
Altijd gewoon via "Marco opnemen" uiteindelijk kan je dan als het ware zelf de 'code' achterhalen via VBA.
Ja hoor, doe maar zoals je 't gewend bentquote:Ik heb nu een kolom
A1: te betalen
A2: klant geeft
Kan ik ook dit probleem oplossen via "Macro opnemen"?
quote:Op zondag 20 december 2009 15:10 schreef HenryHill het volgende:
[..]
Ok, maar werd de invoer (in dit geval de bedragen) voor de vorige opdrachten ingelezen vanuit een werkblad, of werd de invoer ook in code gespecificeerd?
[..]
Ja hoor, doe maar zoals je 't gewend bent
In welke versie van Excel werk je? (2003 of 2007, Nederlands of Engels?)quote:Op zondag 20 december 2009 15:12 schreef adbeentjes het volgende:
[..]
Geen idee hoe dus... dit is een 'apart' geval, opdrachten komen ook van een apart stencil. Ik heb gewoon de code voor VBA nodig, dus dat er ook schermpje verschijnt van"U betaalt, en u geeft" etc. Alleen weet ik niet hoe ik dat voor mekaar krijg, of iemand me daarbij wilt helpen. Het probleem zelf snap ik wel.
Ik gebruik voor VBA 2003 (ivm uitleg boek), heb ook 2007.quote:Op zondag 20 december 2009 15:16 schreef HenryHill het volgende:
[..]
In welke versie van Excel werk je? (2003 of 2007, Nederlands of Engels?)
1 2 3 | End Sub |
Tot hier GELUKT!, Doe nu ook in 2007. Ik kan nu een blokje, knopje 'tekenen', nietwaar>?quote:Op zondag 20 december 2009 15:23 schreef HenryHill het volgende:
Ik heb zelf alleen 2007 tot m'n beschikking, dus het is misschien het handigst als je deze gebruikt.
Probeer eens het volgende:
1. Ga naar het lint "Ontwikkelaars". Als je deze niet ziet, zoek dan in de Help (F1) het onderwerp "Macro's maken met Microsoft Visual Basic" en volg de daar omschreven stappen om VBA beschikbaar te maken.
2. Op het lint Ontwikkelaars, klik op "Invoegen" (binnen het onderdeel Besturingselementen) en selecteer de knop (linksboven). <wordt vervolgd>
|
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |