Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [Prog] Delphi: carpool-programma (https://forum.scholieren.com/showthread.php?t=1197470)

whgeraards 07-06-2005 11:51

delphi informatica
 
Hallo,
Wij moeten voor school de volgende opdracht maken maar komen niet zo heel ver aangezien wij Delphi nog niet geheel goed beheersen.
Kunnen jullie ons misschien helpen?
De opdracht is als volgt:


Carpoolen
Bouw een carpoolprogramma waarmee reiskostenvergoedingen kunnen worden berekend.
- Reiskosten tot 10 worden niet vergoed.
- Van 10 tot en met 50 km wordt 22 eurocent vergoed.
- Boven de 50 km wordt 16 eurocent vergoed.
- Voor elke carpooler die wordt meegenomen, wordt 10% extra vergoed.
- Bij afstanden kleiner dan 10 kilometer wordt 12 eurocent vergoed als er carpoolers worden meegenomen.
De afstand moet in een textbox worden ingevuld, het aantal carpoolers wordt doormiddel van keuzerondjes aangegeven. (max 3 )

wten jullie hier misschien een oplossing voor?

TechXP 07-06-2005 12:01

Gewoon een hoop wiskunde (nou ja hoop..)

Wat heb je nu al gedaan? Je moet de opdracht natuurlijk zelf vooral doen.

Maak eerst het scherm. Een vakje met afstand.
En de keuze rondjes en een knop.

vul ze in en druk op de knop.

Is de afstand kleiner dan 10, dan niks

Is het tussen de 10 en 50 km, dan 22 eurocent vergoed (per km?)

Is het boven de 50km, dan 16 eurocent vergoed

Is er meer dan 1 carpooler, checkAantal en bereken de 10%

ToonUitvoer()

Het lijkt me een simpel programma met wat wiskundige berekeningen en wat if-then constructies

Krekker 07-06-2005 12:19

Probeer het programma anders eerst te maken op je grafische rekenmachientje als je dat een beetje kunt. Dan heb je tenminste een basisstructuur voor je programma en hoef je alleen nog maar te letten op syntax en vormgeving. Het enige wat je dan nog moet doen is omzetten naar (lees: opnieuw schrijven in) delphi en een leuk schermpje ervoor maken. Voor elke bewerking in je GR zal namelijk wel een delphi variant bestaan en dus is het omzetten a piece of cake.

TechXP 07-06-2005 13:43

Ja GR kan het ook wel. Maar waarom dan niet meteen in delphi joh. Dat is even simpel.

Krekker 07-06-2005 15:28

Citaat:

TechXP schreef op 07-06-2005 @ 14:43 :
Ja GR kan het ook wel. Maar waarom dan niet meteen in delphi joh. Dat is even simpel.
De GR is behoorlijk fail-proof. Je kunt op de GR bijna geen syntax fouten maken itt een computerprogrammeertaal. Zo kun je heel makkelijk controleren of het concept wat je in gedachten hebt wel werkt.

ILUsion 07-06-2005 17:27

Delphi zou geen probleem mogen vormen, als je een beetje goede cursus hebt.

Desnoods maak je eerst de procedure om de gegevens te verwerken (dus van een integer voor het aantal personen en een real (of desnoods integer, afhankelijk van wat je opgedragen wordt) voor het aantal kilometer naar een real voor de vergoeding).

Als je case-statements ("case of") gezien hebt, is dat een mooie gelegenheid om die te gebruiken. Als je je code post, wil ik steeds wel helpen :)

Verder nog wat tipjes:
1. die percentjes zou ik in de volgende vorm zetten (1+0.1x)y waarbij x het aantal carpoolers is en y de vergoeding zonder extra's (die 0.1 staat voor 10%, die 1 voor 100% (als in volledige vergoeding + x maal 10% per carpooler).
2. vergeet niet te controleren op de getallen omdat een textbox enkel strings kan aannemen. Afhankelijk van hoe ver je cursus gaat kun je op twee dingen testen:
a) (moet je steeds doen): StrToReal (fouten afvangen indien je dat gezien hebt)
b) de events van de textbox veranderen: zorg ervoor dat hij enkel getallen en komma's/punten aanneemt (als je geen events gezien hebt, laat dan maar)
3. werk desnoods met tussentijdse variabelen (= variabelen voor de tussenresultaten) indien dat voor je makkelijker werkt (het maakt je code bij goed gebruik wat overzichtelijker, vind ik).
4. eventueel met constanten werken als vergoeding10km, vergoeding50km, vergoedingmeerkm, extraPerCarpooler
5. Delphi heeft een component dat op een andere manier met radiobuttons laat omgaan (niet verplicht, ook gewoon omgaan met radiobuttons is mogelijk, maar dat heb ik zelf steeds een vreselijk karwei gevonden)

Verder is het misschien ook handig als je kilometers slechts tot op 1 km nauwkeurig moet geven, dan kun je daar integers gebruiken ten eerste en volgens mij kwam er bij de Delphi VCL ook een speciale editbox voor integers (een box met rechts 2 pijltjes om het getal te verhogen/verlagen) die al de omzettingen voor je doet.

Gambokkur 08-06-2005 14:33

Citaat:

