Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 4

Работа добавлена на сайт samzan.net: 2016-03-30

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 21.5.2024

Лабораторная работа №4. Циклы

Циклы предназначены для многократного выполнения группы инструкций. В VBA для организации циклов используются инструкции For... Next, While…Wend, Do …Loop и For Each…Next.

Инструкция For... Next повторяет выполнение группы инструкций указанное число раз.

Инструкция  While…Wend выполняет некоторую последовательность инструкций до тех пор, пока  заданное условие имеет значение True (Истина).

Существует два типа инструкции Do…Loop: Do While и Do Until. Первый из них повторяет выполнение блока инструкции до тех пор, пока заданное логическое условие истинно. Второй инструкция, Do Until выполняет циклические вычисления до тех пор, пока изначально ложное логическое условие не станет истинным.

Упражнение 1

  1.  Изучите п.2.12.3.1. из файла Теория_к_лаб_4.doc  Инструкция For… Next.
  2.  Скопируйте в модуль процедуры Sub TestFor,TestFor1 и   TestFor2 из пособия (Пример1 п.2.12.3.1.) и выполните их c различными количествами нечётных чисел.

Упражнение 2

  1.  Составьте процедуру заполнения таблицы Excel с m строками и n столбцами числами натурального ряда: 1, 2 , 3…и т.д., начиная с ячейки A1 по столбцам аналогично тому, как это показано ниже.

Значения m и n ввести при помощи функции InputBox.

  1.  Составьте процедуру подсчёта суммы чисел, находящихся в ячейках таблицы Excel на главной диагонали квадратной матрицы, полученной в процедуре Упражнения 10 при m=n.
  2.  Составьте процедуру определения максимального значения среди  n чисел, находящихся в строке 1 таблицы Excel. Для этого предварительно заполните несколько (больше n) ячеек первой строки листа Excel. Значение n ввести с клавиатуры в процессе выполнения процедуры.

Упражнение 3

  1.  Изучите п.2.12.3.1. Инструкция While…Wend
  2.  Ознакомьтесь с инструкцией While…Wend п. 2.12..3.2. Инструкция While…Wend и процедурой Sub TWW для подсчёта S чётных чисел L натурального ряда, находящихся в пределах 0<L<10.
  3.  Составьте процедуру подсчёта суммы S нечётных чисел L натурального ряда, находящихся в пределах 0<L<10, используя инструкцию While…Wend.
  4.  Составьте процедуру определения максимального и минимального значения числа в заданной строке листа Excel. Концом последовательности просматриваемых ячеек является пустая ячейка (значение =””). При выполнении этой процедуры использовать свойство рабочего листа Cells (см.п. 4. Адресация ячеек в VBA Excel в лаб. Работе №2) .

Инструкция  Do…Loop

Для выполнения инструкции For необходимо задать параметры. Эти параметры могут вычисляться или задаваться во время выполнения программы, как в последней процедуре, которые точно определяют, сколько раз должен выполняться инструкция цикла. Иногда это свойство инструкции For является ограничительным, и в этом случае VBA предлагает другую инструкцию - Do... Loop, которая также может организовать повторяющиеся вычисления, но момент прекращения вычислений здесь определяется с помощью логических условий.

Существует два типа инструкции Do…Loop: Do While и Do Until. Первый из них повторяет выполнение блока инструкции до тех пор, пока заданное логическое условие истинно. Вторая инструкция, Do Until, выполняет циклические вычисления до тех пор, пока изначально ложное логическое условие не станет истинным.

Упражнение 3

  1.  Изучите п. 2.12.3.3. Инструкция  Do... Loop из файла Теория_к_лаб_4. Скопируйте в модуль Excel процедуры Sub DWU и  Sub DUN, проанализируйте и выполните их.
  2.  Разработайте процедуру с использованием  инструкции  Do Until для решения следующей задачи.
  3.  В таблице Excel, приведённой ниже, требуется определить фамилии студентов, получивших на экзамене хотя бы одну оценку “Неуд”.

.

СВОДНАЯ ЭКЗАМЕНАЦИОННАЯ ВЕДОМОСТЬ

ИВАНОВ

ХОР

ОТЛ

НЕУД

ПЕТРОВ

ХОР

НЕУД

ХОР

СИДОРОВ

ОТЛ

НЕУД

ОТЛ

Результаты представить в виде следующей таблицы:

Неудовлетворительные оценки получили

ИВАНОВ              

ПЕТРОВ              

СИДОРОВ             

