shkolakz.ru 1
Министерство образования Российской Федерации



Томский политехнический университет

__________________________________________________________


УТВЕРЖДАЮ


Директор ИГНД А.К.Мазуров


«___»___________ 2004г.


Методические указания к выполнению лабораторных работ по курсу:


«ИНФОРМАТИКА» (2 семестр)


для групп 2040, 2240, 2440, 2Б41, 2Б42, 2Б43, 2540


Томск - 2004


Составитель: к.т.н. , доцент каф. ИПС Хамухин Александр Анатольевич


Методические указания рассмотрены и обсуждены на заседании кафедры

Информатики и проектирования систем


«___»_____________2004г.


Заведующий кафедрой__________________ В.К.Погребной


УДК 665.001.57:518.61


АННОТАЦИЯ

В первом семестре на базе знаний, полученных по школьной программе, цикл лабораторных работ развивает у студентов навыки работы с электронными документами и электронными таблицами MS Word и MS Excel. Систематизируются и расширяются знания по основам программирования путем изучения встроенного в MS Office объектно-ориентированного языка высокого уровня VBA. Изучаются широко используемые пакеты программ для математических и инженерных расчетов (на примере MATHCAD). Изучаются основы компьютерной графики. Целью цикла лабораторных работ 1-го семестра является заложить основы для изучения и применения во 2-ом семестре основных методов компьютерной обработки геологической информации, а также для применения полученных знаний в последующем обучении и работе.


Лабораторная работа №1


Тема: Работа с файлами на ПК и в локальной сети

Цель работы: научиться выполнять типовые операции с файлами и каталогами в средах типа Norton Commander и Windows Explorer


Порядок работы

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


  2. Определить доступный сетевой диск и переместить на него созданный файл.

  3. Определить на доступном сетевом диске файлы, созданные студентами своей подгруппы на соседних ПК по атрибутам файлов.

  4. Скопировать их с сетевого диска на локальный диск в личный каталог.

  5. Продемонстрировать результат преподавателю и удалить созданные на локальном диске файлы и каталоги.


Индивидуальные задания

Формируются по фамилии студента и его личным данным.


Лабораторная работа №2


Тема: Работа с электронными документами в MS Word


Цель работы: научиться создавать электронные документы с элементами навигации

Порядок работы

  1. По заданному преподавателем образцу (типа реферат, научный отчет с титульным листом ТПУ) набрать в MS Word текст и сохранить его в личном каталоге.

  2. Отформатировать текст по образцу, разделить его на 3-4 раздела с заголовками и добавить элемент «оглавление». Добиться, чтобы при щелчке на каждом пункте оглавления осуществлялся переход на соответствующий ему раздел.

  3. В конце каждого раздела поместить перекрестную ссылку «возврат на оглавление» и добиться этого перехода при щелчке на ссылке.

  4. Добавить в созданный документ (по заданию преподавателя) следующие элементы: сноски, примечания, гиперссылки, таблицы, автофигуры.

  5. Продемонстрировать результат преподавателю и удалить созданные на локальном диске файлы.



Индивидуальные задания

Формируются из имеющихся у преподавателя образцов рефератов, отчетов, статей в научно-технической литературе.


Лабораторная работа №3


Тема: Работа с таблицами в MS Excel

Цель работы: научиться создавать электронные таблицы и выполнять в них расчеты с представлением результатов в идее графиков и диаграмм


Порядок работы


  1. Набрать в первых двух столбцах «массив экспериментальных данных» X и Y, например Ваш прогноз температуры на 10 (N) дней (A2:A11, B2:B11), первую строку использовать для подписи заголовков столбцов.

  2. С помощью строки формул и копирования ячейки третий столбец заполнить произведением первых двух столбцов (X*Y), четвертый столбец – квадратами от содержимого ячеек первого (X*X).

  3. Внизу всех столбцов вычислить сумму числовых ячеек, используя встроенную функцию.

  4. Теперь на листе имеются все данные, чтобы набрать в любой свободной ячейке формулу и вычислить коэффициент линейной регрессии (а) На втором листе поместить диаграмму, в которой графически отобразить зависимость столбца Y от столбца X. Сделать оформление диаграммы.

  5. Проверить правильность вычисления коэффициента линейной регрессии (а) путем задания «массива экспериментальных данных» в виде прямой линии под углом 45 градусов (а=1)

  6. Добавить на график температуры линию тренда (с помощью меню) и , изменяя массив экспериментальных данных во втором столбце, проверить правильность расчета коэффициента (а) в трех случаях: 1) линия тренда возрастающая (а>0), линия тренда убывающая (а< 0), линия тренда параллельна оси Х (а=0)


