Дана последовательность из n вещественных чисел. Первое число в последовательности нечетное. Найти сумму всех идущих подряд в начале последовательности нечетных чисел. Условный оператор не использовать. Решить задачу используя циклическую конструкцию for.
РЕШАТЬ ЧЕРЕЗ ПИТОН
Ответы на вопрос
Ответ:
О четности или нечетности вещественного числа можно говорить лишь если оно не имеет дробной части. В этом случае оно приводится к целому числу. Я не знаю, зачем дано абсолютно глупое требование не использовать условный оператор, но выполнить его можно. Надо умножать число на абсолютную величину остатка от его деления на 2. Если число четное, остаток будет нулевым, нечетное - единичным. Поэтому результатом умножения будет или само нечетное число, или ноль. И можно все подряд складывать.
CLS
DIM n AS INTEGER
INPUT "n=", n
DIM i AS INTEGER, k AS INTEGER, x AS SINGLE, s AS SINGLE, i AS INTEGER
s = 0
FOR i = 1 TO n
INPUT "->", x
s = s + x * (ABS(INT(x)) MOD 2)
NEXT i
PRINT "s = ", s
Объяснение: