Рубрики

Алгоритмы | Разное | Вопрос 15

Каково возвращаемое значение следующей функции для 484? К чему это вообще?

bool fun(int n)

{

    int sum = 0;

    for (int odd = 1; n > sum; odd = odd+2)

       sum = sum + odd;

    return (n == sum);

}

(A) False, он проверяет, является ли данное число степенью 3
(B) Ложь, она проверяет, является ли данное число четным или нет
(C) False, он проверяет, является ли данное число нечетным или нет
(D) Правда, он проверяет, является ли данное число идеальным квадратом.

Ответ: (Д)
Пояснение: Данная функция добавляет все нечетные числа 1, 3, 5, 7, 9, 11…. пока сумма не станет меньше n. Если сумма становится равной n, тогда она возвращает истину. Это в основном тест на идеальные квадратные числа.

Все совершенные квадратные числа могут быть записаны как сумма нечетных чисел.

4 = 1 + 3
9 = 1 + 3 + 5
16 = 1 + 3 + 5 + 7
36 = 1 + 3 + 5 + 7 + 9
49 = 1 + 3 + 5 + 7 + 9 + 11
Тест на этот вопрос

Рекомендуемые посты:

Алгоритмы | Разное | Вопрос 15

0.00 (0%) 0 votes