Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0
Wiki Markup
h2. Aritmeettiset operaattorit

...



C-kieleen kuuluvat aritmeettiset perusoperaattorit, jotka ovat seuraavat:

...

merkki

...

operaatio

...

esimerkki

...

-

...

vähennyslasku

...


||merkki||operaatio||esimerkki||
|{{-}}|vähennyslasku|{{x = a-3;

...

+

...

yhteenlasku

...

}}|
|{{+}}|yhteenlasku|{{x = b+2;

...

*

...

kertolasku

...

}}|
|{{*}}|kertolasku|{{x = a*b;

...

/

...

jakolasku

...

}}|
|{{/}}|jakolasku|{{x = a/2;

...

%

...

jakolaskun jakojäännös

...

x = a % 2; // testaa onko a jaollinen kahdella vai ei

Unaarioperaattorit

merkki

operaatio

esimerkki

-=

vähennyslasku ja sijoitus

a-=3;

+=

lisäyslasku ja sijoitus

a+=3;

*=

tulo ja sijoitus

a*=3;

/=

osamäärä ja sijoitus

a/=3;

%=

modulo ja sijoitus

a%=3; // poistaa a:sta kolmen moninkerrat

--

dekrementointi eli vähennys yhdellä

x--; tai --x; (x:stä pois 1)

++

inkrementointi eli lisäys yhdellä

x++; tai ++x; (x:sään lisää 1)

  • Inkrementointi- ja dekrementointimerkit voidaan laittaa muuttujan eteen tai sen jälkeen.
  • Jos lisäys on for tai while-silmukan sisällä, tehdään ennen olevilla merkeillä testaus ennen silmukkaa ja jälkeen olevilla merkeillä silmukan suorituksen jälkeen.

Esimerkki unaarioperaattorien käytöstä

Seuraava sijoituslause

Code Block
}}|
|{{%}}|jakolaskun jakojäännös|{{x = a % 2; // testaa onko a jaollinen kahdella vai ei}}|

h2. Unaarioperaattorit

||merkki||operaatio||esimerkki||
|{{-=}}|vähennyslasku ja sijoitus|{{a-=3;}}|
|{{+=}}|lisäyslasku ja sijoitus|{{a+=3;}}|
|{{*=}}|tulo ja sijoitus|{{a*=3;}}|
|{{/=}}|osamäärä ja sijoitus|{{a/=3;}}|
|{{%=}}|modulo ja sijoitus|{{a%=3; // poistaa a:sta kolmen moninkerrat}}|
|{{--}}|dekrementointi eli vähennys yhdellä|{{x--; tai --x; (x:stä pois 1)}}|
|{{++}}|inkrementointi eli lisäys yhdellä|{{x++; tai ++x; (x:sään lisää 1)}}|

* Inkrementointi- ja dekrementointimerkit voidaan laittaa muuttujan eteen tai sen jälkeen.
* Jos lisäys on [for|Toistorakenteet#for] tai [while|Toistorakenteet#while]-silmukan sisällä, tehdään ennen olevilla merkeillä testaus ennen silmukkaa ja jälkeen olevilla merkeillä silmukan suorituksen jälkeen.

h3. Esimerkki unaarioperaattorien käytöstä

Seuraava sijoituslause
{code}
Luku = Luku+5;
{code}
voidaan kirjoittaa muotoon:

...


{code
}
Luku += 5;

Operaatioiden sijoitus

Matemaattisia operaatioita voidaan sijoittaa kaikkiin paikkoihin mihin muuttujiakin.

Sijoituslauseessa

Code Block

{code}

h2. Operaatioiden sijoitus

Matemaattisia operaatioita voidaan sijoittaa kaikkiin paikkoihin mihin muuttujiakin.

h3. Sijoituslauseessa

{code}
int x, luku1, luku2; // Esitellään muuttujat x, luku1 ja luku2
x = luku1 * luku2;   // Sijoitetaan luku1 kertaa luku2 tulos muuttujaan x

Funktion parametrilistassa

Code Block
{code}

h3. Funktion parametrilistassa

{code}
int luku1, luku2;
printf("%d + %d = %d\n", luku1, luku2, luku1+luku2);

Muuttujien alkuarvona

Code Block
{code}

h3. Muuttujien alkuarvona

{code}
int a = 3;
int b = 5;
int c = a*b; // Sijoitetaan tulon a * b tulos muuttujan c arvoksi

Matemaattiset apufunktiot

Suuri osa kaikista matemaattisista toiminnoista on ohjelmakirjastoissa, kuten esimerkiksi:

toiminto

funktio

esimerkki

neliöjuuri

sqrt()

float a = sqrt(x);

potenssi

pow()

int a = sqrt(x, 3);

sini

sin()

float a = sin(x);

kosini

cos()

float a = cos(x);

tangentti

tan()

float a = tan(x);

jne

kts math.h

...

{code}

h2. Matemaattiset apufunktiot

Suuri osa kaikista matemaattisista toiminnoista on ohjelmakirjastoissa, kuten esimerkiksi:
||toiminto||funktio||esimerkki||
|neliöjuuri|*sqrt()*|{{float a = sqrt\(x\);}}|
|potenssi|*pow()*|{{int a = sqrt\(x, 3\);}}|
|sini|*sin()*|{{float a = sin\(x\);}}|
|kosini|*cos()*|{{float a = cos\(x\);}}|
|tangentti|*tan()*|{{float a = tan\(x\);}}|
|jne|kts math.h||
Nämä löytyvät headerista _math.h_.