Страница 25 из 85 1.3.6. Мультипликативные операции К этому классу операций относятся операции умножения (*), деления (/) и получение остатка от деления (%). Операндами операции (%) должны быть целые числа. Отметим, что типы операндов операций умножения и деления могут отличаться, и для них справедливы правила преобразования типов. Типом результата является тип операндов после преобразования. Операция умножения (*) выполняет умножение операндов. int i=5; float f=0.2; double g,z; g=f*i; Тип произведения i и f преобразуется к типу double, затем результат присваивается переменной g. Операция деления (/) выполняет деление первого операнда на второй. Если две целые величины не делятся нацело, то результат округляется в сторону нуля. При попытке деления на ноль выдается сообщение во время выполнения. int i=49, j=10, n, m; n = i/j; /* результат 4 */ m = i/(-j); /* результат -4 */ Операция остаток от деления (%) дает остаток от деления первого операнда на второй. Знак результата зависит от конкретной реализации. В данной реализации знак результата совпадает со знаком делимого. Если второй операнд равен нулю, то выдается сообщение. int n = 49, m = 10, i, j, k, l; i = n % m; /* 9 */ j = n % (-m); /* 9 */ k = (-n) % m; /* -9 */ l = (-n) % (-m); /* -9 */ |