Методические указания по выполнению Упражнения 3 п.2.

  1.  Скопируйте таблицу СВОДНАЯ ЭКЗАМЕНАЦИОННАЯ ВЕДОМОСТЬ из настоящего файла на Лист1, начиная с ячейки A1. Эта таблица является примером её реализации; количество фамилий в общем случае =< 40.
  2.  Составьте алгоритм решения задачи в виде блок-схемы, лучше – с комментариями. Реализация алгоритма в среде VBA можно осуществить одной или несколькими процедурами, используя инструкцию Call для их взаимодействия. Например, оформление результатной таблицы можно выполнить отдельной  процедурой.
  3.  Явно объявите переменные, которые вы предполагаете использовать в процедуре, в том числе переменные циклов.
  4.  Переменные, представляющие значения фамилий, являются строковыми размером до 20 символов и должны объявляться как String * 20.
  5.  Результатную таблицу рекомендуется разместить на том же листе, на котором помещается СВОДНАЯ ЭКЗАМЕНАЦИОННАЯ ВЕДОМОСТЬ, начиная с ячейки H1.
  6.  Решение задачи можно осуществлять двумя способами: помещать фамилии студентов, получивших неудовлетворительную оценку сразу в результатную таблицу или сначала создать массив фамилий двоечников, а затем скопировать их в результатную таблицу.
  7.  Концом списка фамилий является “пустая” строка, имеющая значение “”. Это значение можно использовать для определения конца списка в таблице Excel. Поскольку ячейка таблицы Excel может содержать невидимые пробелы, для определения того, что строка является “пустой”, следует использовать функцию VBA Trim, возвращающая значение ячейки или переменной без начальных и конечных пробелов, например, Trim(Cells(k, 1)), Trim(Фамилия).
  8.  Для просмотра исходного списка значений ячеек или массива фамилий следует использовать инструкцию Do Until, проверяющую, заполнена ли очередная ячейка таблицы или соответствующая ей переменная.
  9.  Инструкции  прерывания выполнения блока Exit

Имеются следующие варианты инструкции Exit.

  •  Инструкция Exit Do позволяет выйти из цикла DoLoop.
  •  Инструкция Exit For позволяет выйти из цикла ForNext или For Each…Next.
  •  Инструкция Exit Function позволяет выйти из функции, в которой имеется данная инструкция.
  •  Инструкция Exit Sub позволяет выйти из процедуры Sub, в которой имеется данная инструкция.

Упражнение 4

Скопируйте из п.2.12.4.5 из файла Теория_к_лаб_4.doc, проанализируйте и выполните процедуру ПримерExit. Эта процедура  использует инструкцию Exit для выхода из циклов For...Next и Do...Loop и процедуры Sub. Символ двоеточие  в ней используется для разделения инструкций в одной строке кода. В этой процедуре используются две стандартные функции VBA:

  •  инструкция Rnd, генерирующая случайное число в виде правильной десятичной дроби;
  •  инструкция Int, выделяющая целую часть числа.

В результате выполнения инструкции MyNum = Int(Rnd * 10) генерируется целое случайное число.

Если значение случайного числа равно 3, то  на экран выводится сообщение Case 3 и происходит выход из внутреннего цикла For...Next для получения следующего случайного числа.

Если значение случайного числа равно 2, то  на экран выводится сообщение Case 2, происходит выход из внешнего цикла Do...Loop,  на экран выводится сообщение Цикл Do завершён и выполнение процедуры завершается.

Если значение случайного числа равно 5, то  на экран выводится сообщение выполнение Case 5  и выполнение процедуры завершается.




1. Дымы металлов
2. тема Гормоны увеличивающие теплопродукцию--- адреналин тироксин-- инсулин глюкагон-- тестостерон эс
3. Особенности возделывания сельскохозяйственных культур
4. искусству жизни
5. Добре йому добре Нехай радуються і веселяться в тобі всі що тебе шукають
6. Налог на добычу полезных ископаемых.html
7.  Причины появления компьютерных сетей
8. Муниципалитеты должны быть наполнены кроме обязанностей еще и финансированием
9. Тема 6 Слово о полку Игореве История обнаружения памятника Проблема подлинности и датировки источ
10. тематических наук Ивашкевич Инна Викторовна Могилев 2013 год
11. Контрольная работа по дисциплине Философия Вариант ~ 4
12. I N~jdite n internete ~ubovo~n~ text n t~mu ktor~ V~s zuj~m
13. Тема урока- Решение типовых задач с массивами Контрольные вопросы- Какие служебные слова использует.html
14. Основные понятия недвижимости
15. Технология получения никелесодержимых сплавов с использованием отработанных никелесовместимых катализаторов
16. Маяковского на БобрикГоре в г
17. Порядок регистрации брака Недействительность брака
18. Педагогічна майстерність це високий рівень професійної діяльності викладача
19. Сущность и значение бизнесплана6 2
20. 6977 zozi@list.ru желаемый способ связи Проживает- Алматы Гражданство- Казахстан есть разрешение