Programeer opdrachtenOpdracht : opdr3b_pascal.txt

Terug naar de inzendingen
Opdracht 3b,Pascal Schiks
22 Feb 2005
 Deze opdracht is eigenlijk na het disteleren van de informatie zo eenvoudig
 Dat ik besloot dit te benadrukken door de taal BASIC te gebruiken.
 Een taal die ik toch zeker al zo'n 25 jaar niet meer aangeraakt heb.
 BASIC is op Linux bepaald geen gebruikelijke taal (vast met goede reden)
 en ik moest effe goed zoeken voor ik wist welke basic interpreter welicht
 voor Linux in aanmerking kon komen.
 Ik heb gekozen voor [B]yabasic[/B] simpelweg omdat die door linuxpackages.net
 gevonden werd, en er dus kenlijk enige vorm van support voor bestaat.
 1 
****vliegtuig.bas*****
  
 210 rem Opdracht 3b
 320 rem Title  : vliegtuig.bas
 430 rem Author : Pascal Schiks (C) 2005 GNU/GPL
 5
 6100 rem climb performance
 7110 clvsi=700
 8120 clias=70
 9130 clff=9
 10150 rem cruise performance 
 11160 crvsi=0
 12170 crias=100 
 13180 crff=7
 14
 15200 rem data invoer
 16210 print "Geef kruishoogte >";
 17220 input cralt
 18250 print "Geef Afstand >";
 19260 input distance
 20380 print
 21
 22300 rem berekeningen klim
 23305 rem Climb time afgerond naar boven tot hele minuten
 24310 cltime=int(cralt/clvsi)+1
 25320 cldist=cltime/60*clias
 26321 rem Afstand afronden naar dichtsbijzijnde gehele waarde
 27322 if(cldist > int(cldist)+0.5) then cldist=cldist+1 : endif
 28323 cldist=int(cldist)
 29325 rem Brandstof naar boven afgerond dan nog eens 10% extra
 30326 rem de opdracht stelt 10% extra voor alle berekeningen, dus niet aleen totaal
 31330 clfuel=int(cltime*clff/60)+1:clfuel=clfuel*1.1
 32
 33400 rem berekeningen cruiseflight
 34404 rem die doe je aleen als de climb afstand kleiner is dan de totale
 35reisafstand
 36405 if(cldist
 37408   rem cldist is al afgerond dus crdist komt ook mooi uit
 38410   crdist=distance-cldist
 39415   rem Cruise time afgerond naar boven naar hele minuten
 40420   crtime=int(crdist/crias*60)+1
 41425   rem Brandstof naar boven afgerond dan nog eens 10% extra
 42426   rem de opdracht stelt 10% extra voor alle berekeningen, niet aleen totaal !
 43430   crfuel=int(crtime*crff/60)+1:crfuel=crfuel*1.1
 44435 endif
 45440 Bij basic mag je er van uitgaan dat niet geinitaliseerde variabelen de
 46waarde 0 hebben
 47445 rem geen else opdrachten voor deze conditie dus
 48500 rem berekeningen totaal
 49510 tottime=cltime+crtime
 50515 rem totale brandstof. over de 8USG hoeft geen 10% extra te worden gerekend.
 51520 totfuel=clfuel+crfuel+8
 52
 53600 rem output
 54610 print "Climb time ",cltime," min"
 55620 print "Climb dist ",cldist," NM"
 56630 print "Climb fuel ",clfuel,"USG"
 57640 print
 58655 if(crdist>0) then
 59660   print "Cruise time ",crtime," min"
 60670   print "Cruise dist ",crdist," NM"
 61680   print "Cruise fuel ",crfuel, "USG"
 62685 else
 63690 print "De afstand voor de klim is groter dan de afstand van de totale
 64vlucht" 
 65695 endif
 66700 rem totaal
 67710 print
 68720 print "Total time ",tottime," min"
 69730 print "Total fuel ",totfuel," USG"
 
 
Mijn commentaar
 
 Mijn eigen inzending beoordeel ik natuurlijk niet.