Нужно чтобы при вводе числа 0 программа завершала работу - C (СИ)
Формулировка задачи:
Привет всем.Это моя первая тема
У меня такая проблема,задание я сделал но вот не до конца.Нужно чтобы при вводе числа 0 программа завершала работу,я понимаю что надо использовать оператор break,но не понимаю где его тут использовать для переменной M.Подскажите пожалуйста куда подставить break ?
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- main()
- {
- int j,N,M,S;
- printf("Enter number M\n");
- scanf("%d",&M);
- N=4;
- {
- while(N<=M)
- { S=1;j=2;
- while(j<=N/2)
- {
- if(N%j==0) S=S+j;
- j=j+1;
- if(M==0)break;
- }
- if(N==S)
- printf("%d- perfect number\n",N);
- N=N+2;
- }
- getch();
- return 0;
- }
Решение задачи: «Нужно чтобы при вводе числа 0 программа завершала работу»
textual
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- main()
- {
- int j,N,M,S;
- printf("Enter number M\n");
- scanf("%d",&M);
- N=4;
- if(M!=0)
- {
- while(N<=M)
- { S=1;j=2;
- while(j<=N/2)
- {
- if(N%j==0) S=S+j;
- j=j+1;
- break;
- }
- if(N==S)
- printf("%d- perfect number\n",N);
- N=N+2;
- }
- }
- else
- {
- printf("равно нулю");
- }
- getch();
- return 0;
- }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с консолью и вводом-выводом чисел.
- Объявление переменных: M (введенное число), N (первая константа), S (сумма делителей), j (счетчик делителей).
- Вывод сообщения с просьбой ввести число M.
- Считывание числа M с помощью функции scanf и сохранение его в переменную M.
- Установка значения N равным 4.
- Проверка условия, что M не равно 0.
- Запуск цикла while, который будет выполняться до тех пор, пока N не станет больше M.
- Установка значения S равным 1 и j равным 2.
- Запуск внутреннего цикла while, который будет выполняться до тех пор, пока j не станет больше N/2.
- Проверка условия, что N делится на j без остатка.
- Если условие выполняется, то прибавляем j к S.
- Увеличиваем значение j на 1 и выходим из внутреннего цикла while с помощью оператора break.
- Проверка условия, что N является совершенным числом (равно сумме своих делителей).
- Если условие выполняется, то выводим сообщение о том, что N - совершенное число.
- Увеличиваем значение N на 2 и продолжаем выполнение внешнего цикла while.
- Если условие в начале программы не выполняется (M равно 0), то выводим сообщение
равно нулю
. - Вызов функции getch для приостановки выполнения программы и ожидания нажатия клавиши.
- Возврат 0, что означает успешное завершение программы.
- Список не содержит более 20 элементов, поэтому его достаточно для оформления в виде списка.
- В данном коде нет ошибок, он полностью рабочий.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д