🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #10842

Re: Integer vs Real

#10842
From: Luc Kumps
Date: Sun, 24 Feb 2002 07:25
43 lines
2735 bytes
"Babsje" <newsgroupemail2000.removenospam@yahoo.com> wrote in message
news:3c781e09$0$75152$ba620e4c@news.skynet.be...
> blijft uiteindelijk een real. Balen! Weet iemand hoe ik de uitkomst van
een
> bewerking die een real geeft, om kan zetten in een integer?

In Turbo Pascal 1.0 ging dat als volgt:

i := round(sqrt(f));

Ik neem aan dat men dat er heeft laten inzitten ;-)

> De tweede vraag gaat over de invoer van een bepaald getal door de
gebruiker.
> Ik doe dat met een readln, en het lukt me wel om te checken of dat getal
> tussen door mij bepaalde grenzen ligt. Echter, wat moet ik doen als iemand
> letters ingeeft in plaats van een getal? De compiler geeft dan een
> foutmelding (logisch), hoe kan ik dat checken?

Als je {$I-} zet voor jouw readln, dan zal er geen runtime error worden
gegenereerd als er iets fout loopt.
Je activeert de runtime checking weer mbv {$I+}
Je kunt testen of er een fout was dmv IOERROR.
Bv.

{$I-}
readln(i);
if (IOError <> 0) then
  writeln('Dat was volgens mij geen integer');
{$I+}

Ik denk dat ook dit in alle TP versies ondersteund werd. Ik heb het zonet in
TP 3.0 (dat is het nostalgisch hoekje van mijn harde schijf zit) geprobeerd,
en het werkte. Voor de mensen die het niet (meer) weten: Turbo Pascal 3
bevatte een volledige editor, compiler en runtime environment in 39671 bytes
(ik herinner me niet meer hoeveel dat was voor 1.0 en 2.0, maar het was
minder). Zelfs op de machines van 15 jaar geleden waren compilaties razend
snel! Het geheim van de snelle compilatie was simpel: 1) enkel de eerste
compilerfout werd getoond, en 2) optimalisatie van gegenereerde code bestond
niet.

Luc
Technical Details
Message-ID: <3A0e8.178450$rt4.19921@afrodite.telenet-ops.be>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news.tele.dk!small.news.tele.dk!193.190.198.17!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
References: <3c781e09$0$75152$ba620e4c@news.skynet.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit
X-Google-Thread: fcea4,bb91a838e416d0a9
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-02-23 23:25:53 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news.tele.dk!small.news.tele.dk!193.190.198.17!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
From: "Luc Kumps" <NOkumpsSPAM@pandora.be>
Newsgroups: be.comp.programming
References: <3c781e09$0$75152$ba620e4c@news.skynet.be>
Subject: Re: Integer vs Real
Lines: 46
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Message-ID: <3A0e8.178450$rt4.19921@afrodite.telenet-ops.be>
Date: Sun, 24 Feb 2002 07:25:51 GMT
NNTP-Posting-Host: 213.118.69.68
X-Complaints-To: abuse@pandora.be
X-Trace: afrodite.telenet-ops.be 1014535551 213.118.69.68 (Sun, 24 Feb 2002 08:25:51 MET)
NNTP-Posting-Date: Sun, 24 Feb 2002 08:25:51 MET
Organization: Telenet Internet