Вводится последовательность чисел (0 – конец последовательности) while, while do в си - C (СИ)
Формулировка задачи:
Вводится последовательность чисел (0 – конец последовательности). Определить
сколько положительных чисел и отрицательных чисел.
Решение задачи: «Вводится последовательность чисел (0 – конец последовательности) while, while do в си»
textual
Листинг программы
#include <stdio.h>
int main()
{
int i = 0;
unsigned int p = 0, m = 0;
printf("Num = ");
scanf("%d", &i);
while(i != 0)
{
if(i>0)
p++;
else
m++;
printf("Num = ");
if(!scanf("%d", &i))// Если введен некорректный символ, прерываем цикл ввода
break;
}
printf(">0 = %u\n", p);
printf("<0 = %u\n", m);
return 0;
}
Объяснение кода листинга программы
В этом коде:
- Объявлены три переменные: i, p, m типа int и unsigned int соответственно.
- Выводится сообщение
Num =и считывается число в переменную i. - В цикле while(i != 0) происходит проверка: если i больше нуля, то увеличивается значение переменной p, если меньше или равно нулю, то значение переменной m увеличивается.
- После каждой итерации цикла выводится сообщение
Num =и считывается новое число в переменную i. - Если при считывании числа происходит ошибка (вводится некорректный символ), то цикл прерывается командой break.
- После окончания цикла выводятся значения переменных p и m.
- Возвращается 0, чтобы указать, что программа успешно завершилась.