Нахождение числа различных построений для группы из N человек - QBasic

Узнай цену своей работы

Формулировка задачи:

Иван Петрович преподает в школе физкультуру, но интересуется также математикой, в основном, с практической точки зрения. Например, его интересует вопрос, сколько различных построений существует для группы из N человек. Иван Петрович выяснил, что если N – простое число, то получается только 2 построения: в колонну по одному (1×N) и в шеренгу (N×1). Эти тривиальные построения возможны для любого N  >  1 (для N  =  1 существует только одно построение 1×1, которое не является ни шеренгой, ни колонной). Если N – составное число, то существует и другие нетривиальные построения. Для 100 человек существует девять построений: 1×100, 2×50, 4×25, 5×20, 10×10, 20×5, 25×4, 50×2 и 100×1. Напишите программу, которая находит число различных построений для группы из N человек. Входные данные В первой строке ввода содержится одно целое число N (1  ≤ N  ≤  109). Выходные данные Вывести одно целое число – количество различных построений для группы из N человек.

Решение задачи: «Нахождение числа различных построений для группы из N человек»

textual
Листинг программы
DIM n AS LONG, i AS LONG, k AS LONG
n = 100
FOR i = 1 TO n
    IF n \ i = n / i THEN k = k + 1
NEXT i
PRINT k

Объяснение кода листинга программы

  1. DIM n AS LONG, i AS LONG, k AS LONG — здесь объявляются три переменные типа LONG (целые числа) — n, i, k.
  2. n = 100 — в переменную n записывается значение 100.
  3. FOR i = 1 TO n — начинается цикл, который будет выполняться от i = 1 до i = n (включительно).
  4. IF n \ i = n / i THEN k = k + 1 — внутри цикла проверяется условие, что n не делится на i без остатка. Если это условие выполняется, то значение переменной k увеличивается на 1.
  5. NEXT i — заканчивается цикл.
  6. PRINT k — выводится значение переменной k.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы