C algajatele/tingimuslaused
Ilme
Tingimused
[muuda]Programmeerimisel on üldjuhul vaja, et käske täidetaks ainult siis või seni kui mingi tingimus on täidetud.
If..else
[muuda]See programm küsib kasutajalt kahe kuubi küljepikkused, arvutab ja kuvab seejärel suurema kuubi ruumala. Et aru saada kumb küljepikkus suurem on, kasutatakse if..else lauset.
#include <stdio.h>
#include <math.h>
int main() {
int a1, a2, kuubi_ruumala;
//andmete sisestus
printf("Esimese kuubi kyljepikkus? ");
scanf("%d", &a1);
printf(" Teise kuubi kyljepikkus? ");
scanf("%d", &a2);
if (a1 > a2) { //kui esimene küljepikkus on suurem
kuubi_ruumala = pow(a1, 3); //tõsta a1 kuupi
} else {
kuubi_ruumala = pow(a2, 3); //muul juhul tõsta a2 kuupi
}
//väljasta tulemus
printf("Suurema kuubi ruumala on %d yhikut\n", kuubi_ruumala);
getchar();
return 0;
}
Do..While
[muuda]See programm teostab liitmistehteid. Kasutajalt küsitakse mitu liitmistehet on vaja teha, seejärel küsitakse vastav arv kordi liidetavat ning lõpuks väljastatakse vastus.
#include <stdio.h>
int main() {
int i=0, mitu, vahevastus, liidetav;
//andmete sisestus
printf("Mitu arvu liita kavatsed? ");
scanf("%d", &mitu);
//tsükkel
do {
printf("Liidetav? ");
scanf("%d", &liidetav);
vahevastus = vahevastus + liidetav;
++i;
} while (i<mitu);
//vastuse väljastamine
printf("Vastus on %d\n", vahevastus);
getchar();
return 0;
}
While
[muuda]Programm teeb põhimõtteliselt sama mis eelmine, aga kasutab while ehk järelkontrolliga tsüklit ülesande täitmiseks.
#include <stdio.h>
int main() {
int i=0, mitu, vahevastus, liidetav;
//andmete sisestus
printf("Mitu arvu liita kavatsed? ");
scanf("%d", &mitu);
//tsükkel
while (i<mitu) {
printf("Liidetav? ");
scanf("%d", &liidetav);
vahevastus = vahevastus + liidetav;
++i;
}
//vastuse väljastamine
printf("Vastus on %d\n", vahevastus);
getchar();
return 0;
}
For
[muuda]Taaskord sama ülesande pisut erinev lahendus.
#include <stdio.h>
int main() {
int i, mitu, vahevastus, liidetav;
//andmete sisestus
printf("Mitu arvu liita kavatsed? ");
scanf("%d", &mitu);
//tsükkel
for (i=0; i<mitu; ++i) {
printf("Liidetav? ");
scanf("%d", &liidetav);
vahevastus = vahevastus + liidetav;
}
//vastuse väljastamine
printf("Vastus on %d\n", vahevastus);
getchar();
return 0;
}