Студопедия
Карамелька - детский развивающий канал


Авиадвигателестроения Административное право Административное право Беларусии Алгебра Архитектура Безопасность жизнедеятельности Введение в профессию «психолог» Введение в экономику культуры Высшая математика Геология Геоморфология Гидрология и гидрометрии Гидросистемы и гидромашины История Украины Культурология Культурология Логика Маркетинг Машиностроение Медицинская психология Менеджмент Металлы и сварка Методы и средства измерений электрических величин Мировая экономика Начертательная геометрия Основы экономической теории Охрана труда Пожарная тактика Процессы и структуры мышления Профессиональная психология Психология Психология менеджмента Современные фундаментальные и прикладные исследования в приборостроении Социальная психология Социально-философская проблематика Социология Статистика Теоретические основы информатики Теория автоматического регулирования Теория вероятности Транспортное право Туроператор Уголовное право Уголовный процесс Управление современным производством Физика Физические явления Философия Холодильные установки Экология Экономика История экономики Основы экономики Экономика предприятия Экономическая история Экономическая теория Экономический анализ Развитие экономики ЕС Чрезвычайные ситуации ВКонтакте Одноклассники Мой Мир Фейсбук LiveJournal Instagram

Sub Сумма()




Dim sum1 As Integer, sum2 As Integer, i As Integer

Randomize

‘решение задачи с помощью цикла с предусловием

i = 10

Do While i > 0

‘цикла выполняется, пока логическое условие истинно

sum1 = sum1 + Int((10 * Rnd) + 1)

i = i - 1

Loop

MsgBox "Сумма чисел=" & sum1

‘решение задачи с помощью цикла с постусловием

i = 10

Do

‘цикла выполненяется, пока логическое условие ложно

sum2 = sum2 + Int((10 * Rnd) + 1)

i = i - 1

Loop Until i = 0

MsgBox "Сумма чисел=" & sum2

End Sub

Особенностью интерпретатора VBA является то, что значения переменных числовых типов перед выполнением процедуры полагаются равными 0. Поэтому в программе отсутствуют команды присваивания вида: sum1 = 0 и sum2=0.

Пример 2. Найти максимальное из n введенных с клавиатуры чисел. Приведены два варианта решения задачи с использованием циклов разных видов.

Option Explicit

Sub Max_n_while()

Dim n As Byte, k As Single, i As Byte, Max As Single

n = Val(InputBox("Введите количество чисел"))

i = 1

Do While i <= n

k = Val(InputBox("Введите число", "Ввод чисел"))

If i = 1 Then Max = k

If k > Max Then Max = k

i = i + 1

Loop

MsgBox "Наибольшее из чисел " & Max

End Sub

Option Explicit

Sub Max_n_until()

Dim n As Byte, k As Single, i As Byte, Max As Single

n = Val(InputBox("Введите количество чисел"))

i = 1

Do Until i > n

k = Val(InputBox("Введите число", "Ввод чисел"))

If i = 1 Then Max = k

If k > Max Then Max = k

i = i + 1

Loop

MsgBox "Наибольшее из чисел " & Max

End Sub

Если из текста программ удалить строку: If i = 1 Then Max = k, то программа будет работать корректно только в случае, когда хотя бы одно вводимое число неотрицательно. Это объясняется тем, что начальное значение переменной Max считается равным 0.

Пример 3. Найти сумму n первых членов ряда 1, 1/2, 1/3, ... 1/n,…

Option Explicit

Sub Summ_n()

Dim n As Byte, i As Byte, sum As Single

n = Val(InputBox("Введите количество членов ряда"))

For i =1 To n

sum = sum + 1 / i

Next

MsgBox "Сумма " & sum

End Sub

Пример 4. Найти сумму всех четных чисел в первой десятке:

Option Explicit

Sub Summa ()

Dim j As Integer, sum As Integer

For j = 2 To 10 Step 2

sum = sum + j

Next

MsgBox "Сумма равна " & sum

End Sub

Пример 5. Написать программу, осуществляющий вывод на экран введенного числа после его проверки. Ввод должен завершиться, когда вводимое значение окажется положительным числом.

Sub Пример()

Dim d As Integer

Do

d = Val(InputBox("Введите положительное чиcло", "Ввод числа"))

Loop Until d > 0 And (IsNumeric(d))

MsgBox "Введеное число " & d





Дата добавления: 2015-05-27; просмотров: 371; Опубликованный материал нарушает авторские права? | Защита персональных данных | ЗАКАЗАТЬ РАБОТУ


Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: Студент - человек, постоянно откладывающий неизбежность... 9466 - | 6690 - или читать все...

 

3.90.12.112 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.


Генерация страницы за: 0.001 сек.