![]() |
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? |
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 |
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.
|
Ja GR kan het ook wel. Maar waarom dan niet meteen in delphi joh. Dat is even simpel.
|
Citaat:
|
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. |
Citaat:
|
Citaat:
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? |
Gewoon beginnen en proberen, help lezen, na een weekend ben je een heel eind.
|
Citaat:
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. |
Citaat:
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 |
alvast bedankt.......we zijn nu ongeveer op de helft .....hopenlijk lukt het ons .anders moeten we jullie hulp weer inroepen ;)
|
|
Alle tijden zijn GMT +1. Het is nu 07:09. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.