Kertolasku, Jakolasku ja Jakojäännös
Pyyhkäise näyttääksesi valikon
Kertolaskuoperaattori
Kertolaskuoperaattori * palauttaa operaattoriensa tulon. Esimerkiksi, jos halutaan selvittää, kuinka paljon vettä tarvitaan uima-altaan täyttämiseen:
Main.c
123456789101112131415#include <stdio.h> int main() { int height = 2; // In meters int width = 7; // In meters int length = 10; // In meters // A cubic meter contains one thousand liters int liters = (height * width * length) * 1000; printf("Size of pool: %d liters", liters); return 0; }
Jakolaskuoperaattori
Jakolaskuoperaattori / jakaa vasemmanpuoleisen operaattorin oikeanpuoleisella.
Oletetaan, että haluat laskea auton nopeuden:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters double t = 3; // Three hours double v = s / t; printf("Velocity = %f m/h", v); return 0; }
double-muuttujien käyttäminen varmistaa, että tulos voi olla desimaaliluku, mikä antaa tarkemman vastauksen. Jos käyttäisimme vain kokonaislukutyyppejä, tulos olisi myös kokonaisluku:
int + int => int
int + double => double
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters int t = 3; // Three hours // Without `double v` variable printf("Velocity = %d m/h", s/t); return 0; }
On tärkeää huomata, että pelkkä muotoilumääreen vaihtaminen ei korjaa virheellistä kokonaislukujakoa:
Main.c
12345678910#include <stdio.h> int main() { int s = 200; // In meters int t = 3; // Three hours printf("Velocity = %f m/h", s/t); // Changed specifier return 0; }
On kuitenkin olemassa tapa saada oikea jakotulos ilman uuden muuttujan käyttöönottoa:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters double t = 3; // Three hours printf("Velocity = %f m/h", s/t); // Changed specificator return 0; }
Jotta jakolasku tuottaa desimaalituloksen, vähintään toisen operandin tulee olla desimaalitietotyyppiä, kuten double.
Jäännösoperaattori
%-operaattori palauttaa jakolaskun jäännöksen. Esimerkiksi:
Main.c
1234567891011#include <stdio.h> int main() { printf("Modulo 8 %% 5 = %d\n", 8 % 5); printf("Modulo 10 %% 3 = %d\n", 10 % 3); printf("Modulo 7 %% 5 = %d\n", 7 % 5); printf("Modulo 20 %% 5 = %d\n", 20 % 5); return 0; }
Jos haluat näyttää %-merkin merkkijonossa (esim. printf-lauseessa), käytä %% esittämään yhtä %-merkkiä. Tämä kertoo kääntäjälle, että haluat tulostaa %-merkin etkä käyttää sitä muotoilumäärittäjänä.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme