Реферат по предмету "Информатика, программирование"


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

ВЯТСКИЙГОСУДАРСТВЕННЫЙ ГУМАНИТАРНЫЙ УНИВЕРСИТЕТ
Физико-математическийфакультет
Курсовая работа поинформатике
разработка обучающей программы, поддерживающейизучение темы «структуры данных»
Выполнил:
Студент 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 xa
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
В этомпараграфе не изучаются структуры данных, как таковые, но, в про­цессе изученияветвлений изучаются логические операции и сложные логи­ческие выражения
 
Логическиеоперации
Изучениевопроса начинается с примера программы
                   …
                   Vara,b,c,d: real;
                   Beginreadln(a,b,c,d);
                             If(a>=b) and (a
                             If(b>=a) and (b>=c) then d:=b;
Здесьприменяется неиспользуемое ранее логическое выражение and, с кото­рым обучаемые ужепознакомились, изучая БД.
Далееученикам напоминается эта операция и её результат, далее приводится списоклогических операций, используемых в паскале: and; or; not.
Сложныелогические выражения
В этомразделе описывается структура сложных логических выражений в пас­кале:
If(a
Задания поразделу:
1.        найдитерезультат работы программы (условный оператор со слож­ным условием)
 
1.1.5. Таблицы и массивы
В этомпараграфе вводятся основные понятия о массивах: определение, опи­сание, вводзначений на ШАЯ, пример задачи – расчет среднего значения эле­ментов массива.
Школьники ужезнакомы с принципом табличной организации данных из БД.
Что такое массив
Даетсяопределение массива: М – представление таблиц в языкахпрограмми­рования.
Пример – запись температурывоздуха по месяцам
Месяц
1
2
3
4
5
6
7
8
9
10
11
12
температура 23 12 1 -1 -12 -1,2 2,2 2 3 -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 1 1 1 1 1
X
NOT X
1
1
Примеры построения сложных логических выражений
1.        определить, принадлежит ли точка скоординатой х отрезку [a,b].
Это условие записывается двойным неравенством a
На паскале – (x>a) and(x
2.        пройдет ли кирпич с ребрами 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)
3.        определить принадлежность точки ктреугольнику ABC.
A(-1,0); B(0,2); C(1,0).
4.        условие существования треугольника состоронами a,b,c.
1.2.4. Массивы
В этом параграфе дается определение массива, поясняется область приме­ненияэтой структуры, синтаксис паскаля для работы с массивом.
Рассмотрены также основные действия над одномерными массивами: вы­числениесуммы элементов массива, нахождение наибольшего элемента мас­сива, сортировкамассива, поиск элемента в массиве.
Определение массива
При решении задач данные объединяются в различные структуры, наиболеепростая из них: массив – именованный набор с фиксированным количествомоднотипных данных. В массивы объединяются результаты экспериментов, спискифамилий сотрудников, различные сложные структуры данных. В мас­сиве могут бытьодинаковые данные, поэтому элементы массива различаются по своим порядковымномерам. Если каждый элемент массива имеет один порядковый номер, такоймассив – одномерный, если два – это таблица из строк истолбцов. Для таблиц первый номер элемента показывает строку, второй –столбец, на пересечении которых находится элемент. Все строки таблицы имеютодинаковую длину.
При решении задач с использованием массива необходимо следовать алго­ритму:
1.        определить, какие числа даны, целые иливещественные
2.        назвать весь массив одним именем
3.        описать массив в разделе описанияпеременных, отведя тем са­мым место в памяти компьютера под массив.
4.        ввести данные в память.
Описание массивов в Pascal
Пример описания массива
const n=10;
Vara:array[1..n]of real;
При этом комментируется каждое слово в этой записи. При встрече описаниямассива, транслятор отводит для него столько последовательных ячеек, сколькоуказано в квадратных скобках, и такого формата, каков тип массива.
Описание из примера означает, что для массива а отведено 10 ячеек по 6байт каждая. Имена ячеек: /> вПаскале будут записаны: a[1],a[2],…,a[10].
Ввод и вывод данных массива осуществляется через цикл, например:
For i:=1to n do read(a[i]);
Базовые задачи на массивы
1.        вычисление суммы элементов массива
Вычисление ничем не отличается от суммирования значений простых пере­менных.
Этапы решения:
-                      ввод данных;
-                      вычисление суммы;
-                      печать результатов;

{1} For i:=1to n do read(a[i]);
{2} S:=0; Fori:=1 to n do s:=s+a[i];
{3} Writeln(s);
Пример решения представлен в таблице:Исходные данные: 3, -2, 9, 7, -1, 6, 1 i 1 2 3 4 5 6 7 a[i] 3 -2 9 7 -1 6 1 S 1 10 17 16 22 23
2.        нахождение наибольшего элемента массива
Чтобы лучше представить себе, как последовательно рассматривать и сравни­ватьмежду собой числа, записанные в памяти, в учебнике предлагается вооб­разить,что каждое число написано на отдельной карточке и карточки сло­жены стопкой:
-                     первое число запомним, перевернемкарточку
-                     сравниваем числа: первое видим, второепомним
-                     запомним большее, перевернем карточку
ТО на каждом этапе мы будем помнить большее из рассмотренных чисел ирешим задачу.
Пример программы:
         …
         Max:=a[1];
         Fori:=2 to n do
 ifmax

3.        упорядочивание массива по возрастанию
При решении задачи используется сортировка методом пузырька.
4.        поиск элемента в массиве
пример поиска методом сплошного перебора, используется оператор goto.
Задания по разделу
1)                    чем отличается массив от файла
2)                    для чего необходимо описание массива
3)                    может ли массив содержать разнородныеданные
4)                    в заданном массиве
§     замените нулем наибольший элемент
§     найдите полупроизведение всехположительных элементов
§     замените все отрицательные числа ихмодулями и т. п.
 
1.2.5. Алгоритмы обработки таблиц
В этом параграфе рассматривается двумерный массив(таблица), его описа­ние,основные задачи:
-         вычисление суммы элементов главнойдиагонали квадратной таб­лицы
-         нахождение наибольших элементов каждойстроки таблицы
-         нахождение сумм элементов столбцовтаблицы
-         перестановка строк таблицы
Описание двумерного массива
Для лучшего наглядного представления двумерный массив представляется вучебнике, как таблица, в которой номер строки обозначается первым индек­сомдвумерного массива, столбцы – вторым. Объясняется так же, как хра­нится массивв памяти компьютера (построчно, строка за строкой).
Если число строк таблицы = числу столбцов, то таблица – квадратная.
Основные задачи
1.        вычисление суммы элементов главнойдиагонали квадратной таб­лицы
алгоритм:
(1)    ввести таблицу в память
(2)    найти сумму элементов главной диагонали
(3)    напечатать результат
при решении диагональ рассматривается, как одномерный массив
2.        нахождение наибольших элементов каждойстроки таблицы.
Идея: рассматривать каждую строку, как одномерный массив
3.        нахождение сумм элементов столбцовтаблицы
идея та же + операции можно совершать как над строками, так и над столб­цамитаблицы
4.        перестановка строк в таблице
воспользоваться алгоритмом обмена значений 2х переменных + цикл постолбцам
Задания по разделу
1)        в квадратной неотрицательной таблиценайдите квадратный корень произведения диагональных элементов
2)        найдите наибольший элемент квадратнойтаблицы
3)        в прямоугольной таблице замените всеэлементы их квадра­тами
4)        в квадратной таблице найдите наибольшийэлемент диаго­нали
5)        поменяйте местами первую и последнююстроки прямоуголь­ной таблицы
1.2.6. Обработка строкна языке Pascal
В этом параграфе рассказывается о 2х новых для школьников типах данных –символах и строках, а также об основных операциях над ними
Символы
Для записи символа используется 1 байт памяти. Для данного, описывающего1 символ используется описатель char.Символы объединяются в массивы. Значение символьного данного – любой символклавиатуры в апострофах.
Символьные массивы обрабатываются теми же алгоритмами, что и числовые.
Строки
Строка – ограниченная апострофами последовательность любых символов.
Длина строки в паскале не должна превышать 255 символов.
Операции над строками (объединение, сравнение, присваивание)
1.        объединение
операция позволяет объединить 2 строки в одну, приписав к концу первойна­чало второй.
Пример
X:=’тепло’;
Y:=’ход’;
Z:=x+y;{получим — теплоход}
2.        сравнение
‘=’ – означаетпосимвольное совпадение строк
‘’ – относятся кдлинам строк
3.        присваивание – строковой переменнойприсваивается строковое выражение
4.        основные процедуры и функции
a:=length(s) – длинастроки
s:=copy(строковоевыражение, начальный символ, количество символов) – копирование части строки
a:=pos(подстрока,исх. строка) – поиск подстроки в строке(а-номер первого символа подстроки висходной строке)
insert(вставляемая строка,исходная строка, целое число) – вставка подстроки в строку после данногосимвола
delete(строка, номерначала, количество символов) – удаление из строки дан­ное количество символовпосле данного элемента.
Пример программы
В качестве примера использования строковых процедур и функций использу­етсяпрограмма пословного перевода с английского языка.
Задания по разделу
1.        чем отличается символьный тип данных отстроковых
2.        используя символьный массив,определите, сколько слов в данном тексте, сколько букв «а» в данном слове
3.        дана строка с несколькими запятыми,получите слово между пер­вой и второй запятыми
 
1.2.7. Записи
В этом параграфе дается определение записи, описание её структуры наПаскале и простейшие примеры применения.
Определение записи
С одной стороны запись – последовательность байтов на носителе, ограни­ченнаяс двух сторон специальными признаками, с другой стороны, в связи со сложной еёвнутренней структурой, запись – совокупность разнородных дан­ных, описываемых иобрабатываемых, как единое целое.
Данные из которых состоит запись – поля.
Описание записи
Type
 A =record
 N:integer;
 K:string;
 F:array[1..5,5..10]ofreal;
End;
Var rec:a;
Примеры записей
1.        объект – физическое тело с измерениями a,b,c – длина,ширина, высота
2.        объект – товар, характеризующийсяназванием и ценой
3.        объект – дата рождения: день, месяц,год
Записи могут объединяться в массивы, например:
Type
 A =record
 N:integer;
 K:string;
 F:array[1..5,5..10]ofreal;
End;
Mas =array[1..n] of A;
Var masrec:mas;
Для обращения к полю записи используются сложные имена из имени записииз раздела var и имени поля, разделенных точкой: rec.n; rec.f[1,5]; mas­rec[1].f[2,8];
4.        Массив сведений о работникахпредприятия(имя, должность, дата рождения, зарплата).
Операции над записями
В программе ввод и вывод записи производится по полям, но можно присво­итьодной записи значение другой, при этом происходит копирование области памяти.
Оператор присоединения – используется для краткости. Он позволяет при об­работкезаписи указать её имя только 1 раз: with список имен do оператор.
1.2.8. Файлы
В параграфе описаны основные этапы операций обработки файлов – чтения изаписи
Операция записи
Запись в файл – помещение в него новых данных. Данное для занесения вфайл формируется в оперативной памяти как значение некоторой перемен­ной.Операцией записи это значение копируется из оперативной памяти во внешнюю.Следовательно, форма представления данного, его тип и структура должны бытьодинаковы и для записей файла и для переменной, из которой это данноекопируется.
Этапы записи в файл
1.        описание файла – в разделе описаниятипов или переменных. При­мер: var f:fileof integer; a:integer;
2.        Установление соответствия междуфизическим и логическим име­нем файла. Оператор установления соответствия: assign(логическоеимя, ‘фи­зическое имя’); например assign(f,’file.dat’);
3.        открытие файла для операции запись – rewrite(f); еслиоткрыть для записи файл с имеющимися данными – они все пропадут.
4.        запись данных в файл – write(f,a);
5.        закрытие файла – close(f);
Операция чтения. Этапы:
Описание файла и установление соответствия между его именами также, какдля записи.
3.        открытие файла для чтения – reset(f);
4.        читать данные из файла – read(f,a); количествозаписей в файле может быть неизвестно. По этому при чтении удобно использоватьфункцию признака конца файла – eof(f);
5.        закрыть файл
На каждую из операций показан простой пример чтения или записи в файлчисел.
Также показан прием дозаписи файла, использующий вспомогательный файл.
Задания по разделу
1.        какие операции можно производить сданными файла
2.        почему второй параметр операторов write и read долженбыть того же типа, что и данные файла
3.        чем отличается физическое имя файла отлогического
4.        как открыть файл для записи
5.        что будет, если ранее созданный файл сданными открыть для за­писи
6.        чем отличается файл от массива
7.        как прочесть данные из файла, не знаяих количества
8.        как добавить данные в имеющийся файл
 
1.3. «Информатика и информационные технологии» Н. Угринович
 
В этом учебнике, в отличие от вышеописанных, изучение темы ведется не по­путнос другими темами, а отдельно, для этого выделено несколько парагра­фов.Поскольку в этом учебнике изучается другая среда программирования, остановимсятолько на структуре изложения материала.
 
1.3.1. Тип, имя и значение переменной
В этом параграфе даются основные понятия о переменных, их именах, зна­чениях,данных и типах.
Понятие переменной
Переменные задаются именами, определяющими области памяти, в которыххранятся значения переменных. Значениями переменных могут быть данные различныхтипов (целые, вещественные числа, последовательности символов и так далее).
Переменная в программе представлена именем и служит для обращения кданным определенного типа. Конкретное значение переменной хранится в ячейкахоперативной памяти.
Тип переменной
Тип переменной определяется типом данных, которые могут быть значениямипеременной. Значениями переменных числовых типов являются числа, логи­ческих – True или False, строковых– последовательности символов и так да­лее.
Над различными типами данных допустимы различные операции. Над число­выми– арифметические операции, над логическими – логические операции, надстроковыми – операции преобразования символтных строк и так далее.
Различные типы данных требуют для своего хранения в памяти различное ко­личествоячеек (байтов).
{таблица типов данных и их размеров в памяти}
Задания по разделу
1)   В чем разница между типом, именем и значением переменной?
2)   Определить, какой диапазон чисел может храниться впеременной типа {тип} с учетом выделения одного байта для хранения знака числа.
3)   Определить, какое количество ячеек памяти потребуется дляхране­ния строк “ЭВМ”, “информатика”.
1.3.2. арифметические,строковые и логические выражения При­сваивание
В параграфе описаны выражения, которые можно составить с основнымитипами данных – числовой, логический, строковый.
Арифметические выражения
В состав арифметических выражений могут входить кроме переменных чи­словоготипа, также и числа, над переменными и числами могут произво­диться различныеарифметические операции, выраженные с помощью функ­ций.
Строковые выражения
В состав строковых выражений могут входить переменные строкового типа,строки и строковые функции.
Над переменными и строками может производиться операция конкатенации,она заключается в объединении строки или значения строковых переменных в единуюстроку. Операция обозначается знаком «+».
Логические выражения
В состав логических выражений кроме логических переменных могут входитьчисла, числовые или строковые переменные или выражения, которые сравни­ваютсямежду собой при помощи операций сравнения.
Например (5>3) = true; (2*2 = 5) = false;
Над элементами логических выражений могут производиться логические опе­рации– логическое умножение(and), логическое сложение(or), логическое от­рицание(not).
Задания по разделу
1)        Могут ли в состав одного выражениявходить переменные различ­ных типов?
2)        В чем разница между операциейлогического сложения и опера­цией конкатенации?
1.3.3. Функции в языкеVisual Basic
В этом параграфе описаны основные функции, употребляемые для каждого изиспользуемых типов данных.
Функции перевода типов данных
Применительно к Pascal в этом разделеможно упомянуть такие процедуры, как STR(a); VAL(s,a,b);
Математические функции
Здесь упомянуты такие математические числовые функции, как
Sin, cos,tan, atn, sqr, sqrt, log, exp, random, abs.
Строковые функции
-         Функция длины строки
-         Функция вырезания подстроки
Функции ввода и вывода
Аналог в паскале – readln, writeln
1.3.4. массивы
Изложение материала мало отличается от предыдущих учебников.
Задания по разделу
1.        в чем различие между переменной имассивом
 
1.4.    Вывод
 
Сравнительнаяхарактеристика вышеописанных учебников по изучаемым те­мам приведена в таблице:

учебники  
 темы
