Versions Compared

Key

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

C-kieleen kuuluvat aritmeettiset perusoperaattorit, jotka ovat seuraavat:
||merkki||operaatio||esimerkki||
|{{-}}|vähennyslasku|{{x = a-3;}}|
|{{+}}|yhteenlasku|{{x = b+2;}}|
|{{*}}|kertolasku|{{x = a*b;}}|
|{{/}}|jakolasku|{{x = a/2;}}|
|{{%}}|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;
{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
{code}

h3. Funktion parametrilistassa

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

h3. Muuttujien alkuarvona

{code}
int a = 3;
int b = 5;
int c = a*b; // Sijoitetaan tulon a * b tulos muuttujan c arvoksi
{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_.