Файл: «Работа с файлами в MS Visual C++».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2023

Просмотров: 738

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

2 Разработка электронного учебника по курсу JavaScript

2.1 Логическая структура приложения

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

1. Конспекты лекций. С помощью этого элемента курса можно реализовать процесс программированного обучения. Учебный материал можно выдавать по частям, в конце каждой части задавать вопросы и, в зависимости от ответов, направлять процесс обучения по той или иной ветви изучения материала.

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

3. Указания к выполнению практических заданий.

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

Главное меню обеспечивает выбор групп функций:

- просмотр теоретического материала;

- проверка знаний по, а именно –тестирование;

- просмотр заданий для практическихработ.

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

Структура приложения приведена на рисунке 1.

Теория

Практика

Тесты

Электронный учебник

Изучение теории

Выполнение практических работ

Прохождение

теста

Рис. 1 Структура приложения

2.2 Алгоритм решения задачи

Алгоритм работы программы связан с выбором пользователем раздела ЭУ, выбором параметров тестирования, и с ответами пользователя на вопросы. Приблизительный алгоритм работы с программой представлен на рисунке 2. Алгоритм тестирования представлен на рисунке 3.

Теория

Тест

Выход

Практика

Начало

Конец

Вывод меню

Выбор

пункта меню


Выбор темы

Вывод лекции

Тест

Вывод результата

Выбор темы

Вывод указаний

Рис. 2 Блок–схема алгоритма программы

Начало

Ввод n

Oc:=0

I=1; n; 1

Вывод Oc/n*100

Вывод вопроса

Ввод ответа

Конец

Ответ правильный

НЕТ

ДА

oc:=oc+1

Рис. 3 Блок–схема алгоритма тестирования

2.3 Проектирование интерфейса

При создании нового приложения WindowsForms с помощью Visual С++, решение приложения Windows появляется в окне Обозревателя решений (рисунок 4).

Рис. 4 Обозреватель решений приложения

Основная форма приложения представлена на Рисунке 5.

При разработке интерфейса электронного учебника по курсу «JavaScript» автор руководствовался принципом простоты и удобства использования программы.

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

В программе задействован ряд окон. Функции первого окна (рисунок 6): просмотр лекционного материала.

Рис. 5 Основная форма приложения

Рис. 6 Форма просмотра лекционного материала

На форме размещены компоненты: Меню программы, текстовая область – в ней будет отображаться теоретический материал.

В меню Теория пользователь может выбрать тему теоретического курса для изучения. Меню «Тесты» содержит команды для выбора теста, меню «Практика» позволяет перейти к выполнению практических работ, меню «О программе» выводит диалоговое окно с информацией о программе, Меню «Выход» – используется для завершения работы с приложением.

Вторая форма – тестовая. Она необходима для реализации функции тестирования студентов (Рисунок 7).

Рис. 7 Форма тестирования студентов

На форме размещены компоненты: Меню программы, текстовая область – в ней будет отображаться вопрос при тестировании. Для выбора варианта ответа использовался компонент Radiobutton.

При выборе пункта меню Тесты – Тест № 1 пользователь начинает отвечать на предлагаемые вопросы.


Вопросы программа выбирает случайным образом из файла вопросов.

В конце теста выдается число правильных ответов.

Третья форма нужна для практических работ (Рисунок 8). Студент прошедший лекционный материал смело может приступать к выполнению практических заданий.

Рис. 8 Форма просмотра методических указаний к практическим работам

На Рисунке 9 представлена форма окна «О программе»

Рис. 9 Форма окна «О программе»

2.4 Разработка программного кода

Процесс написания программного кода начинается с написания процедур для пунктов меню. Рассмотрим пункты меню «Теория».

Лекционный материал хранится в текстовых файлах. При выборе соответствующего пункта меню происходит открытие файла и вывод его содержимого в компоненте RichEdit.

this–>richTextBox1–>LoadFile(L"Data/Lection7.rtf");

Для написания процедуры, которая будет выполняться при выборе пункта меню следует дважды щелкнуть по этому пункту в редакторе меню и в появившемся окне редактора исходного кода набрать текст процедуры (рисунок 10), при этом шапка процедуры генерируется системой автоматически.

Рис. 10 Написание программного кода, соответствующего выбору пункту меню «Теория/Лекция по JavaScript№ 1».

Аналогично производится обработка событий выбора дргих пунктов меню. Вывод методических указаний к практическим работам осуществляется процедурой вида:

private: System::VoidлабораторнаяРабота7ToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {

this–>button2–>Visible=true;

this–>button3–>Visible=true;

this–>button2–>Enabled=true;

this–>button3–>Enabled=true;

num=16;

this–>richTextBox1–>Visible=true;

this–>richTextBox2–>Visible=false;

this–>button1–>Visible=false;

this–>radioButton1–>Visible=false;

this–>radioButton2–>Visible=false;

this–>radioButton3–>Visible=false;

this–>radioButton4–>Visible=false;

this–>label1–>Visible=false;

this–>richTextBox1–>LoadFile(L"Labs/Lr7.rtf");

}

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

i=0;

srand(time(NULL));

m=1+rand()%30;

n=m–1;

this–>richTextBox2–>Text=this–>richTextBox1–>Lines[6*n];


this–>radioButton1–>Text=this–>richTextBox1–>Lines[6*n+1];

this–>radioButton2–>Text=this–>richTextBox1–>Lines[6*n+2];

this–>radioButton3–>Text=this–>richTextBox1–>Lines[6*n+3];

