Что будет выведено на экран в результате работы программы
#include
#include
#include
main()
{
int i,sum=0;
for (i=2;i<=20;i++)
{
if ((i>=3)&&(i<=8)) sum = sum +i%2;
if (i*i > 20) break;
}
printf("%d",sum);
getch();
}
/Пояснение: команда break - принудительно завершает цикл.
C++
Answers & Comments
2) Видим первое условие: i>=3 и i<=8 соответственно, когда циклическая переменная будет равна 3 (i=3) будет выполнено условие.
А также при i=9 условие не будет выполняться.
3) Видим второй блок условий. Они подразумевают, что квадрат переменной не должен быть выше границы в 20 единиц. Берем на заметку, что квадрат 5 равен 25, что является подходящим под условие и принудительно завершит цикл.
4) Итак, при первом цикле переменная равна 2. Ни одно из условий не выполниться. При i=3 выполниться первое условие и сумма увеличиться на остаток от деления i на 2, т.е. на 1. Это условие будет выполняться до 5, позже цикл прервёт второе условие. Значит необходимо посчитать остатки от деления i (3..5) на 2.
Ответ: 2