Введение
В этом лабораторном задании мы создадим C-программу для нахождения делителей заданного числа.
Примечание: вам нужно самостоятельно создать файл
~/project/main.c, чтобы практиковаться в написании кода и изучить, как компилировать и запускать его с использованием gcc.
cd ~/project
## создать main.c
touch main.c
## скомпилировать main.c
gcc main.c -o main
## запустить main
./main
Получение ввода от пользователя
Сначала мы получим целое число в качестве ввода от пользователя. Это целое число будет использоваться для нахождения делителей числа.
#include <stdio.h>
int main()
{
int num;
printf("Введите целое число: ");
scanf("%d", &num);
// код для нахождения делителей
return 0;
}
Поиск делителей
Далее мы напишем цикл для поиска делителей числа. Делителями числа являются те числа, которые делят данное число нацело без остатка. Чтобы найти делители числа, мы будем итерироваться от 1 до (число / 2) и проверять, делится ли текущее число на данное число нацело. Если да, мы выводим текущее число в качестве делителя данного числа.
#include <stdio.h>
int main()
{
int num, i;
printf("Введите целое число: ");
scanf("%d", &num);
printf("Делители числа %d: ", num);
for(i = 1; i <= num/2; i++)
{
if(num % i == 0)
{
printf("%d ", i);
}
}
printf("%d", num);
return 0;
}
Тестирование программы
Теперь мы скомпилируем и запустим нашу программу, чтобы проверить, работает ли она правильно. Мы выполним программу и введем целое число в качестве ввода. Программа должна найти и вывести все делители заданного числа.
Полный код
Вот полный код программы:
#include <stdio.h>
int main()
{
int num, i;
printf("Введите целое число: ");
scanf("%d", &num);
printf("Делители числа %d: ", num);
for(i = 1; i <= num/2; i++)
{
if(num % i == 0)
{
printf("%d ", i);
}
}
printf("%d", num);
return 0;
}
Резюме
В этом практическом занятии мы создали программу на C для нахождения делителей заданного числа. Мы узнали, как использовать циклы и условные операторы для написания алгоритма поиска делителей числа. Мы также проверили программу, чтобы убедиться, что она выводит правильный результат.