учебник Кузнецова
учебник Семакина
учебник|Угриновича
Основные поня­тия раскрытие темы в равной степени наблюдается во всех учебниках, да­ется определение основных понятий, перечислены и охарактеризованы основные числовые типы
Арифметические выражения перечислены 4 основ­ных операции (+,-,/,*) и правила их записи, операторы ввода, вы­вода, присваивания кратко – раздел опи­сания 4 основных операции + sin, cos, ln, sqr, sqrt,abs, пример за­писи выражения, раз­дел описания, опера­торы ввода, вывода, присваивания даны все, используе­мые в среде VB, типы, их диапазоны, применяемые опера­ции, в том числе пре­образования типов
логические выра­жения не вводится как тип, но показаны примеры использования логи­ческих выражений в условиях циклов и условного оператора не вводится как тип, но рассмотрены ос­новные логические операции и примене­ние их в сложных ус­ловиях выделен логический тип, рассмотрены все правила логики и их применение в коде программы
массивы
(1-о и 2-мерные) определение 1мерного массива, его описание, ввод-вывод данных, нахождение среднего значения. определение 1,2мерного массива, ввод, вывод, описание, задачи на нахождение суммы, наи­большего элемента, упорядочивание и поиск
строки не вводятся как тип, используются только как подсказки для операторов вывода и ввода определение типов char и string, операции объединения, срав­нения, присваивания, удаления части строки определение строко­вого типа, опера­ции сложения, опре­деле­ния длины, выре­зания подстроки, преобра­зования типов
записи Не рассматриваются Определение, при­меры описания и ис­пользования не рассматриваются
файлы определение, описа­ние, операции чтения, записи, функция конца файла, при­меры
Более полноераскрытие тем наблюдается в учебнике Кузнецова.
В учебникеСемакина изложение ведется применительно к нескольким разде­лам(программирование, БД и Электронные таблицы).
В процессеизучения типов данных более полно во всех учебниках изучаются числовые типыданных – integer и real. Также, в каждом учебнике изучаются одномерные массивы, даютсяосновные понятия и неявное применение пере­менных логического типа.
В учебникеКузнецова, в отличие от Семакина, рассматриваются двумерные массивы, строки, записии файлы.
В обоихучебниках, в отличие от учебника Угриновича, тема раскрывается параллельно сдругими структурами языка, по мере необходимости примене­ния нового материала,есть разделы, которые можно дополнить, расширить и систематизировать.
В качествеконтрольных заданий применяются, вместе с теоретическими во­просами на знаниематериала такие задания, как:
-         Написатьпрограмму для реализации какой либо ситуации
-         Определитьрезультат действия программы.
На основаниисделанных выводов решено создать дополнительное обучаю­щее средство в видеобучающей программы, поддерживающей индивидуаль­ное изучение всех вопросовтемы, а также, дополнительные сведения о типах данных. Кроме того, в программубудет встроен блок самоконтроля, поддер­живающий проверку усвоения каждойизучаемой темы.

Глава 2. Описание и принцип работы обучающейпрограммы по теме «структуры данных»
2.1. Общие сведения о программе
/>/>Программа представляетсобой электронный учебник со встроенным средством самокон­троля и проверкизнаний.
После запуска программы открывается окно регистра­ции, вкотором пользователь может зарегистрироваться, нажав соответствующую кнопку,или продолжить ра­боту, выбрав свое имя из списка и введя свой пароль.
Для контроля работы пользователей, в про­грамме пре­дусмотренафункция «показать оценки».
/>
Далее, после регистрации, пользователю предлагается выбратьтему для изу­чения.
Здесь также показаны оценки за каждую из изученных тем.
Предполагается, что изучение тем происходит в порядке ихрасположения в списке тем. При нарушении этого условия пользователю будетвыведено со­общение об ошибке.
/>После выбора темы открывается окно собучающим текстом. Процесс работы с ним мало отличается от просмотра страниц Internet.
Переходыпо страницам материала осуществляются тремя способами:
1.        кнопки «назад» и «вперед»
2.        гиперссылки в тексте материала
3.        список тем и разделов в левой части формы
Функции всех кнопок дублируются в строке меню программы.
Пользователю доступен также словарь, составленный из новыхслов, упот­ребляемых в тексте.
После прочтения очередного раздела программа предлагаетпройти тест для проверки усвоения темы.
/>/>/>
В программе предусмотрено 5 вариантов теста для каждойтемы, вариант вы­бирается случайно при каждом открытии теста.
Количество вопросов и вариантов ответа может быть различным(в зависимо­сти от составленного теста), оценка выставляется по формуле:
 (5*кол-во верных ответов)div(кол-во вопросов).
