
Методические указания к выполнению курсовой работы
Курсовую работу следует реализовать на языке VBA. Отчет по курсовой работе должен содержать титульный лист (см. рис. 1), листинг (распечатку) программы и распечатку фрагментов электронных таблиц с результатами вычислений. При этом необходимо проверить все ветви работы программы и, соответственно, привести результаты работы каждой ветви.
Пример выполнения работы
Создать процедуру для выполнения следующих действий:
Записать в массив с именем N данные, хранящиеся в ячейках C4:F6
листа Excel с именем «Данные».
Найти сумму элементов второго столбца массива N и присвоить ее
значение переменной D.
Вывести диалоговое окно с сообщением «Сумма элементов второго
столбца равна» D.
Если D < -5, записать D в ячейку Е листа Excel с именем
«Коэффициент».
Если –5 < D < 3, записать D в ячейку Е2 листа «Коэффициент».
При 3 < D < 7 поместить D в ячейку Е3, иначе – в ячейку Е4 листа «Коэффициент».
5. Проанализировать значение ячейки В3 листа Excel с именем «Коэффициент».
Если это значение больше нуля, записать в ячейки B5:E7 листа с именем «Новый» утроенное значение массива N.
Если
значение ячейки ВЗ<=0, то вычислить и
записать в ячейки D3:G5
листа Excel
с именем «Новый» значения функции синус
от элементов массива N
Sin(N(I,J)).
Образец титульного листа курсовой работы
Северо-Западный государственный заочный технический университет
Кафедра ПУ и ИС
Курсовая работа
по дисциплине «Информатика»
Выполнил студент
Институт:
Курс
Специальность:
Шифр:
Преподаватель:________________
Дата защиты:_________________
Оценка:____________
Подпись преподавателя:________________
Санкт-Петербург
2009
Рис. 1
Решение
1. Определяем размерность исходного массива на листе «Данные». Для этого рассмотрим фрагмент электронной таблицы (рис. 2):
Рис. 2
Очевидно, что размерность массива N три строки и четыре столбца, то есть имеем массив N (3,4).
2. Теперь определяем адрес первой ячейки электронной таблицы «Данные», начиная с которой будем считывать исходный массив. Нумерация строк цикла (переменная I) начинается с единицы. Первый элемент массива N (3,4) располагается в четвертой строке электронной таблицы, значит, адрес строки, с которой начнем считывание массива, будет I + 3. Нумерация столбцов цикла (переменная J) также начинается с единицы. Первый элемент массива N (3,4) располагается в третьем столбце электронной таблицы, значит, адрес столбца, с которого начнем считывание массива, будет J + 2.
3. Для того, чтобы иметь возможность считать исходный массив из ЭТ в программу:
создадим файл в табличном процессоре Excel;
присвоим открывшейся Книге 1 имя «Курсовая_работа». Для этого
выполним команды: Файл - Сохранить как - введем имя Курсовая_работа;
переименуем рабочий Лист 1 в лист с именем Данные. Для этого
выполним команды: Щелчок правой клавишей мыши по имени Лист 1 – Переименовать – введем имя листа Данные (аналогичным образом создадим листы Коэффициент и Новый);
Рис. 3
введем массив данных на лист Данные. Заполняем ячейки C4:F6 любыми
значениями. Но не следует вводить дробные или очень большие числа – помните, что Вы должны иметь возможность для контроля работы программы сами провести те же самые вычисления, что и программа.
Пишем первый фрагмент программы, организующий считывание
исходного массива в программу для дальнейшей обработки (рис. 4).
Организуем выполнение задания 2 - найти сумму элементов второго
столбца массива N и присвоить ее значение переменной D. Для этого вспоминаем алгоритм суммирования:
Обнулить ячейку, где будет храниться сумма;
Организовать цикл по перебору элементов массива (у нас столбец
фиксирован – номер 2, значит, J=2, а цикл следует организовать по перебору строк);
Рис. 4
На каждом шаге цикла добавляем к сумме очередной элемент
массива. В результате получаем фрагмент программы рис. 5.
Для контроля сразу просчитываем сумму элементов второго столбца нашего массива (рис. 3): -9 + 0 + 17 = 8. При запуске программы на выполнения в диалоговом окне должен быть выведен тот же результат.
Рис. 5
6. Организуем выполнение задания 3 - вывести диалоговое окно с сообщением «Сумма элементов второго столбца равна» D. Фрагмент программы представлен на рис.6, а результат работы фрагмента – на рис. 7.
Р
ис.
6
Рис. 7
Используя оператор условного перехода If, создаем фрагмент программы для выполнения задания 4.
Если D < -5, записать D в ячейку Е1 листа Excel с именем
«Коэффициент».
Если –5 < D < 3, записать D в ячейку Е2 листа «Коэффициент».
При 3 < D < 7 поместить D в ячейку Е3, иначе – в ячейку Е4 листа «Коэффициент».
Фрагмент программы, реализующий это задание, приведен на рис. 8.
Рис. 8
По результатам наших вычислений D = 8, значит, результат должен быть записан в ячейку Е4. Запустив программу на выполнение (F5), убеждаемся в правильности работы программы (рис. 9).
8. Пишем фрагмент программы согласно п. 5 задания. Необходимо проанализировать значение ячейки В3 листа Коэффициент и в зависимости от ее значения записывать вновь вычисленный массив либо в один, либо в другой диапазон ячеек листа Новый.
Рис. 9
8.1. Определим адресацию этих диапазонов с точки зрения построения циклов. Для этого рассмотрим интересующие нас диапазоны ячеек (рис. 10).
Если В3 >0, вновь вычисленный массив нужно записывать начиная с ячейки В5. Поскольку цикл перебора строк начинает работу с I=1, адрес строки первого элемента массива получается равным I+4. Аналогичным образом определяем, что адрес первого столбца массива равен J+1.
Значение
ячейки В3 >0
Первый
элемент – пятая строка (I
+ 4), второй столбец (J
+ 1).
Значение
ячейки В3 <=0
Первый
элемент – третья строка
(I
+2), четвертый столбец (J
+ 3).
Рис. 10
8.2. При проверке условия B3>0 необходимо вести запись двумерного массива чисел и по одной, и по другой ветви – значит, обе ветви условного оператора должны содержать вложенные циклы.
8.3. Заносим в ячейку В3 листа Коэффициент число 10. Поскольку это число больше нуля, при правильной организации ветвления в ячейках В5:Е7 листа Новый должны быть записаны утроенные значения массива N(3,4).
8.4.
Пишем фрагмент программы согласно
заданию 5. (рис. 11):
Рис. 11
8.5. Запускаем программу на выполнение (F5). Результат выполнения приведен на рис. 12.
Рис. 12
Рис. 13
8.6. Вносим в ячейку В3 листа Коэффициент число -5. Так как теперь выполняется условие В3 <=0, в ячейки D3:G5 листа Новый должны записаться значения функции Sin от элементов исходного массива. Запускаем программу на выполнение (F5). Результат вычислений приведен на рис. 13.
Итак, мы убедились в работоспособности созданной программы.
Листинг программы приведен на рис.14.
Рис. 14
Задания на курсовую работу
Вариант задания выбирается по последней цифре шифра студента.
Вариант 1.
Создать процедуру для выполнения следующих действий:
1. Записать в массив с именем L данные, хранящиеся в ячейках B5:E8
листа Excel с именем «Первый».
2. Найти максимальное значение элементов массива и присвоить это
значение переменной M.
3. Вывести диалоговое окно с сообщением «Максимальный элемент
массива равен» М.
Если M > 3, записать значение М в ячейку С2 листа Excel с именем
«Второй».
Если 1 < М < = 3, записать значение М+3 в ячейку С4 листа «Второй».
4. При -2 < М < = 1 поместить значение М-8 в ячейку С6, иначе – в ячейку С8 листа «Второй».
5. Проанализировать значение ячейки С1 листа Excel с именем «Второй».
Если это значение меньше числа 2, записать в ячейки А6:D9 листа с именем «Третий» значение функции косинус от элементов массива L.
Если значение ячейки C1>=2, то вычислить и записать в ячейки F2:I5 листа Excel с именем «Третий» абсолютные значения элементов массива L.
Создать форму для выполнения следующих действий:
Обеспечить поочередный просмотр значений хранящихся в ячейках, указанных в п.1, начиная с первой ячейки. Значение переменной выводить в TextBox, а переход к следующей ячейке осуществлять по нажатию ControlButton.
При выводе значения переменной в TextBox, соответствующее ей значение в ячейке Excel таблицы должно изменить цвет. При переходе к следующей ячейке цвет предыдущей восстанавливается, а изменяется цвет текущей.