This is an old revision of the document!
Laboratorium: Pętla "while", formatowanie kodu, debuggowanie
Aby sprawdzić, czy dla zadanej liczby $x$ zachodzi $4 < x < 6$ należy zapisać wyrażenie następująco:
if (4 < x && x < 6) ...
Wyrażenie 4 < x < 6
zgodnie z priorytetami operatorów równoważne jest (4 < x) < 6
, a ponieważ w języku C operatory porównania (np. '<') zwraca wartość całkowitą 1
bądź 0
, to przykładowo dla $x = 7$ otrzymamy (1 < 7) < 6
⇔ 1 < 6
⇔ 1
(co oczywiście nie jest pożądanym wynikiem).
#include <stdio.h> #include <stdlib.h> int main() { int n = 5; int k = 3; int iloczyn = 0; int n0 = n; // zapamietaj wartosc `n`, bo bedziemy ja modyfikowac... while (n > 0) { iloczyn = iloczyn + k; n = n - 1; } printf("%d * %d = %d\n", n0, k, iloczyn); return 0; }