48599 (608674)

Файл №608674 48599 (Разработка обучающей программы, поддерживающей изучение темы "Структуры данных")48599 (608674)2016-07-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла

ВЯТСКИЙ ГОСУДАРСТВЕННЫЙ ГУМАНИТАРНЫЙ УНИВЕРСИТЕТ

Физико-математический факультет

Курсовая работа по информатике

разработка обучающей программы, поддерживающей изучение темы «структуры данных»

Выполнил:

Студент 3 курса

группы м-31

очной формы обучения

Марков Роман

Научный руководитель:

Соболева Е.В.

Киров 2008 г.

Содержание

Глава 1. Анализ теоретического материала..........................................................4

1.1. «Информатика и ИКТ. Базовый курс» Семакин И.Г. и др. 4

1.1.1. Алгоритмы работы с величинами 4

1.1.2. Линейные вычислительные алгоритмы 5

1.1.3. Знакомство с языком Pascal. 6

1.1.4. Программирование ветвлений в Pascal. 7

1.1.5. Таблицы и массивы 8

1.1.6. Массивы 9

1.2. «Информатика» Кузнецов. 10

1.2.1. Язык программирования Pascal. 10

1.2.2. Структура программы на Pascal, ввод и вывод данных 12

1.2.3. Условный оператор 14

1.2.5. Алгоритмы обработки таблиц 17

1.2.6. Обработка строк на языке Pascal 19

1.2.7. Записи 20

1.2.8. Файлы 22

1.3. «Информатика и информационные технологии» Н. Угринович. 23

1.3.1. Тип, имя и значение переменной. 23

1.3.2. арифметические, строковые и логические выражения. Присваивание 25

1.3.3. Функции в языке Visual Basic 26

1.3.4. массивы 26

1.4. Вывод 26

Глава 2. описание и принцип работы обучающей программы.........................29

2.1. Общие сведения о программе. 29

2.2. Принцип работы программы. 32

2.2.1. Модуль регистрации пользователей 33

2.2.2. Модуль изучения материала 33

2.2.3. Модуль проверки знаний 33

Глава 1. Анализ теоретического материала по теме «структуры данных» в школьных учебниках информатики

1.1. «Информатика и ИКТ. Базовый курс » Семакин И.Г. и др.

В этом учебнике изучение программирования начинается после прохожде­ния тем «Базы данных» и «Электронные таблицы». По-этому обучаемые уже знакомы с такими типами данных, как числовой, символьный и логический, известными им, как типы полей в таблицах БД.

1.1.1. Алгоритмы работы с величинами

В этом параграфе дается понятие констант, переменных, показываются основные команды для работы с ними

После вступления о способе хранения данных в программе «всякая обраба­тываемая величина занимает своё место – поле в памяти компьютера » из­лагается о 3х основных типах величин, изучаемых в учебнике: числовой, символьный, логический, устанавливаются различия между константами и переменными:

  • «константы записываются своими десятичными записями в па­мяти, их значение не изменяется во время работы программы»;

  • «переменные обозначаются, как в математике, символьными именами - идентификаторами».

Далее рассматриваются основные операции над переменными:

  • Присваивание

<переменная>:=<выражение>

Пример: Z:=X+Y

До присваивания

X

2

Y

5

Z

-

После присваивания

X

2

Y

5

Z

7

  • Команда ввода

Ввод<список переменных>

Пример: ввод A, B, C

Схема выполнения команды

  1. память до выполнения команды

    A

    -

    B

    -

    C

    -

  2. получение команды, ожидание действий пользователя

  3. пользователь набирает на клавиатуре «1 2 3 »

  4. память после выполнения команды

A

1

B

2

C

3

  • команда вывода

вывод<список вывода>

задания по разделу:

отразить значения переменных в ходе последовательного выполнения команд присваивания

1.1.2. Линейные вычислительные алгоритмы

В этом параграфе подробно изучается оператор присваивания: его свойства, примеры применения

Свойства присваивания иллюстрируются с помощью трассировочной таб­лицы:

Команда

a

b

a:=1

1

-

b:=2 x a

1

2

a:=b

2

2

b:=a + b

