Difference between revisions of "*/fi"
(Created page with "{{*}} ASCII:ssa ja UTF-8:ssa desimaalisen merkkikoodin <syntaxhighlight lang="pascal" enclose="none">42</syntaxhighlight> (tai Hexadecimal/fi|heksadesimaal...") |
|||
Line 1: | Line 1: | ||
{{*}} | {{*}} | ||
− | [[ASCII/fi|ASCII]]:ssa ja [[UTF-8]]:ssa desimaalisen merkkikoodin <syntaxhighlight lang="pascal" | + | [[ASCII/fi|ASCII]]:ssa ja [[UTF-8]]:ssa desimaalisen merkkikoodin <syntaxhighlight lang="pascal" inline>42</syntaxhighlight> (tai [[Hexadecimal/fi|heksadesimaalisena]]<syntaxhighlight lang="pascal" inline> 2A </syntaxhighlight>) määritellään olevan <syntaxhighlight lang="pascal" inline>*</syntaxhighlight> |
<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> | <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> | ||
== Standardi Pascal == | == Standardi Pascal == | ||
− | Symbolia <syntaxhighlight lang="pascal" | + | Symbolia <syntaxhighlight lang="pascal" inline>*</syntaxhighlight>, joka lausutaan “tähdeksi tai kertomerkiksi”, käytetään [[Pascal/fi|Pascal]]:ssa |
* numeroiden kertolaskuna tai | * numeroiden kertolaskuna tai | ||
* [[Set|Joukkojen]] leikkauksen merkkinä. | * [[Set|Joukkojen]] leikkauksen merkkinä. | ||
Line 34: | Line 34: | ||
== Potenssiinkorotus == | == Potenssiinkorotus == | ||
− | Lisäksi [[FPC]]:ssä on kaksi peräkkäistä tähtimerkkiä <syntaxhighlight lang="pascal" | + | Lisäksi [[FPC]]:ssä on kaksi peräkkäistä tähtimerkkiä <syntaxhighlight lang="pascal" inline>**</syntaxhighlight> |
sisältävä potenssiin korotus operaattori. Perusmäärittelyissä sitä ei kuitenkaan ole määritelty millekään tyypille. Sen sijaan sinulla on mahdollisuus tehdä se itse. | sisältävä potenssiin korotus operaattori. Perusmäärittelyissä sitä ei kuitenkaan ole määritelty millekään tyypille. Sen sijaan sinulla on mahdollisuus tehdä se itse. | ||
Line 53: | Line 53: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Saat helposti saataville ylikuormitukset {{Doc|package=RTL|unit=math|text=<syntaxhighlight lang="pascal" | + | Saat helposti saataville ylikuormitukset {{Doc|package=RTL|unit=math|text=<syntaxhighlight lang="pascal" inline>math</syntaxhighlight>}} ja {{Doc|package=RTL|unit=math|text=<syntaxhighlight lang="pascal" inline>matrix</syntaxhighlight> unit}} ne [[Uses|otetaan käyttöön]]. |
== Muut esiintymiset == | == Muut esiintymiset == | ||
− | Pascalin alkuvuosina kaikki tietokoneet eivät välttämättä tunteneet [[Comments/fi|kommenttien]] avaavaa ja sulkevaa alltosulkua <syntaxhighlight lang="pascal" | + | Pascalin alkuvuosina kaikki tietokoneet eivät välttämättä tunteneet [[Comments/fi|kommenttien]] avaavaa ja sulkevaa alltosulkua <syntaxhighlight lang="pascal" inline>{ }</syntaxhighlight>. |
− | Jotta tällaisiin järjestelmiin olisi mahdollista saada lohko kommentteja vaihtoehtoisesta syntaksista, myös kahden merkin <syntaxhighlight lang="pascal" | + | Jotta tällaisiin järjestelmiin olisi mahdollista saada lohko kommentteja vaihtoehtoisesta syntaksista, myös kahden merkin <syntaxhighlight lang="pascal" inline>(*</syntaxhighlight> ja <syntaxhighlight lang="pascal" inline>*)</syntaxhighlight> |
sallitaan, mutta niitä ei saa laittaa keskenään ristiin: | sallitaan, mutta niitä ei saa laittaa keskenään ristiin: | ||
− | <syntaxhighlight lang="pascal" | + | <syntaxhighlight lang="pascal" inline>(*</syntaxhighlight> ''täytyy'' löytää <syntaxhighlight lang="pascal" inline>*)</syntaxhighlight>, eikä huomio tällöin <syntaxhighlight lang="pascal" inline>}</syntaxhighlight> vaikka se lopettaa lohkokommentin myös. |
− | Jos C-kielen kaltaiset operaattorit sallittiin kääntäjädirektiivillä [[sCoperator|<syntaxhighlight lang="pascal" | + | Jos C-kielen kaltaiset operaattorit sallittiin kääntäjädirektiivillä [[sCoperator|<syntaxhighlight lang="pascal" inline>{$COperator on}</syntaxhighlight>]] niin voidaan käyttää syntaksin <syntaxhighlight lang="pascal" inline>i := i * n</syntaxhighlight> tilalla <syntaxhighlight lang="pascal" inline>i *= n</syntaxhighlight>. |
Mutta tekemällä näin, poistut Pascalin pääsuunnasta. Koodi toimii teknisesti, mutta matemaattisesti se tulee vääräksi. | Mutta tekemällä näin, poistut Pascalin pääsuunnasta. Koodi toimii teknisesti, mutta matemaattisesti se tulee vääräksi. | ||
{{Symbols}} | {{Symbols}} |
Latest revision as of 17:21, 6 August 2022
│
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
ASCII:ssa ja UTF-8:ssa desimaalisen merkkikoodin 42
(tai heksadesimaalisena2A
) määritellään olevan *
Standardi Pascal
Symbolia *
, joka lausutaan “tähdeksi tai kertomerkiksi”, käytetään Pascal:ssa
- numeroiden kertolaskuna tai
- Joukkojen leikkauksen merkkinä.
program asteriskDemo(input, output, stderr);
type
day = (monday, tuesday, wednesday,
thursday, friday, saturday, sunday);
var
i: longint;
n: real;
m: set of day;
begin
// kertolasku operaattori
i := 6 * 7; // i saa arvokseen 42
n := 6.0 * 7.0; // n saa arvokseen 42.0
// leikkaus operaattori
m := [saturday, sunday] * [sunday, monday];
// m on nyt {sunday}
end.
Potenssiinkorotus
Lisäksi FPC:ssä on kaksi peräkkäistä tähtimerkkiä **
sisältävä potenssiin korotus operaattori. Perusmäärittelyissä sitä ei kuitenkaan ole määritelty millekään tyypille. Sen sijaan sinulla on mahdollisuus tehdä se itse.
program exponentiation(input, output, stderr);
// laitetaan operaattorin ylikuormitus saataville
{$mode objfpc}
operator ** (const base: integer; const exponent: integer): integer;
begin
result := trunc(exp(ln(base) * exponent));
end;
begin
writeLn(2 ** 10); // tulostaa 1024
end.
Saat helposti saataville ylikuormitukset math
ja matrix
unit ne otetaan käyttöön.
Muut esiintymiset
Pascalin alkuvuosina kaikki tietokoneet eivät välttämättä tunteneet kommenttien avaavaa ja sulkevaa alltosulkua { }
.
Jotta tällaisiin järjestelmiin olisi mahdollista saada lohko kommentteja vaihtoehtoisesta syntaksista, myös kahden merkin (*
ja *)
sallitaan, mutta niitä ei saa laittaa keskenään ristiin:
(*
täytyy löytää *)
, eikä huomio tällöin }
vaikka se lopettaa lohkokommentin myös.
Jos C-kielen kaltaiset operaattorit sallittiin kääntäjädirektiivillä {$COperator on}
niin voidaan käyttää syntaksin i := i * n
tilalla i *= n
.
Mutta tekemällä näin, poistut Pascalin pääsuunnasta. Koodi toimii teknisesti, mutta matemaattisesti se tulee vääräksi.
single characters |
|
character pairs |
|