close

Вход

Забыли?

вход по аккаунту

(Практикум на ЭВМ). Рабочая программа дисциплины

код для вставкиСкачать
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
Государственное образовательное учреждение
высшего профессионального образования
«Тверской государственный университет»
Физико-технического факультет
Кафедра магнетизма
УТВЕРЖДАЮ
Декан физико-технического
факультета
__________________ Б.Б.Педько
«____»____________2011 г.
Рабочая программа дисциплины
Вычислительная физика (Практикум на ЭВМ)
Для студентов I-II курса
Направление 011800 –Радиофизика
Профиль - Физика и технология радиоэлектронных приборов и устройств
Профиль - Материалы для радиофизики и радиоэлектроники
Квалификация (степень)
Бакалавр
Форма обучения
Очная
Обсуждено на заседании кафедры
«____»_________________ 2011 г.
Составители:
к.ф.-м.н., доцент Е.М.Семенова
Протокол № __________________
Зав. кафедрой_________________
Тверь 2011
II. Аннотация
1. Цели и задачи дисциплины
Целями освоения дисциплины являются: умение использовать информационные
технологии для решения физических задач, а также знание основных численных методов и
методов математического моделирования физических процессов.
2.Место дисциплины в структуре ООП бакалавриата
Дисциплина входит в вариативную часть математического и естественно-научного цикла
ГСЭ (Б2.В.ОД.1). Содержательно она представляет собой практикум (лабораторные работы),
основанный на дисциплине базовой части математического и естественнонаучного цикла
«Алгоритмы и языки программирования».
Уровень начальной подготовки обучающегося для успешного освоения дисциплины
«Вычислительная физика (Практикум на ЭВМ)»: иметь представление об основных принципах
представления информации в компьютере; знать правила построения алгоритмов; уметь строить
линейные алгоритмы и простейшие алгоритмы, содержащие операторы разветвления и цикла.
Дисциплина опирается на теоретические знания и практические навыки, приобретенные при
изучении «Математического анализа I, II», «Дифференциального анализа» и курсов общей
физики.
3.Общая трудоемкость дисциплины составляет 5 зачетных единиц, 180 часов.
4. Компетенции обучающегося, формируемые в результате освоения дисциплины:
способностью к постановке цели и выбору путей ее достижения, настойчивость в
достижении цели (ОК-3);
способностью к овладению базовыми знаниями в области математики и
естественных наук, их использованию в профессиональной деятельности (ОК-8);
способностью самостоятельно приобретать новые знания, используя современные
образовательные и информационные технологии (ОК-10);
способностью к овладению базовыми знаниями в области информатики и
современных
информационных
технологий,
программными
средствами
и
навыками работы в компьютерных сетях, использованию баз данных и ресурсов
Интернет (ОК-14);
способностью
понимать
сущность
и
значение
информации
современного информационного общества, сознавать опасности
в
развитии
и угрозы,
возникающие в этом процессе, соблюдать основные требования информационной
безопасности, в том числе защиты государственной тайны (ОК-19).
В результате освоения дисциплины обучающийся должен:
Знать: основные методы решения физических задач с использованием приемов
вычислительной физики; базовые приемы программирования в среде Visual Studio
2008(2010).
Уметь: строить сложные алгоритмы, включающие процедуры и функции;
реализовывать
разработанный
алгоритм
решения
физической
задачи
в
среде
программирования Visual Studio 2008(2010); создавать программы для решения
вычислительных задач и задач по моделированию физических процессов
Владеть навыками работы в консольном, а так же Windows-приложениях Visual
Studio 2008(2010); приемами построения алгоритмов для решения вычислительных
физических задач.
Образовательные технологии
Занятия представляют собой лабораторные работы в компьютерном классе,
включающих различные формы самостоятельной работы студентов. На практических
занятиях на примере построения алгоритмов решения математических и физических
задач формируется умение логически мыслить и способность использовать навыки в
программировании и знаний по математике и физике для решения конкретных
вычислительных задач, а также для моделирования физических процессов. На
занятиях активно применяются мультимедийные технологии.
Предусматривается
широкое использование в учебном процессе активных и интерактивных форм
проведения занятий, а именно компьютерных симуляций, разбора конкретных
ситуаций, тестовых тренингов.
Удельный вес практических занятий составляет 82%, самостоятельной работы18% от общего количества 180 часов.
6. Формы контроля
Способом контроля знаний студентов являются тестирование и контрольные
работы.
Итоговой формой отчета являются зачет (1,2,3 семестр) и экзамен (4 семестр).
III. Учебная программа
1. Информация.
Понятие информации. Единицы измерения информации. Формула Хартли.
Формула Шеннона. Основные типы задач на определение количества информации.
2. Двоичное представление данных в ЭВМ.
Системы
счисления. Двоичное представление основных типов данных ЭВМ.
Абсолютная и относительная точность. Погрешность вычислений.
3. Основные принципы построения алгоритмов.
Понятие алгоритма. Блок-схема алгоритма. Алгоритмические языки высокого
уровня. Операторы. Метки. Комментарии. Формат строки. Базисные элементы языка.
Типы данных. Константы. Переменные. Идентификаторы. Принцип умолчания. Описание
типов данных. Индексированные переменные и массивы данных. Описание. Размещение и
инициализация
в
памяти
ЭВМ.
Присваивание
значения.
Типы
выражений.
Арифметические выражения. Выражения отношений. Логические выражения. Операции.
Приоритет операций, ранги операндов. Структура программного модуля. Алгоритм
линейной
структуры.
разветвляющейся
Вычисление
структуры.
арифметического
Безусловные
и
условные
выражения.
Алгоритмы
переходы.
Вычисление
арифметического выражения при наличии дополнительных условий.
Алгоритмы
циклической структуры. Правила явной организации циклов. Вычисление таблицы
арифметического выражения при наличии дополнительных условий. Цикл общего вида.
Цикл по условию. Итерационный цикл. Счетный цикл. Размещение в памяти,
инициализация, ввод-вывод. Работа со строками, столбцами, элементами. Текстовые
константы, переменные, вектора и матрицы. Работа со строками, столбцами, элементами.
Организация многомерных счетных циклических структур. Функции и подпрограммы.
Формальные и фактические параметры. Способы передачи данных. Принцип модульного
программирования. Ввод-вывод информации. Управление вводом-выводом. Хранение
данных. Поля, записи, базы данных. Организация таблиц различных типов данных.
4. Язык программирования высокого уровня С#. Принципы работы в среде Visual
Studio 2008.
Объектно-ориентированное программирование. Классы. Среда Visual Studio.NET.
Основные понятия языка С#. Переменные, операции, выражения. Операторы. Классы:
основные понятия. Массивы и строки. Иерархии классов. Интерфейсы и структурные
типы. Делегаты, события, потоки выполнения. Работа с файлами. Сборки, библиотеки,
атрибуты, директивы. Структуры данных, коллекции и классы-прототипы. Введение в
программирование под Windows. Дополнительные средства C#.
5. Использование языка программирования для решения вычислительных
физических задач.
IV. Рабочая учебная программа (учебно-тематический план).
Рабочая учебная программа
Наименование разделов и тем
Всего
1 курс (1 семестр)
Понятие информации. Единицы измерения
информации. Формула Хартли. Формула
Шеннона. Основные типы задач на определение
количества информации.
Системы счисления. Двоичное представление
основных типов данных ЭВМ.
Понятие алгоритма. Блок-схема алгоритма.
Алгоритмические языки высокого уровня.
Операторы. Метки. Комментарии. Формат
строки. Базисные элементы языка.
Типы
данных.
Константы.
Переменные.
Идентификаторы.
Принцип
умолчания.
Описание типов данных.
Индексированные переменные и массивы
данных.
Описание.
Размещение
и
инициализация в памяти ЭВМ. Присваивание
значения. Типы выражений. Арифметические
выражения. Выражения отношений. Логические
выражения.
Операции.
Приоритет
операций,
ранги
операндов. Структура программного модуля.
Алгоритм линейной структуры. Вычисление
арифметического
выражения.
Алгоритмы
разветвляющейся структуры. Безусловные и
условные
переходы.
Вычисление
арифметического выражения при наличии
дополнительных условий.
Алгоритмы циклической структуры. Правила
явной организации циклов.
Вычисление
таблицы арифметического выражения при
наличии дополнительных условий.
Цикл по условию. Итерационный цикл.
Счетный цикл.
Работа со строками, столбцами, элементами.
Текстовые константы, переменные, вектора и
матрицы. Работа со строками, столбцами,
элементами.
Организация
многомерных
счетных циклических структур.
Функции и подпрограммы. Формальные и
фактические параметры.
ИТОГО в 1 семестре
1 курс (2 семестр)
Аудиторные
занятия
Лекции лаборато
рные
работы
4
2
2
2
2
2
4
2
4
4
4
36
Самостоятельная
работа
Объектно-ориентированное программирование.
Классы. Среда Visual Studio.NET.
Основные понятия языка. Состав языка. Типы
данных.
Переменные
операции
и
выражения.
Переменные.
Именованные
константы.
Операции и выражения.
Линейные программы.
Выражения, блоки и пустые операторы.
Операторы ветвления.
Операторы цикла.
Базовые
конструкции
структурного
программирования. Обработка исключительных
ситуаций. Операторы checked иb unchecked.
Классы. Присваивание и сравнение объектов.
Данные: поля и константы. Методы. Ключевое
слово this. Конструкторы.
ИТОГО во 2 семестре
2 курс (3 семестр)
Массивы. Оператор foreach. Массивы объектов.
Символы и строки. Класс Random.
Классы. Перегрузка методов. Рекурсивные
методы. Методы с переменным количеством
аргументов.
Метод Main.
Индексаторы. Операции класса. Деструкторы.
Вложенные типы.
Иерархии классов. Наследование. Виртуальные
методы. Абстрактные классы. Бесплодные
классы. Класс Object.
Интерфейсы и структурные типы. Синтаксис
интерфейса. Реализация интерфейса. Работа с
объектами через интерфейсы. Стандартные
интерфейсы .NET.
Делегаты, события и потоки выполнения.
Многопоточные приложения.
ИТОГО в 3 семестре
Работа с каталогами и файлами.
Сборки. Создание библиотеки. Использование
библиотеки. Атрибуты. Директивы.
Абстрактные структуры данных. Пространство
имен System. Collections. Классы прототипы.
Введение в программирование под Windows.
Событийно-управляемое программирование.
Шаблон Windows – приложения.
Класс Control. Элементы управления. Класс
Form.
Диалоговые окна. Класс Application.
Введение в графику.
Документирование в формате XML.
2
4
4
2
4
4
8
8
38
4
8
8
4
8
4
36
4
4
2
4
8
8
4
4
Экзамен
ИТОГО в 4 семестре
38
32
32
ИТОГО
148
32
V. Оценочные средства для текущего контроля успеваемости, промежуточной
аттестации но итогам освоения дисциплины и учебно-методическое обеспечение
самостоятельной работы студентов
Лабораторные работы:
1. Линейные программы.
2. Разветвляющиеся вычислительные процессы
3. Организация циклов
4. Простейшие классы
5. Одномерные массивы
6. Двумерные массивы
7. Строки
8. Классы и операции
9. Наследование
10. Структуры
11. Интерфейсы и параметризованные коллекции.
12. Создание Windows приложений.
Каждая лабораторная работа содержит не менее 12 индивидуальных заданий.
Примеры тестовых заданий:
1 вариант
1
2
3
4
Преобразуйте следующие числа из двоичной
системы счисления в десятичную:
 1000102;
 101012;
 11100012