Пройдя тест и нажав на кнопку «проверить», пользовательможет увидеть не только оценку за тест, но и список тем, которые нужноповторить, чтобы улучшить результаты. Список правильных ответов НЕ выводится.
Время прохождения теста также ограничено и определяется приего составле­нии.
Во время работы пользователь может контролировать времярешения теста по таймеру и двум прогрессбарам (первый показывает время решениятекущего задания, второй – всего теста).
Во время работы с тестом обучающий материал недоступен, но,при необхо­димости, пользователь может его увидеть, нажав кнопку «подсказка». Вэтом случае результаты теста не засчитываются, но оценка за тест и темы для по­вторениявыводятся.
В ситуации, когда время, отведенное на тест, истекло, апользователь еще не нажал кнопку «проверить», система спрашивает, надо липроверять резуль­таты. При положительном ответе происходит выход из теста сподсчетом оценки, при отрицательном — выход из теста не производится. В этомслучае результаты теста также не засчитываются, но оценка за тест и темы для по­вторениявыводятся.
/>/>Прервать выполнение теста пользователь может в любой момент, нажав соот­ветствующуюкнопку.
Для корректировки мелких ошибок оформления и со­дер­жанияматериала в про­грамме предусмотрен ре­жим редакти­рования, войти в которыйможно при по­мощи выбора соответст­вующего пункта в главном меню формы изуче­ния.(па­роль редактора: 9091433506).
Процесс редактирования прост и нагляден, не требуетдополнительного пояс­нения. Для редактирования других модулей программы (тестови определе­ний) созданы вспомогательные программы: Testmaker.exe и Defedit.exe, вход в которые такжеосуществляется по паролю 9091433506.
2.2. Принцип работы программы
Программа состоит из трех главных модулей:
§   Модуль регистрации пользователей;
§   Модуль изучения материала;
§   Тестовый модуль (проверка знаний)
И пяти вспомогательных, на которых, для краткости,останавливаться не бу­дем.
2.2.1. Модуль регистрации пользователей
Принцип работы модуля основан на записи и чтении из файла «users.dat» ос­новнойинформации о пользователях:
§  Имя
§  Пароль для входа в программу
§  Оценки за выполнение каждого разделапрограммы.
Структура реализована в форме файла из записей.
После выбора пользователя и ввода пароля на форме регистрации имя и мас­сивоценок отображаются на форме списка тем.
2.2.2. Модуль изученияматериала
Основан на файле «forms.dat» и файлов вида «mn.rtf», где m, n – номер темы и раздела соответственно, которым принадлежитматериал файла.
Вся информация об отображаемом на форме материале хранится в файле «forms.dat», а именно:
§  Название раздела
§  Имена, положение гиперссылок и номераразделов, на которые они ссылаются
§  Положение, размер, и адрес картинок,отображаемых на форме
§  Количество разделов в теме
Данные организованы в форме массива записей, обращение к материалу про­исходитпо его порядковому номеру.
 
2.2.3. Модуль проверки знаний
Основан на текстовых файлах с вопросами теста. Ответы на тест располага­ютсяОТДЕЛЬНО от вопросов в файле «test.dat», в котором хранится массив записей – данных дляотображения нужного вопроса теста.
Поля записи:
§  Имя файла с вопросом теста
§  Время на выполнение каждого вопроса
§  Массив ответов
§  Номер верного ответа
§  Адрес страницы обучающего материала, накоторой рассмотрено   и решение вопроса.
§  Адрес картинки, подгружаемой, принеобходимости к вопросу ирррррр теста.
Это основные принципы работы программы, более детально их можно рас­смотреть,ознакомившись с кодом программы.
Программу можно скачать по адресу: fizmath.net\kurs.rar


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.