Расчетные формулы





Пример




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


Тема: Работа с макросами в приложениях Word и Excel


Цель работы: научиться работать со встроенным редактором VBA (создавать, выполнять, останавливать, выполнять по шагам макросы в Word и Excel)

Порядок работы
  1. В MS Word найти редактор VBA двумя способами (вход через меню «сервис-макрос», вход через вставку в документ элемента управления «командная кнопка») и открыть в нем окно программ, окно проектов и окно свойств.


  2. С помощью меню VBA «вставить модуль» набрать в окне программ заданный текст программы, в окне свойств изменить название кнопки

  3. С помощью пошагового выполнения и просмотра значений переменных на шагах добиться правильной работы макроса.

  4. Повторить п.п.1-3 в MS Excel


Индивидуальные задания


Программа


Private Sub CommandButton1_Click()

Sum = 0

o1 = MsgBox("Является ли макрос программой?", 3, "Вопрос 1")

If o1 = 6 Then Sum = Sum + 10

'***********************************************************

o2 = InputBox("Как называется программа VBA?", "Вопрос 2", " ")

If o2 = "макрос" Then Sum = Sum + 10

'***********************************************************

If Sum >= 20 Then

Call MsgBox("Вы набрали " & Sum & " баллов. Можете продолжать дальше", 0, "Результаты")

Else

Call MsgBox("Вы набрали " & Sum & " баллов. Этого мало. Необходимо повторить изучение", 0, "Результаты")

End If

End Sub





Индивидуальные задания

Формируются путем вариации вопросов и ответов в примере

Пример





Лабораторная работа №5


Тема: Обмен информацией между листами Excel и программой на VBA


Цель работы: научиться на VBA: считывать исходные данные с листа Excel и записывать результаты расчетов на лист Excel

Порядок работы
  1. Набрать на листе 1 в первых двух столбцах таблицу исходных данных X и Y, например Ваш прогноз температуры на 10 дней (A2:A11, B2:B11), первую строку использовать для подписи заголовков столбцов. В ячейку B14 занести количество точек в массивах (10)


  2. На листе 1 разместить 3 командных кнопки, одну подписать «ЧТЕНИЕ С ЛИСТА», вторую «ЗАПИСЬ НА ЛИСТ », третью «ОЧИСТКА»

  3. Через кнопку «ЧТЕНИЕ С ЛИСТА» открыть редактор VBA и набрать программу считывания данных (двумя способами) с листа 1 в переменные VBA (X, Y, N). С помощью пошаговой отладки убедиться, что переменные VBA заполняются.

  4. Через кнопку «ЗАПИСЬ НА ЛИСТ » открыть редактор VBA и набрать программу записи данных (двумя способами) на лист 2.

  5. Через кнопку «ОЧИСТКА» набрать программу, стирающую все результаты с листа 2.

  6. Изменить исходные данные на листе 1 и убедиться, что эти изменения отражаются на листе 2 после нажатия соответствующих кнопок.


Программа


Dim X(10), Y(10), N As Variant ' объявление переменных уровня модуля


Private Sub CommandButton1_Click()


N = Worksheets(1).Range("B14").Value ' чтение ячейки B14 листа 1 в переменную N


' цикл считывания N ячеек первого и второго столбца листа 1 в массивы X и Y

For i = 1 To N

X(i) = Worksheets(1).Cells(i + 1, 1).Value

Y(i) = Worksheets(1).Cells(i + 1, 2).Value

Next i


End Sub


Private Sub CommandButton2_Click()

' Запись на лист 2 содержимого переменных N (в ячейку D14), X и Y ( 3 и 4 столбцы)

Worksheets(2).Range("D14").Value = N

For i = 1 To N

Worksheets(2).Cells(i + 1, 3).Value = X(i)

Worksheets(2).Cells(i + 1, 4).Value = Y(i)

Next i

End Sub


Private Sub CommandButton3_Click()

' Очистка на 2 листе ячейки D14, 3 и 4 столбца

Worksheets(2).Range("D14").Value = " "

For i = 1 To N

Worksheets(2).Cells(i + 1, 3).Value = " "

Worksheets(2).Cells(i + 1, 4).Value = " "

Next i

End Sub

Индивидуальные задания

Формируются путем вариации чисел в массивах исходных данных X и Y

Пример




Лабораторная работа №6


Тема: Программирование арифметических выражений. Оконный ввод-вывод информации на VBA

Цель работы: научиться на VBA: программировать арифметические выражения, вводить исходные данные и выводить результаты через окна

