Цикл с предусловием while
while (проверочное условие)тело;
При выполнении этого оператора вначале вычисляется значение проверочного условия. Если это значение истинно, выполняется тело цикла, затем значение выражения проверяется вновь и т. д., до тех пор, пока выражение не примет значение «ложь».
Если выражение принимает значение «ложь» при первой же проверке, то тело цикла, не выполняется вообще.
В операторе обязательно изменение значений переменных, влияющих на значение проверочного условия. При невыполнении этого условия получаем пример того, что называется «зацикливанием».
Если выражение принимает значение «ложь» при первой же проверке, то тело цикла, не выполняется вообще.
В операторе обязательно изменение значений переменных, влияющих на значение проверочного условия. При невыполнении этого условия получаем пример того, что называется «зацикливанием».
while (10>0)
cout << 10;
Пример 1. Найти сумму всех натуральных кратных 4 чисел, не превосходящих число 416.
Указание: мы будем искать сумму чисел от 4 до 416, и каждое следующее слагаемое отличается от предыдущего на 4.
#include <iostream>
using namespace std;
int main()
{
int i, s;
s = 0;
i = 4;
while (i <= 416)
{
s = s + i;
i += 4;
}
cout << s;
return 0;
}
Задание 1. Подсчитать количество цифр в десятичной записи целого неотрицательного числа N.
Указание: будем делить число на 10 до тех пор, пока не останется ни одной цифры. В переменную K будем заносить количество цифр.
Тесты Посмотреть решение
Экспериментальный раздел работы
1. Дано натуральное число N. Вывести на экран все цифры числа в обратном порядке, т.е., если N=4378519, то на выходе: 9 1 5 8 7 3 4.
2. Дано натуральное число N. Вывести на экран все цифры числа в прямом порядке, т.е., если N=4378519, то на выходе: 4 3 7 8 5 1 9.
Задание 2. Дано натуральное число N. Вывести число, цифры которого записаны в обратном порядке.
2. Дано натуральное число N. Вывести на экран все цифры числа в прямом порядке, т.е., если N=4378519, то на выходе: 4 3 7 8 5 1 9.
Задание 2. Дано натуральное число N. Вывести число, цифры которого записаны в обратном порядке.
Указание: выделяя цифры числа, найдем число M, цифры которого записаны в обратном порядке.
Тесты Посмотреть решение
2. Дано натуральное число N. Выбросить из записи числа N все цифры, равные 1, оставив при этом прежним порядок остальных цифр. Например, число 321481 преобразуется в число 3248.
3. Приписать к исходному числу n такое же число. Например, из числа 1903 должно быть получено число 19031903.
4. Дано натуральное число N. Выбросить из записи числа N все четные цифры.
Экспериментальный раздел работы
1. Дано натуральное число N. Определить является ли оно палиндромом.2. Дано натуральное число N. Выбросить из записи числа N все цифры, равные 1, оставив при этом прежним порядок остальных цифр. Например, число 321481 преобразуется в число 3248.
3. Приписать к исходному числу n такое же число. Например, из числа 1903 должно быть получено число 19031903.
4. Дано натуральное число N. Выбросить из записи числа N все четные цифры.
Задания
1. Найдите ошибки.
А) k = 1; f = 0;
while (k < n)
f = f * k;
f = f * k;
k = к + 1;
Б) Р = 2;
while (р >= 0)
{
{
а = a + р;
р = р + 2;
}
2. Определите значения переменных а и b после выполнения операторов:
а = 1 ; b = 1;
while (а <= 3)
а = а+1;
b = b+1;
а = а+1;
b = b+1;
3. Дана последовательность операторов:
а = 1;
b = 1;
а = 1;
b = 1;
while (a+b < 8)
{
a = a + 1;
b = b+2;
}
{
a = a + 1;
b = b+2;
}
s = a + b
Сколько раз выполняется проверка логического выражения в операторе while? Определите значения переменных а, b и s после завершения этой
последовательности операторов?
Задания для самостоятельной работы
1. Определите значение переменной s после выполнения следующих операторов:
• s = 0; i = 0; w hile (i < 5) { i++; s = s + 100 / i;}
• s = 0; i = 1; while (i > 1) { s = s+100 / i; i--;}
2. Найдите и исправьте ошибки в следующем фрагменте программы,
определяющей для заданного натурального числа n число, записанное цифрами числа
n в обратном порядке.
р = n ;
while (р >= 0)
{
{
а = a + р % 10;
р = р / 10
}
3. Найти минимальное число, большее 300, которое нацело делится на 19.
4. Поменять местами первую и последнюю цифры числа. Например, из числа 8547 должно быть получено число 7548.
5. Дано натуральное число N. Выбросить из записи числа N все цифры, равные 1 и 5, оставив при этом прежним порядок остальных цифр. Например, число 35145581 преобразуется в число 348.