in ben in QBasic een programma aan het schrijven.
een stukje:
INPUT "Getal: ", getal%
Nu wil is dat er gecontroleerd word of de ingevulde waarde wel cijfers zijn en geen letters.
Weet iemand hoe dat moet?
in ben in QBasic een programma aan het schrijven.
een stukje:
INPUT "Getal: ", getal%
Nu wil is dat er gecontroleerd word of de ingevulde waarde wel cijfers zijn en geen letters.
Weet iemand hoe dat moet?
Moderator
Input validatie routine maken.
Zie hier voor voorbeelden: http://members.lycos.co.uk/brisray/qbasic/qind.htm
"Input" aanklikken. Nadat je door de lycos reclame heen bent.
Je variabele is een integer. QB geeft dan toch automatisch een foutmelding als er letters ingevuld worden?
Het is 15 jaar geleden bij mij , ik zal mijn best doen .
Ik loste dat op met IF.....then ....else en for ...next
Dim A ( 10 ) ( naargelang de situatie bij u)
for A = 1 to 10
read A
if A <>( ongelijk? vergeten) 1,2,3 etc then .....
next A
Ik twijfel over het rteken "ongelijk"....Spijtig heb ik dat boek weggedaan .....
Zoals gezegt , het is bij mij 15 jaar of langer geleden , en ik had atari basic ,maar veel dingen zijn hetzelfde
Je moet in basic veel improviseren .Die commas die ik tussen de getalklen zette kunnen ook ; zijn ( punt - comma)
Moderator
Idd, als je gewoon zegt "input A" errort hij standaard op alles wat niet numeriek is.
wil je dat niet wordt je variabele A$
Moderator
Op 16 december 2005 21:35:48 schreef Sine:
Idd, als je gewoon zegt "input A" errort hij standaard op alles wat niet numeriek is.wil je dat niet wordt je variabele A$
Da's toch een "fatal error" je programma stopt dan, voor zover ik mij kan herinneren van vroeger.
En eenmaal "error" verbeterd , moet je daar nog weggeraken ....zonder opnieuw te moeten beginnen
Op 16 december 2005 21:48:01 schreef Hugo Welther:
[...]
Da's toch een "fatal error" je programma stopt dan, voor zover ik mij kan herinneren van vroeger.
Met basic kon en kun je veel improviseren . Als je het juiste commando gaf ging hij wel verder , ( Bij A$ leest hij alles ) . Je moest de computer zover krijgen dat hij dat onthield en op het einde melde . Ik weet niet of dat kon . Ik kon het niet
Silicon Member
input a
if str$(val(a)) <> a then
print " not a number"
end if
Tja , zo , maar dn print hij dat wel , midden in je programma ...Dat dan wel om zeep is .
Ik geloof dat je de computer kon doen fluiten , en zelfs wachten met "wait" . Q basic had die commandos .
Op 16 december 2005 21:02:54 schreef nj:
in ben in QBasic een programma aan het schrijven.
een stukje:INPUT "Getal: ", getal%
Nu wil is dat er gecontroleerd word of de ingevulde waarde wel cijfers zijn en geen letters.
Weet iemand hoe dat moet?
kijk als de asc() van de invoer wel tussen de waardes van de getallen ligt.
wel eerst met mid, de invoer opsplitsen in afzonderlijke karakters, en de controle doen voor elke letter.
als er eentje tussenzit die niet mocht --> de lus verlaten, en opnieuw invoer vragen ofzo
Er was wel een naam (basic) maar er waren vele verschillende versies van . De basic die in electuur gebruikt werd werd dikwijls niet aanvaard door Atari . En Qbasic was weer anders .....
Moderator
Voor de PC: (80x86 chip)
QBacic was van IBM en werd standaard met de originele IBM PC (XT) meegeleverd.
GW-Basic was de Microsoft variant, meegeleverd met de klonen.
Turbo-Basic van Borland, nu R.I.P.
PowerBasic was van Australisch origine, en bestaat nog steeds.
En zo had je nog wat vrianten.
Zelfs een basic met commando's in het Frans, maar ik ben de naam vergeten!
Overleden
Op 16 december 2005 22:48:53 schreef Bertrix:
Zelfs een basic met commando's in het Frans, maar ik ben de naam vergeten!
Basique.
Moderator
Op 16 december 2005 22:49:37 schreef KT88:
[...]
Basique.
Dat draaide ook niet op een computer, maar op een ordinateur.
Het was plezant als je een boek gekocht had met comandos uit een andere versie ....
Vooral met die "save" formules . Ik bedoel om gegevens op te slaan die je de volgende dag weer wilde gebruiken .
Die waren altijd foetsie ....
Op het laatst met QBasic lukte me dat goed
Golden Member
Op 16 december 2005 21:02:54 schreef nj:
in ben in QBasic een programma aan het schrijven.
een stukje:
en ik maar visual basic leren
Silicon Member
Op 16 december 2005 23:11:44 schreef Hugo Welther:
[...]
Dat draaide ook niet op een computer, maar op een ordinateur.
en twas ook geen programma maar 'un logiciel'
Silicon Member
Op 16 december 2005 22:11:33 schreef Mon1935:
Tja , zo , maar dn print hij dat wel , midden in je programma ...Dat dan wel om zeep is .
Ik geloof dat je de computer kon doen fluiten , en zelfs wachten met "wait" . Q basic had die commandos .
leesgetal:
fouteingave=0
input a
if str$(val(a)) <> a then
Beep
fouteingave=1
end if
if fouteingave=1 then goto leesgetal
enzovoort.
was het niet met var# dat het type als real benaderde?
Silicon Member
Op 16 december 2005 22:45:12 schreef Hugo Welther:
Voor de PC: (80x86 chip)QBacic was van IBM en werd standaard met de originele IBM PC (XT) meegeleverd.
GW-Basic was de Microsoft variant, meegeleverd met de klonen.
Turbo-Basic van Borland, nu R.I.P.
PowerBasic was van Australisch origine, en bestaat nog steeds.
En zo had je nog wat vrianten.
Vergeet BasicA niet. die zat in de BIOS van de originele ibm PC XT en startte op als ie geen bootsector vond op zijn schijven.
Turbo Basic was in feite PowerBasic 1.1 . Borland zat in lastige papieren en wou niet blijven betalen voor de licentierechten ervoor. dus is het terug standalone gegaan.
Powerbasic is inderdaad nog altijd in omloop en een van de weinige compilers die nog een echte executable kunnen maken die (ook) kan lopen onder DOS. Powerbasic heeft geen runtime library nodig. je kan ook inline assembler schrijven. ik gebruik het ding wel eens om DLL's te maken met speciale bewerkingen in die snel moeten gaan. de code die uit PB komt is zelfs sneller dan wat je met bijvoorbeeld VC of C++ compileert.
Powerbasic heb ik lange tijd gebruikt maar na een discussie met de fabrikant ben ik overgeschakeld op Freebasic. Ik ben nog wel bezig alle PB 'goodies' naar FB te vertalen. De grootte van FB executables zijn in de meeste gevallen zelfs kleiner dan die van PB en hebben ook geen runtime libraries nodig. Gisteren nog getest, buiten de syntax aanpassingen net dezelfde code, FB:6656 bytes en PB:11264 bytes. Dat is bijna de helft
Als je dos programma's wil maken in PB dan heb je een andere versie nodig (PBCC), in FB hoeft dat niet en werkt ook op Linux of Xbox.
Moderator
kon dat niet door gewoon vooraan in het programma te zetten:
ON ERROR GOSUB.....
en dan daar aan de hand van een error nummer een melding te geven en als laatste een RESUME?
Op 16 december 2005 21:31:04 schreef Mon1935:
Het is 15 jaar geleden bij mij , ik zal mijn best doen .
Ik loste dat op met IF.....then ....else en for ...next
Dim A ( 10 ) ( naargelang de situatie bij u)
for A = 1 to 10
read A
if A <>( ongelijk? vergeten) 1,2,3 etc then .....
next A
Ik twijfel over het rteken "ongelijk"....Spijtig heb ik dat boek weggedaan .....
Zoals gezegt , het is bij mij 15 jaar of langer geleden , en ik had atari basic ,maar veel dingen zijn hetzelfde
Je moet in basic veel improviseren .Die commas die ik tussen de getalklen zette kunnen ook ; zijn ( punt - comma)
ik heb nu dit
input a
dim a(10)
for a = 1 to 10
read a
if a <> 1 then
next a
maar dan krijg ik de melding:
next without for
?????