|
|
|
| Здравствуйте.
не пойму почему вот этот код выводит цифру 1
int i, j;
i = 1;
j = 2;
cout << i%j << "\n";
|
ведь 1/2 = 0,5
почему остаток в выводе равен единице, а не цифре 5
либо я не понимаю оператора % | |
|
|
|
|
|
|
|
для: Den*s
(10.10.2011 в 16:17)
| | Нет этот оператор всегда возвращает целое число, т.е. 3/2 = 1.5, но целиком двоек в 3 только одна, т.е. 3 - (2 * 1) = 1. Тут тот же эффект 1 - (2 * 0) = 1. | |
|
|
|
|
|
|
|
для: cheops
(10.10.2011 в 17:16)
| | Хммм, думал что это дробная часть, а оказывается тут своя формула.
Интересный способ определения, целое число или дробное...
всегда делал что вроде этого
if ((int)i/j == (double)i/j) { ... }
|
| |
|
|
|