this–>radioButton4–>Text=this–>richTextBox1–>Lines[6*n+4];

o=Convert::ToInt32(this–>richTextBox1–>Lines[6*n+5]);

При нажатии кнопки «Далее» происходит определение правильности ответа и подсчет (если надо) количества правильных ответов.

if ((radioButton1–>Checked )&&(o==1)) k=k+1;

if ((radioButton2–>Checked )&&(o==2)) k=k+1;

if ((radioButton3–>Checked )&&(o==3)) k=k+1;

if ((radioButton4–>Checked )&&(o==4)) k=k+1;

radioButton1–>Checked = false;

radioButton2–>Checked = false;

radioButton3–>Checked = false;

radioButton4–>Checked = false;

Если пользователь ответил на 10 вопросов, тестирование останавливается, и выводится результат.

if (i==9)

{

this–>richTextBox2–>Visible=false;

this–>radioButton1–>Visible=false;

this–>radioButton2–>Visible=false;

this–>radioButton3–>Visible=false;

this–>radioButton4–>Visible=false;

this–>button1–>Enabled=false;

this–>label1–>Text="Числоправильныхответов – "+Convert::ToString(k)+" из 10";

this–>label1–>Visible=true;

Программный код представлен в приложении.

2.5 Тестирование программного продукта

Основное окно приложение представлен на рисунке (рисунок 11).

Рис. 11 Основное окно приложения

Для изучения теоретического материала следует выбрать пункт меню Теория и соответствующую тему (рисунок 12).

Рис. 12 Просмотр теоретического материала

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

После этого вы перейдете в окно тестирования (рис. 13).

Рис. 13 Окно тестирования

Рис. 14 Окно тестирования

По окончании тестирования программа выведет результат (рисунок 15).

Рис. 15 Вывод результатов

Для просмотра методических указаний к практическим работам следует выбрать пункт меню «Практика» и соответствующую работу (рисунок 16).

Рис. 16 Выполнение практической работы

При выборе пункта меню «О программе» появится окно с информацией о разработчике (см. рисунок 17).


Рис.17 Вывод окна «О программе»

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

ЗАКЛЮЧЕНИЕ

Таким образом, в языке C++ отсутствуют операторы для работы с файлами. Все необходимые действия выполняются с помощью функций, включенных в стандартную библиотеку. Они позволяют работать с различными устройствами, такими, как диски, принтер, коммуникационные каналы и т.д. Эти устройства сильно отличаются друг от друга. Однако файловая система преобразует их в единое абстрактное логическое устройство, называемое потоком.

В среде Visual Studio C++ существует компонент RichTextBox – расширенное поле ввода – предоставляет возможность пользователю вводить и обрабатыать большие объемы информации (более 64 кБт). Кроме того, RichTextBox позволяет редактировать цвет текста, шрифт, добавлять изображения. RichTextBox включает     все возможности текстового редактора Microsoft Word.

Таким образом, результатом выполнения курсовой работы является электронное учебное пособие по курсу «JavaScript», которое содержит лекционную часть, систему проверки остаточных знаний, реализованную в виде тестирования, а также комплекс методических указаний к выполнению практических работ по дисциплине.

При помощи такого электронного комплекса обучающийся может изучать учебный материал в соответствии со своими возможностями. Кроме того, данный комплекс позволит совмещать производственную деятельность и обучение тем, кто не может ее прерывать. Также использование данного комплекса позволит облегчить для преподавателя процесс проверки остаточных знаний.

СПИСОК ЛИТЕРАТУРЫ

  1. Айвор Хортон Microsoft Visual C++: базовый курс – Beginning Visual C++ / Хорторн Айвор. – М.: «Диалектика», 2007.
  2. Баженова И. Ю. С++ && Visual Studio NET. Самоучитель программиста / И.Ю. Баженова. – М.: КУДИЦ–ОБРАЗ, 2003.
  3. Благодатских В.А. Стандартизация разработки программных средств.: Учеб. пос. для вузов /В.А. Благодатских, В.А. Володин, К.Ф. Поскакалов; Под ред. О.С. Разумова. – М.: Финансы и статистика, 2005.
  4. Вирт Н. Алгоритмы и структуры данных / Н. Вирт / Пер. с англ. М.: Мир, 2004.
  5. Мауэргауз Ю.Е. Информационные системы промышленного менеджмента / Ю.Е. Мауэргауз. – М.: ИНФРА–М, 2009.
  6. Николенко Д. В. Самоучитель по Visual C++ / Д.В. Николенко. – СПб: Наука и техника, 2001.
  7. Павловская Т.А. С/С++. Программирование на языке высокого уровня / Т.А. Павловская. – СПб.: Питер, 2003.
  8. Пахомов Б. C/C++ и ms visual c++ 2012 для начинающих / Б. Пахомов. – БВХ–Петербург, 2013.
  9. Перегудов Ф.И. Основы системного проектирования АСУ организационными комплексами / Ф.И. Перегудов. – Томск: Изд–во Томск. ун–та, 2004.
  10. Савич У. С++ во всей полноте / У. Савич. – СПб: Питер, 2005.
  11. Холзнер С. Visual C++: Учебный курс / С. Холзнер. – СПб: Питер, 2000.
  12. Шиманович Е.Л. C/C++ в примерах и задачах / Е.Л. Шиманович. – Минск: Новое знание, 2004,
  13. Шмидский Я. К. Программирование на языке С/С++. Самоучитель / Я.К. Шмидский. – М.: Вильямс, 2004.