Difference between revisions of "Div/fi"
From Lazarus wiki
Jump to navigationJump to searchm (Fixed syntax highlighting) |
|||
Line 1: | Line 1: | ||
{{div}} | {{div}} | ||
− | <syntaxhighlight lang="pascal" | + | <syntaxhighlight lang="pascal" inline>Div</syntaxhighlight> on sellainen jakolasku, jossa murto-osa (jakojäännös) hylätään. |
− | Lauseke <syntaxhighlight lang="pascal" | + | Lauseke <syntaxhighlight lang="pascal" inline>a div b</syntaxhighlight> palauttaa kokonaisluvun kahden kokonaisluvun jakamisen tuloksesta. |
− | Tämä on toisin kuin ilmaisu <syntaxhighlight lang="pascal" | + | Tämä on toisin kuin ilmaisu <syntaxhighlight lang="pascal" inline>a / b</syntaxhighlight>, joka palauttaa [[Real|reaaliluvun]] tuloksena. |
− | Ilmaisun molemmilla puolilla <syntaxhighlight lang="pascal" | + | Ilmaisun molemmilla puolilla <syntaxhighlight lang="pascal" inline>div</syntaxhighlight>:n on oltava kokonaisluvullinen tyyppi. Reaalilukutyyppisen operandin käyttäminen <syntaxhighlight lang="pascal" inline>div</syntaxhighlight>in kanssa johtaa käännösaikaiseen virheeseen: |
Error: Operator is not overloaded: […] | Error: Operator is not overloaded: […] | ||
Jos halutaan saada kokonaislukutuloksen reealilukuisella operandilla niin käytä | Jos halutaan saada kokonaislukutuloksen reealilukuisella operandilla niin käytä | ||
− | {{Doc|package=RTL|unit=system|identifier=trunc|text=<syntaxhighlight lang="pascal" | + | {{Doc|package=RTL|unit=system|identifier=trunc|text=<syntaxhighlight lang="pascal" inline>trunc</syntaxhighlight>}} tai {{Doc|package=RTL|unit=system|identifier=round|text=<syntaxhighlight lang="pascal" inline>round</syntaxhighlight>}} funktiota [[Slash|<syntaxhighlight lang="pascal" inline>/</syntaxhighlight> operator]] kanssa. |
− | Seuraavassa esimerkissä nähdään, mitä <syntaxhighlight lang="pascal" | + | Seuraavassa esimerkissä nähdään, mitä <syntaxhighlight lang="pascal" inline>div</syntaxhighlight> tekee |
<syntaxhighlight lang="pascal" line highlight="15,17"> | <syntaxhighlight lang="pascal" line highlight="15,17"> |
Latest revision as of 17:23, 6 August 2022
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
Div
on sellainen jakolasku, jossa murto-osa (jakojäännös) hylätään.
Lauseke a div b
palauttaa kokonaisluvun kahden kokonaisluvun jakamisen tuloksesta.
Tämä on toisin kuin ilmaisu a / b
, joka palauttaa reaaliluvun tuloksena.
Ilmaisun molemmilla puolilla div
:n on oltava kokonaisluvullinen tyyppi. Reaalilukutyyppisen operandin käyttäminen div
in kanssa johtaa käännösaikaiseen virheeseen:
Error: Operator is not overloaded: […]
Jos halutaan saada kokonaislukutuloksen reealilukuisella operandilla niin käytä
trunc
tai round
funktiota /
operator kanssa.
Seuraavassa esimerkissä nähdään, mitä div
tekee
1program divDemo(input, output, stderr);
2
3var
4 i: shortInt;
5 j: shortInt;
6 q: qWord;
7 r: qWord;
8
9begin
10 i := 16;
11 j := 3;
12 q := 1000;
13 r := 300;
14
15 writeLn(i div j);
16 writeLn(i / j);
17 writeLn(q div r);
18 writeLn(q / r);
19end.
Ulostulona saadaan:
$ ./divDemo
5
5.3333333333333330E+000
3
3.3333333333333335E+000
Katso myös
mod
– jakojäännös (kokonaisluvuista).trunc
– katkaisee kokonaisosan reaaliluvusta.round
– pyöristää reaaliluvun kokonaisluvuksi.math.divmod
– palauttaa molemmat kokonaisosan ja jakojäännöksen.