2

4

Свойства:

  1. пока переменной не присвоено значение она оста­ется неопределенной

  2. значение переменной сохраняется до следующего присваивания

  3. новое значение переменной заменяет предыдущее

Примеры:

  1. обмен значениями 2х переменных. Для решения применяется аналогия с двумя стаканами (с молоком и водой) для смены значений которых использу­ется третий, после которой решение становится очевидным.

  2. даны 2 правильные дроби, найти дробь – результат деления одной на вторую.

Решение сводится к правилам учебника математики.

Задания по разделу:

  1. когда значение переменной считается неопределенным?

  2. что происходит с предыдущим значением переменной после при­сваивания?

  3. можно ли в арифметическом выражении использовать неопределен­ную переменную?

1.1.3. Знакомство с языком Pascal

В этом параграфе изучается структура программы паскаля, в том числе описание переменных, синтаксис операторов ввода, вывода, присваивания, правила записи арифметических выражений

Описание переменных

Здесь описывается синтаксис описания переменных, основные типы (вещест­венный – real, целый - integer). Здесь только называются числовые типы: на­звания вещественный и целый полагается уже знакомыми ученикам, знание о диапазонах типов им пока не нужно.

Пример var a,b:integer;c:real;

Синтаксис операторов ввода, вывода, присваивания.

  • Ввод - Read[ln]();

  • Вывод - Write[ln]();

  • Присваивание - <числовая переменная>:=<Арифметическое выраже­ние>;

  • Арифметические операции +,-,*, /;

Правила записи арифметических выражений

Пример

Выражение записывается так

A*A+B*B-12*C или SQR(A)+SQR(B)-12*C

Задания по разделу:

  1. как записывается раздел описания переменных

  2. с какими типами числовых величин работает паскаль

  3. какая задача решается в программе

  4. как записываются арифметические выражения

1.1.4. Программирование ветвлений в Pascal

В этом параграфе не изучаются структуры данных, как таковые, но , в про­цессе изучения ветвлений изучаются логические операции и сложные логи­ческие выражения

Логические операции

Изучение вопроса начинается с примера программы

Var a,b,c,d: real;

Begin readln(a,b,c,d);

If (a>=b) and (a<=c) then d:=a;

If (b>=a) and (b>=c) then d:=b;

Здесь применяется неиспользуемое ранее логическое выражение and, с кото­рым обучаемые уже познакомились, изучая БД.

Далее ученикам напоминается эта операция и её результат, далее приводится список логических операций, используемых в паскале: and; or; not.

Сложные логические выражения

В этом разделе описывается структура сложных логических выражений в пас­кале:

If (a<0)or(b<0)or(c<0)then …

Задания по разделу:

  1. найдите результат работы программы (условный оператор со слож­ным условием)

1.1.5. Таблицы и массивы

В этом параграфе вводятся основные понятия о массивах: определение, опи­сание, ввод значений на ШАЯ, пример задачи – расчет среднего значения эле­ментов массива.

Школьники уже знакомы с принципом табличной организации данных из БД.

Что такое массив

Дается определение массива: М – представление таблиц в языках программи­рования.

Пример – запись температуры воздуха по месяцам

Месяц

1

2

3

4

5

6

7

8

9

10

11

12

температура

23

12

1

0

-1

-12

-1,2

2,2

2

3

0

-1

.

На основе этого примера вводится понятие линейной таблицы с индексиро­ванными именами, которая

«в программировании называется одномерным массивом.

В примере: Запись Т[1] в данном примере показывает температуру в 1 ме­сяце. Т - имя массива. Порядковый номер элемента – его индекс.

Каждый элемент обозначается так: <имя массива>[] »

Так вводится имя массива и его элементов. Далее говорится, что элементы массива должны иметь одинаковый тип. (в примере - вещественный).

Описание и ввод значений в массив на ШАЯ

Здесь приводится два примера программ на ШАЯ, позволяющих понять, как выводятся и вводятся в массив значения. Для реализации используются цикл с параметром и цикл с предусловием.

Расчет среднего значения элементов массива