Переведите десятичные числа в двоичную
систему счисления:
 14510;
 2810;
 43210
Преобразовать десятичные числа
из
десятичной
системы
счисления
в
восьмеричную:
 23510;
 6110;
24510

Преобразовать десятичные числа
из
2 вариант
1
2
3
4
Преобразуйте следующие числа из двоичной
системы счисления в десятичную:
 110112;
 11012;
 111112
Переведите десятичные числа в двоичную
систему счисления:
 23410;
 1210;
 34410
Преобразовать десятичные числа
из
десятичной
системы
счисления
в
восьмеричную:
 23410;
 1210;
34410

Преобразовать десятичные числа
из
5
6
7
8
десятичной
системы
счисления
в
шестнадцатеричную:
 21310;
 22210;
 11210
Вычислить предложенные математические
выражения и представьте результат в
десятичной системе счисления:
 2010+5F16=
 1648–1012=
 5616+2910=
Сколько бит в слове МАРАФОН?
Сколько бит в 1 байте
Букет составлен из девяти роз разного
цвета.
Сколько
информации
будет
содержать букет из трех роз, составленный
на основе исходного букета?
5
6
7
8
десятичной
системы
счисления
в
шестнадцатеричную:
 14510;
 2810;
 43210
Вычислить предложенные математические
выражения и представьте результат в
десятичной системе счисления:
 210+12816=
 4448+11012=
 6C16–210=
