Лабораторная работа №1
Вид материала | Лабораторная работа |
СодержаниеЛабораторная работа № 5 Do While …Loop Do Until … Loop. Do …Loop While. Public Sub uuu() |
- Методические указания к лабораторным работам Лабораторная работа, 357.24kb.
- Лабораторная работа №3 кпк лабораторная работа №3 Тема: карманный персональный компьютер, 173.34kb.
- Методические возможности стенда Особенности работы на стендах уилс-1 Ознакомительное, 1487.3kb.
- Лабораторная работа по курсу «Физические основы микроэлектроники», 136.21kb.
- Лабораторная работа, 166.92kb.
- Самостоятельная работа по учебным пособиям, 471.48kb.
- Конспект урока в 9 классе по теме: «Магний», 84.54kb.
- Лабораторная работа №1 Введение в Windows. Работа с окнами и приложениями в Windows, 67.41kb.
- Знакомство c Excel, 1212.51kb.
- Лабораторная работа, 105.21kb.
Лабораторная работа № 5
ЦЕЛЬ РАБОТЫ: Изучение и применение операторов цикла с предусловием и постусловием.
- Операторы цикла с предусловием:
a) Do While <условие> б)While <условие>
<операторы> < операторы >
[Exit Do] Wend
< операторы >
Loop
Работа: Тело цикла выполняется в том случае, если условие имеет значение истина. Если условие ложно, то управление в программе передается оператору, следующему за оператором цикла.
На блок схеме данные операторы изображаются следующим образом
Рисунок 1 – Операторы с предусловие Do While <условие><тело цикла> Loop; While <условие><тело цикла> Loop
Кроме описанных выше операторов с предусловием существует еще один оператор с предусловием:
Do Until <условие>
<операторы>
[Exit Do]
< операторы >
Loop
Работа: Тело цикла выполняется в том случае, если условие имеет значение ложь. Если условие истинно, то управление в программе передается оператору, следующему за оператором цикла.
На блок схеме этот оператор отображается следующим образом
Рисунок 2 – Операторы с предусловие Do Until<условие>< <тело цикла> Loop
Пример: Вводить числа, пока их сумма не превысит введенного числа m.
Данная задача решается с применением оператора с предусловием Do While …Loop.
Public Sub uuu()
Dim x As Integer
Dim m As Integer
Dim s As Integer
Dim i As Integer
m = InputBox("Введите число m")
MsgBox ("Вводите числа")
i = 1
s = InputBox("Введите 1 число")
Do While s <= m
i = i + 1
x = InputBox("Введите " & i & "число")
s = s + x
Loop
MsgBox ("Количество введенных чисел " & i)
End Sub
Далее приведен код программы той же задачи, но с использованием цикла Do Until … Loop.
Public Sub uuu()
Dim x As Integer
Dim m As Integer
Dim s As Integer
Dim i As Integer
m = InputBox("Введите число m")
MsgBox ("Вводите числа")
i = 1
s = InputBox("Введите 1 число")
Do Until s > m
i = i + 1
x = InputBox("Введите " & i & "число")
s = s + x
Loop
MsgBox ("Количество введенных чисел " & i)
End Sub
- Операторы цикла с постусловием
a) Do
<операторы>
[Exit Do]
< операторы >
Loop While <условие>
Работа: Выполняется тело цикла. Затем вычисляется условие. Если условие имеет значение истина, то опять выполняется тело цикла. Если условие ложно, то управление в программе передается оператору, следующему за оператором цикла.
На блок схеме данные оператор изображаются следующим образом
Рисунок 3 – Операторы с постусловие Do <тело цикла> Loop While<условие><
Далее приведен код программы, с использованием цикла Do …Loop While.
Public Sub uuu()
Dim x As Integer
Dim m As Integer
Dim s As Integer
Dim i As Integer
m = InputBox("Введите число m")
MsgBox ("Вводите числа")
i = 0
s = 0
Do
i = i + 1
x = InputBox("Введите " & i & "число")
s = s + x
Loop While s <= m
MsgBox ("Количество введенных чисел " & i)
End Sub
б) Do
<операторы>
[Exit Do]
< операторы >
Loop Until <условие>
Работа: Выполняется тело цикла. Затем вычисляется условие. Если условие имеет значение ложь, то опять выполняется тело цикла. Если условие истинно, то управление в программе передается оператору, следующему за оператором цикла.
На блок схеме данные оператор изображаются следующим образом
Рисунок 4 – Операторы с постусловие Do <тело цикла> Loop Until<условие><
Ниже находится код все той же задачи, но с использованием последнего описанного цикла.
Public Sub uuu()
Dim x As Integer
Dim m As Integer
Dim s As Integer
Dim i As Integer
m = InputBox("Введите число m")
MsgBox ("Вводите числа")
i = 0
s = 0
Do
i = i + 1
x = InputBox("Введите " & i & "число")
s = s + x
Loop Until s > m
MsgBox ("Количество введенных чисел " & i)
End Sub
ЗАДАНИЕ:
Решить задачу согласно своему варианту, используя все 5 способов описания операторов цикла с предусловием и постусловием
Вари- ант | | | | | | | | | | | | | | |
Но- мера | 1, | 2, | 5, | 6, | 8, | 9, | 10, | 11, | 12, | 13, | 14, | 7, | 4, | 3, |
- Начиная с какого номера n имеет место неравенство n!>xn, x - любое действительное число.
- Вводить последовательность до тех пор, пока не встретятся три подряд идущих положительных числа. Тогда прервать ввод и сообщить, сколько во введенной последовательности было всего чисел.
- Вводить последовательность до тех пор, пока не встретятся три подряд идущих положительных числа. Тогда прервать ввод и сообщить, сколько во введенной последовательности было положительных чисел.
- Вводить последовательность до тех пор, пока не встретятся три подряд идущих положительных числа. Тогда прервать ввод и сообщить, сколько во введенной последовательности было отрицательных чисел.
- Определить сколько натуральных подряд идущих четных чисел нужно сложить (найти минимальное число таких слагаемых), чтобы их сумма была больше введенного числа.
- Дано натуральное N и первый член бесконечного ряда: Y1=1. Вычислить сумму членов бесконечного ряда, образованного по следующему рекуррентному соотношению: Yi=2*Yi-1 (то есть S=1+2+4+8+16+...). Вычисление суммы продолжать до тех пор, пока соблюдается условие |Yi-Yi-1|
- Последовательно вводятся числа до тех пор, пока во введенной совокупности не окажется три нуля. Вывести количество введенных чисел.
- Дано натуральное число.
а) Верно ли, что сумма его цифр меньше А?
б) Верно ли, что произведение его цифр больше В?
в) Верно ли, что это число k-чзначное?
- Дано натуральное число. Определить номер цифры 3 в нем, считая от конца числа. Если такой цифры нет, ответом должно быть число 0, если таких цифр в числе несколько — должен быть определен номер самой правой из них.
- Дано натуральное число. Если в нем есть цифры "2" и "5", то определить, какая из них расположена в числе левее. Если одна или обе эти цифры встречаются в числе несколько раз, то должны быть рассмотрены самые левые из одинаковых цифр.
- Дано натуральное число. Определить:
а) количество цифр в нем;
б) сумму его цифр;
в) произведение его цифр;
г) среднее арифметическое его цифр;
- Дано натуральное число. Определить:
д) сумму квадратов его цифр;
e) сумму кубов его цифр;
ж) его первую цифру;
з) сумму его первой и последней цифр.
- Дано натуральное число.
д) Верно ли, что его первая цифра не превышает 6?
e) Верно ли, что оно начинается и заканчивается одной и той же цифрой?
ж) Определить, какая из его цифр больше: первая или последняя.
- Дано натуральное число. Определить:
а) количество цифр "3" в нем;
б) сколько раз в нем встречается цифра, равная последней;
в) количество четных цифр в нем.