Для изучения приемов обработки массива, а именно, нахождения суммы его элементов и их среднего арифметического значения, формулируется задача: Вычислить среднегодовую температуру.

При решении (алгоритм приводится на ШАЯ) обучаемые знакомятся с цик­лом, суммирующем элементы массива.

Задания по разделу:

  1. что такое массив

  2. придумайте примеры данных, которые можно реализовать в виде массива

  3. решить задачу на формирование и расчет среднего элемента в мас­сивее

1.1.6. Массивы

В этом параграфе рассматриваются: описание и обработка массивов в Пас­кале, цикл с параметром в Паскале, форматы вывода и программы с двумя массивами.

Описание и обработка массива в паскале

Приводится общая форма описания одномерного массива:

var : ar­ray[..] of ;

Для примера – описание массива из таблицы 1:

var t: array[1..12]of real;

далее рассматривается реализация задачи о средней температуре на Паскале, неизученными операторами в которой являются: ограничения на параметр цикла for (целое число, изменяющееся на 1 при прохождении цикла) и фор­маты вывода.

Пример write(‘T[1]=’,I:4:2);

Далее объясняется значение знаков в подобном примере.

Программа с двумя массивами

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

Задача: для каждого месяца определить отклонение его температуры от сред­негодовой величины.

В качестве решения сначала строится таблица в excel, в которой решается эта задача, затем показывается, как с помощью второго одномерного массива ее решить.

Задания по разделу:

  1. как на паскале описать массив численности населения к концу каж­дого года 20 века

1.2. «Информатика» Кузнецов

В этом учебнике изучение типов данных начинается вместе со знакомством с языком Паскаль, описанием структуры языка и представлением данных в па­мяти компьютера.

1.2.1. Язык программирования Pascal

В этом параграфе изучается история языка Паскаль, основные определения, перечисляются используемые числовые типы, способы их представления в памяти, основные операторы.

Основные определения.

  • Имя величины – слово из букв и цифр, обозначающее, как в ал­гебре, величину. Каждое имя соответствует ячейке памяти.

  • Ячейка последовательность разного количества байтов памяти для разных данных

  • Для каждой переменной надо указывать её тип, чтобы трансля­тор знал, сколько памяти под ее хранение выделить

Числа в Паскале

Числа бывают целые и действительные (с фиксированной или плавающей точкой).

Переполнение ячейки памяти – значение переменной не входит в предостав­ленную ей ячейку. Для избегания переполнения используют вещественные числа с плавающей точкой.

Пример: 243,7 = 2.437 ∙ 102 = 2.4370000000 Е + 02

В примере показано, что 2437 – мантисса, 2 – порядок.

Числовые операции

  • «+» - сложение

  • «-» - вычитание

  • «/» - деление

  • «*» - умножение

  • Mod – остаток от деления (только для целых чисел)

  • Div - деление нацело (только для целых чисел)

  • Математические выражения:

Sin(x); cos(x); ln(x); sqr(x); sqrt(x); abs(x);

Пример арифметического выражения в Pascal

Оператор присваивания

:=

Примеры: x:=3,14; a:=b+c; i:=i+1;

Ограничения на типы при присваивании:

  • Если переменная, расположенная слева имеет вещественный тип, то справа – арифметическое выражение: целое или вещественное

  • Если переменная слева целого типа – арифметическое выражение – только целое

Задания по разделу

    1. Почему паскаль различает целые и вещественные числа

    2. Что такое арифметическое выражение, из чего оно может состо­ять

    3. Как работает оператор присваивания

    4. Ограничения на типы данных при присваивании

    5. Запишите в виде арифметического выражения квадратный трех­член

    6. Запишите на паскале tg x , x4

1.2.2. Структура программы на Pascal, ввод и вывод данных

В параграфе описаны основные структуры программы на паскале, в том числе разделы описания переменных и типов, операторы ввода и вывода.

Раздел описания переменных

Основные описатели числовых типов: integer, real

Пример var a,b:integer; c:real;

Объясняется синтаксис раздела (применение знаков « . » ; « , » ; « : » ; « ; ») и порядок работы транслятора: «Когда транслятор встречает описание пере­менной, он отводит для этой переменной ячейку памяти и ставит в соот­ветствие имени переменной номер первого байта ячейки.»

