Slash/fi
Deutsch · English · Français · Suomi · Русский
/
Yksittäinen kauttaviiva, jota ympäröivät ei-kauttaviivaiset merkit, katsotaan jakolaskuksi. Kaksi peräkkäistä viivaa aloittaa rivikommentin.
Jakolasku
Kauttaviivaa / käytetään Pascal-ohjelmassa merkitsemään jakolaskua. Tämän jakolaskun tulokset ovat aina desimaalilukuja. Jos halutaan suorittaa kokonaislukujakolaskun niin on käytettävä div-operaattoria.
A := 3 / 4;Tämän toimenpiteen jälkeen muuttujalla A on arvo 0.75 (olettaen, että A on ilmoitettu desimaaliluvun tyypiksi, muuten kääntäjä ilmoittaa yhteensopimattoman tyyppivirheen).
Tähän liittyviä poikkeuksia
Kauttaviivan oikealla puolella oleva arvo ei saa olla nolla tai tapahtuu nollajako-virhe. Kääntäjän tiloissa, joissa poikkeuksia on saatavilla (esim. ObjFPC ja Delphi-tila), tämä ehto voidaan ottaa kiinni try … except lohkolla. Muussa tapauksessa esiintyy ajonaikainen virhe (RTE 200).
program divZeroDemo(input, output, stderr);
// ObjFPC mode for exceptions
{$mode objfpc}
uses
// make exception EDivByZero known
sysutils;
const
dividend = 1.1;
resourcestring
enterDivisorPrompt = 'Enter divisor:';
divisionOperationExceptionless = 'Division did not cause an exception.';
zeroDivisionFailure = 'Error: Attempted to divide by zero.';
var
divisor, quotient: single;
begin
writeLn(enterDivisorPrompt);
readLn(divisor);
try
quotient := dividend / divisor;
writeLn(divisionOperationExceptionless);
except on EDivByZero do
writeLn(zeroDivisionFailure);
end;
end.Note: Poikkeuksen käsittely on "kallista". Testillä jossa testataan oliko käyttäjän syöte nolla(0) olisi ollut edellä mainitussa esimerkissä hienostuneempi tapa.
Kommentti
Kaksi peräkkäistä kauttaviivaa esittävät kommenttia rivin loppuun asti. Tätä kutsutaan myös nimellä "Delphi-tyylinen kommentti".
while (buf^ in [' ', #9, #10]) do // kill separatorsKatso myös
From the Free Pascal wiki, page "Slash/fi", as it stood on 2022-08-06 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
