begin
var quantity := 0;
var amount := 0;
var A := readinteger();
var B := readinteger();
for var i := A to B do
begin
if (i mod 3 = 0) and (i mod 10 <> 0) then
begin
inc(amount, i);
inc(quantity);
end;
end;
writeln(amount / quantity:0:2);
end.
Объяснение:
begin // Начало программы
var quantity := 0; // Объявление переменной, хранящей количество элементов, подходящих под условие
var amount := 0; // Объявление переменной, хранящей сумму элементов, подходящих под условие
var A := readinteger(); // Считывание числа А с клавиатуры
var B := readinteger(); // Считывание числа В с клавиатуры
for var i := A to B do // Идём от А до В
begin // Начало цикла
if (i mod 3 = 0) and (i mod 10 <> 0) then // Если значение переменной i делится на 3 без остатка И значение переменной i не заканчивается на 0
begin // Начало условного оператора
inc(amount, i); // Прибавляем к переменной amount значение переменной i
inc(quantity); // Прибавляем к переменной quantity единицу
end; // Конец условного оператора
end; // Конец цикла
writeln(amount / quantity:0:2); // Вывод среднего арифметического с точностью до 2 знаков после запятой
end. // Конец программы
Поделитесь своими знаниями, ответьте на вопрос:
Даны три числа в десятичной системе счисления а=23 в=19 с=26 переведите а в и с в двоичную систему счисления и выполните поразрядно логическую операцию (a v b) & c ответ дайте в десятичной системе счисления
19 = 16 + 2 + 1 = 10011_2
26 = 16 + 8 + 2 = 11010_2
Двоичные операции применяются ко всем битам, стоящим на одинаковых местах:
- "или" (v): в результате стоит 1, если на этом месте хотя бы у одного из исходных чисел стоит 1.
A v B = 10111_2 v 10011_2 = 10111_2 (например, на 3-м месте у А стоит 1, у B стоит 0, поэтому в результате там стоит 1)
- "и" (&): в результате стоит 1, если на этом месте у всех исходных чисел стоит 1.
(A v B) & C = 10111_2 & 11010_2 = 10010_2 = 16 + 2 = 18.
ответ. 18.