Порядок работы


  1. Набрать на листе 1 в первых двух столбцах таблицу исходных данных X и Y, например Ваш прогноз температуры на 10 дней (A2:A11, B2:B11), первую строку использовать для подписи заголовков столбцов. Под таблицей поместить командную кнопку «РАСЧЕТ»

  2. Через кнопку «РАСЧЕТ» открыть редактор VBA и набрать фрагмент программы чтения с листа массивов X и Y (из предыдущей лабораторной работы № 5). Переменную N (количество точек, по которым считается коэффициент а) ввести с помощью функции оконного ввода INPUTBOX.

  3. Дополнить программу расчетом коэффициента линейной регрессии (а) по расчетной формуле из лабораторной работы № 3.

  4. Результат расчета (коэффициент линейной регрессии а) вывести с помощью функции оконного вывода MSGBOX.

  5. Проверить правильность вычисления коэффициента линейной регрессии (а) путем задания массива исходных данных в виде прямой линии под углом 45 градусов (а=1)


Программа


Dim X(10), Y(10), N As Variant ' объявление переменных уровня модуля


Private Sub CommandButton1_Click()


'Считываем N из окна ввода

N = InputBox("ВВеди N", "Окно ввода")


‘********************** сюда вставить фрагмент чтения с листа массивов

'Вычислим все суммы в расчетной формуле


s1 = 0

s2 = 0

s3 = 0

s4 = 0

For i = 1 To N

s1 = s1 + X(i)

s2 = s2 + Y(i)

s3 = s3 + X(i) * Y(i)

s4 = s4 + X(i) ^ 2

Next i

'Вычисляем коэффициент линейной регрессии а и выводим его в окно

a = (N * s3 - s1 * s2) / (N * s4 - s1 ^ 2)

Call MsgBox("Коэффициент А= " & a, 0, "Результаты")

End Sub


Индивидуальные задания

Формируются путем вариации чисел в массивах исходных данных X и Y

Пример





Лабораторная работа №7


Тема: работа с массивами и отладка программ на VBA

Цель работы: научиться на VBA: программировать вычисления с помощью статических и динамических, одномерных и двухмерных массивов, выполнять программу пошагово, с точками останова и просмотром значений переменных

Порядок работы


  1. Набрать на листе 1 в первых трех столбцах таблицу исходных данных X и Y, например Ваш прогноз температуры и давления на 10 дней (A3:A12, B3:B12, C3:C12), первую и вторую строки использовать для подписи заголовков столбцов. Под таблицей поместить командные кнопки «РАСЧЕТ» и «ОЧИСТКА»

  2. Через кнопку «РАСЧЕТ» открыть редактор VBA и набрать фрагмент программы чтения с данных из таблицы листа в одномерный массив X(i) и двухмерный массив Y(i,j)

  3. Дополнить программу пересчета элементов двухмерного массива Y из град. Цельсия в град. Фаренгейта и из мм ртутного столба – в МПа и программой записи элементов массива на лист ( в столбцы 4 и 5)

  4. Через кнопку «ОЧИСТКА» открыть редактор VBA и набрать фрагмент программы, стирающий содержимое столбцов 4 и 5.
  5. Заменить статические массивы на динамические и добиться такого же результата работы программы.


Расчетные формулы



Программа


Dim X(10), Y(2, 10) As Variant ' объявление переменных уровня модуля

Const N = 10

Private Sub CommandButton1_Click()


' цикл считывания N ячеек первого столбца в одномерный массив X,

' второго и третьего столбцов - в двухмерный массив Y

For i = 1 To N

X(i) = Worksheets(1).Cells(i + 2, 1).Value

Y(1, i) = Worksheets(1).Cells(i + 2, 2).Value

Y(2, i) = Worksheets(1).Cells(i + 2, 3).Value

Next i

'пересчет град. Цельсия в град.Фаренгейта Y(1,i) и мм.рт.столбца в килоПаскали Y(2,i)

For i = 1 To N

Y(1, i) = Y(1, i) * 9 / 5 + 32

Y(2, i) = Y(2, i) / 748 * 101.325

Next i

' цикл записи результатов расчет в 4 и 5 столбцы первого листа Excel

For i = 1 To N

Worksheets(1).Cells(i + 2, 4).Value = Y(1, i)

Worksheets(1).Cells(i + 2, 5).Value = Y(2, i)

Next i


End Sub


Private Sub CommandButton2_Click()

' цикл очистки 4 и 5 столбцов первого листа Excel

‘***************сюда вставить фрагмент, подобный как в лаб.работе №5

End Sub

Индивидуальные задания

Формируются путем вариации чисел в массивах исходных данных X и Y


Пример