Операторы ввода и вывода

В разделе объясняется принцип работы с этими операторами:

«Для сообщения данных компьютеру служат операторы ввода и вывода.

Оператор ввода помещает вводимое значение переменной в отведенную ей ячейку: read(); этот оператор останавливает работу программы и ждет, пока пользователь наберет на клавиатуре число и на­жмет <Enter>. Если список ввода содержит несколько имен, их значения надо вводить через запятую, пробел, или <Enter>.

Если после ввода числа необходимо перевести курсор на новую строку, ис­пользуют оператор readln();

Для вывода результатов работы программы на экран дисплея используется оператор write();

список вывода содержит перечисленные через запятую имена переменных или арифметические действия, текст, заключенный в апострофы.

При выводе вещественных чисел с фиксированной запятой необходимо после имени переменной в списке ввода указать через “:” 2 числа (сколько позиций занимает число, количество цифр дробной части).»

Задания по разделу

  1. Для чего необходимо описывать данные в программе

  2. Какой оператор используется для ввода данных, как он рабо­тает

  3. Куда попадают введенные с клавиатуры числа при работе оператора ввода

  4. Как перевести курсор на новую строку после ввода данных

  5. Как вывести на экран результат работы программы

  6. Как сделать, чтобы данные выводились с новой строки

  7. Как увидеть результаты вывода на экране дисплея, если уже сработал write

  8. Можно ли получить результат вычислений без использова­ния оператора Write

1.2.3. Условный оператор

В этом параграфе, применительно к описываемой теме, хотелось бы выде­лить раздел логические выражения, в котором на примере нескольких задач описываются примеры основных логических операций

Таблицы истинности для операций

X

Y

X AND Y

X

Y

X OR Y

1

1

1

1

1

1

1

0

0

1

0

1

0

1

0

0

1

1

0

0

0

0

0

0

X

NOT X

1

0

0

1

Примеры построения сложных логических выражений

  1. определить, принадлежит ли точка с координатой х отрезку [a,b].

Это условие записывается двойным неравенством a

На паскале – (x>a) and (x

  1. пройдет ли кирпич с ребрами x,y,z в отверстие a,b?

(a>x)and(b>y)or

(a>y)and(b>x)or

(a>x)and(b>z)or

(a>z)and(b>x)or

(a>y)and(b>z)or

(a>z)and(b>y)

  1. определить принадлежность точки к треугольнику ABC.

A(-1,0); B(0,2); C(1,0).

  1. условие существования треугольника со сторонами a,b,c.

1.2.4. Массивы

В этом параграфе дается определение массива, поясняется область приме­нения этой структуры, синтаксис паскаля для работы с массивом.

Рассмотрены также основные действия над одномерными массивами: вы­числение суммы элементов массива, нахождение наибольшего элемента мас­сива, сортировка массива, поиск элемента в массиве.

Определение массива

При решении задач данные объединяются в различные структуры, наиболее простая из них: массив – именованный набор с фиксированным количеством однотипных данных. В массивы объединяются результаты экспериментов, списки фамилий сотрудников, различные сложные структуры данных. В мас­сиве могут быть одинаковые данные, поэтому элементы массива различаются по своим порядковым номерам. Если каждый элемент массива имеет один порядковый номер, такой массив – одномерный, если два – это таблица из строк и столбцов. Для таблиц первый номер элемента показывает строку, второй – столбец, на пересечении которых находится элемент. Все строки таблицы имеют одинаковую длину.

При решении задач с использованием массива необходимо следовать алго­ритму:

  1. определить, какие числа даны, целые или вещественные

  2. назвать весь массив одним именем

  3. описать массив в разделе описания переменных, отведя тем са­мым место в памяти компьютера под массив.

  4. ввести данные в память.

Описание массивов в Pascal

Пример описания массива

const n=10;

Var a:array[1..n]of real;

Характеристики

Тип файла
Документ
Размер
52,59 Mb
Тип материала
Учебное заведение
Неизвестно

Тип файла документ

Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.

Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.

Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.

Список файлов курсовой работы

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6499
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее