Распечатать все натуральные числа меньшие x, при делении на которые число x дает составной остаток - C (СИ)

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

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

Вариант №26 Ввести натуральное число x. Распечатать все натуральные числа меньшие x, при делении на которые число x дает составной остаток.

Решение задачи: «Распечатать все натуральные числа меньшие x, при делении на которые число x дает составной остаток»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
 
bool issimpl(int n)
{
    int count = 0;
    for (int div = 1; div <= n; div++)
        if ((n % div) == 0) count++;
    return count == 2 ? 1 : 0;
}
 
int main()
{
    int x = 0;
    printf("x = "); scanf("%d",&x);
 
    for (int t = 1; t < x; t++)
        if (!issimpl(x / t)) printf("%d ",t);
    printf("\n");
 
    _getch();
 
    return 0;
}

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

В этом коде:

  1. В функции issimpl(int n) осуществляется проверка, является ли число n простым. Для этого переменной count инициализируется значение 0, а затем в цикле от 1 до n проверяется, делится ли n на каждое из этих чисел без остатка. Если делится, то значение count увеличивается на 1. В конце функции возвращается значение 1, если count равно 2 (число простое), и 0 в противном случае.
  2. В функции main() переменной x присваивается значение, которое вводит пользователь.
  3. Затем в цикле (от 1 до x, но не включая x) проверяется, является ли число делителем x и не является простым. Если да, то оно выводится на экран.
  4. В конце программы вызывается функция _getch(), которая ожидает нажатия клавиши, и программа завершается.

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


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

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

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