Krekker schreef op 07-06-2005 @ 16:28 :
De GR is behoorlijk fail-proof. Je kunt op de GR bijna geen syntax fouten maken itt een computerprogrammeertaal. Zo kun je heel makkelijk controleren of het concept wat je in gedachten hebt wel werkt.
Elke pcprogrammeertaal heeft een compiler die de syntaxisfouten er onmiddellijk uithaalt. Ik vraag me af waarom je programmaatjes zou gaan maken op zo'n kleine prutsdingetje, pc gaat toch veel vlotter ?

ILUsion 08-06-2005 14:57

Citaat:

Gambokkur schreef op 08-06-2005 @ 15:33 :
Elke pcprogrammeertaal heeft een compiler die de syntaxisfouten er onmiddellijk uithaalt. Ik vraag me af waarom je programmaatjes zou gaan maken op zo'n kleine prutsdingetje, pc gaat toch veel vlotter ?
Tja, maar het is vaak een kunst om uit de output van een compiler aan uit te geraken als je de taal niet eens goed beheerst. Met Delphi valt het over het algemeen nog mee, vind ikzelf (maar ik ben dan ook al vrij lang met Object Pascal bezig).

Een grafisch rekenmachien is veel beperkter, dus ga je meer op het probleem focussen dan op hoe alles met de gebruiker moet communiceren (=interface). Je focust dus eigenlijk op de hoofdzaak: een methode ontwikkelen om te bepalen hoeveel elke persoon krijgt. Op zich is de interface en connectie met de gebruiker van minder belang, als je het puur bekijkt op gebied van programmeren/logica. In Delphi moet je dus steeds zorgen dat de invoer geldig is en die invoer moet je dan omzetten naar numeriek bruikbare waarden, bij een grafisch rekenmachientje gebeurt dat al grotendeels voor jou.

@TS: Hoe ver zit je trouwens met het programma?

iamcj 08-06-2005 15:03

Gewoon beginnen en proberen, help lezen, na een weekend ben je een heel eind.

dragonstorm 08-06-2005 18:49

Citaat:

Gambokkur schreef op 08-06-2005 @ 15:33 :
Elke pcprogrammeertaal heeft een compiler die de syntaxisfouten er onmiddellijk uithaalt. Ik vraag me af waarom je programmaatjes zou gaan maken op zo'n kleine prutsdingetje, pc gaat toch veel vlotter ?
Nee, alle gecompileerde talen hebben dat, BASIC voor de rekenmachine is geinterpreteerd, net zoals python voor de pc. Perl is een beetje hybride, die wordt elke keer gecompileerd voor runtime (geloof ik).

Ik zie niet in waarom je uberhaupt iets in delphi moet maken....
Is het niet veel handiger om gewoon iets in javascript te doen? Dus de vraag: heb je hier keuze in, welke taal je mag gebruiken?

Serieus, javascript is daarvoor veel geschikter, t gaat immers alleen om het algoritme.

ILUsion 08-06-2005 21:19

Citaat:

dragonstorm schreef op 08-06-2005 @ 19:49 :
Nee, alle gecompileerde talen hebben dat, BASIC voor de rekenmachine is geinterpreteerd, net zoals python voor de pc. Perl is een beetje hybride, die wordt elke keer gecompileerd voor runtime (geloof ik).

Ik zie niet in waarom je uberhaupt iets in delphi moet maken....
Is het niet veel handiger om gewoon iets in javascript te doen? Dus de vraag: heb je hier keuze in, welke taal je mag gebruiken?

Serieus, javascript is daarvoor veel geschikter, t gaat immers alleen om het algoritme.

Tja, Pascal- en Basic-dialecten worden in het onderwijs vaak gebruikt omdat ze vrij makkelijk aan te leren zijn (op dat vlak ben ik eerder voorstander van Basic (gestructureerd denken voor het programmeren waarbij de syntaxis simpel is (en dus onbelangrijk) , op het vlak van de programmeertaal zelf ben ik voor Pascal (betere structuur wat mij betreft) ).

Het was trouwens in mijn post dat je kon lezen dat het algoritme waarschijnlijk belangrijker is dan het geheel. Dat was om aan te tonen dat ze best met een functie/procedure begint die alles uitrekent en dan daarna die functie met de interface verbindt. Op zich is interface ook wel belangrijk op gebruiksniveau, maar voor een opleiding is een algoritme uitdenken wel belangrijker dan het uitzicht.

Deze opgave is trouwens niet zo heel moeilijk, maar de TS komt blijkbaar niet terug...

@iamcj:
Het is inderdaad zo dat de help van Delphi uitgebreid genoeg is om veel uit te halen, maar dan heb je toch een basiskennis van Pascal nodig om zelfs met de help om te gaan. Dit brengt me trouwens op het idee om dé simpele naslagsite over Delphi/Object Pascal te geven: http://www.delphibasics.co.uk

whgeraards 16-06-2005 09:30

alvast bedankt.......we zijn nu ongeveer op de helft .....hopenlijk lukt het ons .anders moeten we jullie hulp weer inroepen ;)

Bloemkoolsaus 21-06-2005 12:39

http://www.nldelphi.com/Forum/


Alle tijden zijn GMT +1. Het is nu 07:09.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.