Difference between revisions of "Slash/fi"
(Created page with " {{Slash}} <div style="float:right; margin: 0 25px 20px 0; padding:50px; font-size:500%; font-family: Georgia; background-color: #f9f9f9; border: 2px solid #777777;">/</div>...") |
|||
Line 11: | Line 11: | ||
− | Kauttaviivaa <syntaxhighlight lang="pascal" | + | Kauttaviivaa <syntaxhighlight lang="pascal" inline>/</syntaxhighlight> käytetään [[Pascal/fi|Pascal]]-[[Program/fi|ohjelmassa]] merkitsemään jakolaskua. |
− | Tämän jakolaskun tulokset ovat ''aina'' desimaalilukuja. Jos halutaan suorittaa kokonaislukujakolaskun niin on käytettävä [[Div/fi|<syntaxhighlight lang="pascal" | + | Tämän jakolaskun tulokset ovat ''aina'' desimaalilukuja. Jos halutaan suorittaa kokonaislukujakolaskun niin on käytettävä [[Div/fi|<syntaxhighlight lang="pascal" inline>div</syntaxhighlight>-operaattoria]]. |
<syntaxhighlight lang="pascal"> | <syntaxhighlight lang="pascal"> | ||
Line 18: | Line 18: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Tämän toimenpiteen jälkeen [[Variable/fi|muuttujalla]] <syntaxhighlight lang="pascal" | + | Tämän toimenpiteen jälkeen [[Variable/fi|muuttujalla]] <syntaxhighlight lang="pascal" inline>A</syntaxhighlight> on arvo <syntaxhighlight lang="pascal" inline>0.75</syntaxhighlight> (olettaen, että <syntaxhighlight lang="pascal" inline>A</syntaxhighlight> on ilmoitettu desimaaliluvun [[Type/fi|tyypiksi]], muuten [[Compiler/fi|kääntäjä]] ilmoittaa yhteensopimattoman tyyppivirheen). |
Line 24: | Line 24: | ||
Kauttaviivan oikealla puolella oleva arvo ei saa olla nolla tai tapahtuu nollajako-virhe. [[Compiler Mode|Kääntäjän tiloissa]], joissa [[Exceptions/fi|poikkeuksia]] on saatavilla (esim. [[Mode ObjFPC|ObjFPC]] ja [[Mode Delphi|Delphi]]-tila), tämä ehto voidaan | Kauttaviivan oikealla puolella oleva arvo ei saa olla nolla tai tapahtuu nollajako-virhe. [[Compiler Mode|Kääntäjän tiloissa]], joissa [[Exceptions/fi|poikkeuksia]] on saatavilla (esim. [[Mode ObjFPC|ObjFPC]] ja [[Mode Delphi|Delphi]]-tila), tämä ehto voidaan | ||
− | ottaa kiinni [[Try/fi|<syntaxhighlight lang="pascal" | + | ottaa kiinni [[Try/fi|<syntaxhighlight lang="pascal" inline>try</syntaxhighlight>]] … [[Except/fi|<syntaxhighlight lang="pascal" inline>except</syntaxhighlight>]] [[Block/fi|lohkolla]]. |
Muussa tapauksessa esiintyy [[runtime error/fi|ajonaikainen virhe]] (RTE 200). | Muussa tapauksessa esiintyy [[runtime error/fi|ajonaikainen virhe]] (RTE 200). | ||
Line 72: | Line 72: | ||
== Katso myös == | == Katso myös == | ||
− | * [[Round/fi|<syntaxhighlight lang="pascal" | + | * [[Round/fi|<syntaxhighlight lang="pascal" inline>round</syntaxhighlight>]] |
− | * [[Trunc/fi|<syntaxhighlight lang="pascal" | + | * [[Trunc/fi|<syntaxhighlight lang="pascal" inline>trunc</syntaxhighlight>]] |
{{Symbols}} | {{Symbols}} |
Latest revision as of 17:14, 6 August 2022
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
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.
Huomaa: 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".
1345while (buf^ in [' ', #9, #10]) do // kill separators
Katso myös
single characters |
|
character pairs |
|