Сколько бит в слове БУКЕТ?
Сколько килобайт 1 Мегабайте?
На
морских
судах
для
передачи
информации используют флажковую азбуку
(всего 59 флагов). Шифровальщик передал
подряд 80 сигналов. Максимальный
информационный
объем
сообщения,
переданный таким образом не превышает …
В 4 семестре каждый студент защищает индивидуальную работу, включающую
алгоритм решения, программу на языке C# в Visual Studio 2010.
Перечень контрольных вопросов к зачетам.
I. Общие вопросы
1. Информатика. Этапы решения задач. Алгоритм. Программа. Языки программирования,
их характеристика.
2. Синтаксис и семантики. Структуры данных и структуры управления.
3. Основные положения языка С#. Значения и типы. Стандартные типы данных.
Выражения. Присваивания.
4. Описание функций. Локальные данные. «Правила видимости». Параметры-значения.
5. Описание и использование процедур.
6. Способы передачи параметров в процедуры и функции. Параметры-значения и
параметры- переменные.
7. Структуры данных. Перечислимые типы данных. Тип диапазона. Примеры.
8. Блочная структура программ. Задача распределения памяти.
II. Методы программирования
9. Управляющие конструкции: условный оператор и оператор цикла. Итеративные методы
решения задач.
10. Метод исчерпывающего перебора.
11. Рекурсивные методы в программировании. Примеры программ с рекурсией.
12. Стек незавершенных вызовов при исполнении рекурсивной процедуры или функции.
13. Задача о ханойских башнях.
14. Метод рекурсивного спуска. Задача вычисления значения логической формулы методом
рекурсивного спуска.
III. Структурирование данных и методы решения задач
15. Модули: описание и использование
16. Модули. Описание и использование
17. Правила видимости при работе с модулями
18. Процедурный тип данных
19. Процедурный тип данных. Особенности использования. Переменные процедурного
типа.
20. Передача процедуры в качестве параметра. Решение уравнения приближенными
методами.
21. Задача численного интегрирования.
IV. Представление данных с помощью множества
22. Тип множества. Операции над данными типа множества. Примеры программ.
23. Поиск уникальных символов в тексте с использованием данных типа множества.
V. Одномерные массивы: основные алгоритмы
24. Массивы. Их описание и использование. Задача линейного поиска.
25. Бинарный поиск в упорядоченном массиве. Среднее число сравнений при поиске
элемента.
26. Задача слияния двух упорядоченных массивов.
27. Задача сортировки массива.
VI. Двумерные массивы
28. Двумерные массивы. Описание и использование. Ввод и вывод элементов массива.
Задачи линейной алгебры: умножение матрицы на вектор, вектора на матрицу, матрицы
на матрицу.
Задача обхода конем шахматной доски.
Метод перебора с возвратом на примере решения задачи поиска пути в лабиринте.
Записи: описание и использование
34. Записи. Описание и использование. Оператор над записью.
35. Массив записей. Работа с таблицами.
Типизированные файлы
36. Файлы и работа с ними. Процедуры связи файла с конкретным набором данных,
открытие и закрытие файла,
режимы работы с файлом.
37. Файлы прямого доступа. Типизированные файлы. Особенности работы с ними.
38. Замена компонент типизированного файла. Вставка компоненты в упорядоченный
файл.
39. Сортировка и переворот типизированного файла.
40. Сравнение двух типизированных файлов.
Текстовые файлы
41. Текстовые файлы. Особенности представления. Простые примеры.
42. Преобразование текста с заменой русских букв латинскими буквами по правилам
транскрипции.
Часть 4. Динамические структуры данных и алгоритмы работы с ними
Линейные цепные списки
Динамические структуры данных. Выделение памяти во время работы программы.
Линейные списки. Построение списка.
Задача поиска элемента в списке.
Задача обхода списка.
Задача сортировки списка.
Создание копии списка.
Переворот списка.
Слияние упорядоченных списков.
Задача удаления из списка всех элементов с заданным информационным полем.
Задача вставки элемента в упорядоченный список, не нарушая упорядоченности.
Рекурсивные алгоритмы работы со списками.
Представление списка массивом и основные алгоритмы обработки списков.
Освобождение памяти, возвращение памяти системе.
Иерархические структуры данных. Деревья
Иерархические структуры данных. Деревья и способы их представления. Бинарные
деревья.
Алгоритмы обработки бинарных деревьев: число вершин, число листьев.
Определение высоты дерева, обработка элементов, расположенных на заданном уровне.
Задача обхода дерева.
Функция определения внутреннего пути дерева.
Задача поиска элемента в бинарном дереве.
Построение бинарного дерева по линейной скобочной записи.
Бинарное дерево поиска
Бинарное дерево поиска. Его построение.
Поиск элемента в дереве. Рекурсивный и итеративный варианты.
Удаление вершины из дерева поиска.
Алгоритмы обхода бинарного дерева поиска для получения упорядоченных данных.
Дерево операций
67. Дерево операций. Вычисление значения формулы, представленной деревом
операций.
68. Бесскобочная запись формул, ее построение по дереву операций.
69. Вывод формулы, представленной деревом операций, в инфиксной нотации: cо всеми
скобками и лишь с
необходимыми.
70. Построение по заданной формуле дерева операций методом рекурсивного спуска.
Стек, представление и методы работы
Представление данных с помощью стека. Модуль, реализующий операции над стеком.
Задача анализа скобочной структуры текста с помощью стека.
Вычисление значения формулы в постфиксной нотации с помощью стека.
Построение формулы в постфиксной нотации с использованием стека. Алгоритм
Дейкстры.
75. Алгоритм Дейкстры построения дерева операций с помощью двух стеков.
76. Задача обхода дерева с помощью стека.
Представление данных в виде очереди
77. Очередь, операции с нею. Представление очереди. Реализация модуля работы с
очередью.
78. Реализация сквозного обхода бинарного дерева с помощью очереди.
Обработка данных сетевой структуры
Определение и представление графа.
Задача обхода графа (рекурсивный вариант).
Обход графа в глубину с помощью стека.
Обход графа в ширину с помощью стека.
Поиск кратчайших путей в графе.
Часть 5. Технология программирования
84. Технология структурного программирования. Структурная теорема.
85. Этапы создания программы. Тестирование. Невозможность исчерпывающего
тестирования.
86. Составление теста, удовлетворяющего определенным критериям.
Объектно-ориентированное программирование
87.
Объектно-ориентированное
использование. Пример программы с
объектами.
программирование.
Объекты,
их
описание
и
88. Объекты и модули.
89. Свойство наследования объектов. Примеры.
90. Переопределение статических методов. Свойство полиморфизма. Примеры.
91. Использование объектов в качестве параметров.
92. Виртуальные методы. Конструкторы и деструкторы. Примеры.
Доказательное программирование
93. Доказательное программирование. Свойство программ. Свойства оператора
присваивания. Примеры.
94. Свойства цикла с предусловием. Инвариант цикла. Примеры.
95. Условный оператор и его свойства. Примеры.
Приводятся контрольные вопросы и задания для проведения текущего контроля и
промежуточной аттестации по итогам освоения дисциплины, а также для контроля
самостоятельной работы обучающегося по отдельным разделам дисциплины).
VI. Учебно-методическое и информационное обеспечение дисциплины (модуля)
а) основная литература:
1.
Вычислительные
инструментарий
методы,
параллельного
алгоритмы
и
моделирования
аппаратурно-программный
природных
процессов
[Электронный ресурс] / М. Г. Курносов, В. Г. Хорошевский, С. Н. Мамойленко,
К. В. Павский, И. В. Швейгерт. - Новосибирск: Сибирское отделение Российской
академии наук, 2012. - 355 с. - 978-5-7692-1237-6, 978-5-7692-0669-6. Режим
доступа: http://biblioclub.ru/index.php?page=book&id=140432
В.А. Биллиг Основы программирования на С#. – Бином. Лаборатория знаний,
Интернет-университет информационных технологий, 2009 г.
2. Т.А.Павловская «С#. Программирование на языке высокого уровня» Учебник
для ВУЗов. – СПб.:Питер, 2007. – 432 с.
б) дополнительная литература:
1. Культин Н.Б. Microsoft Visual C# в задачах и примерах. – СПб.: БХВ-Петербург,
2009. – 320 с.
2. Шилдт Г. C# 4.0 полное руководство. – Вильямс, 2011. – 1056 с.
3. Дж. Бишоп, Н. Хорспул C# в кратком изложении. – Бином. Лаборатория знаний,
2005. – 472 с.
4. Карли Ватсон C#. – Лори, 2004 г – 880 с.
в) программное обеспечение и Интернет-ресурсы:
Сервер информационно-методического обеспечения учебного процесса –
http://edc.tversu.ru;
Научная библиотека ТвГУ – http://library.tversu.ru;
Сервер доступа к модульной объектно-ориентированной динамической учебной
среде Moodle – http://moodle.tversu.ru;
Сервер обеспечения дистанционного обучения и проведения Web-конференций
Mirapolis Virtual Room – http://mvr.tversu.ru;
Репозирорий научных публикаций ТвГУ – http://eprints.tversu.ru .
Лицензионное программное обеспечение
Системное ПО:
Microsoft Windows (версии XP и 7);
Microsoft Windows Server (версии 2003 R2 и 2008 R2);
Novell Netware 5.1.
Обучение основам программирования и Web-разработки:
Microsoft Visual Studio 2010;
Офисные программы:
Microsoft Office Professional (версии 2003, 2007 и 2010).
Графика:
Вспомогательное ПО:
Файловый менеджер Total Commander 7.x;
Антивирусное ПО Symantec Endpoint Protection.
VII. Материально-техническое обеспечение дисциплины (модуля)
Для проведения занятий используется компьютерный класс (не менее 12 рабочих
станций) оснащенный мультимедийным оборудованием. При освоении дисциплины для
выполнения лабораторных работ необходимы персональные компьютеры с набором
программного обеспечения: системы программирования (Turbo Pascal, Delphi, C#). Программа
составлена в
соответствии
с требованиями
ФГОС ВПО
с учетом рекомендаций
и ПрООП ВПО по направлению 011200 - Физика и профилю подготовки
конденсированного состояния вещества.
Физика
1/--страниц
Пожаловаться на содержимое документа