Программирование на языке «Турбо-Паскаль»

Автор: Пользователь скрыл имя, 15 Октября 2011 в 06:13, курсовая работа

Краткое описание

Цель работы - разработка надежного и гибкого кода для требуемого комплекса программ

Оглавление

Введение 5
Глава 1. Постановка задачи 6
1.1. Задание с использованием итерационных циклов 6
1.2. Обработка элементов массива 6
1.3. Файлы 7
Глава 2. Реализация проекта 8
2.1. Основная схема решения задания с использованием итерационных циклов 8
2.2. Основная схема решения задач на элементы массива 8
2.3. Основная схема решения задач с файлами 10
Заключение 15
Приложение А 16
Приложение Б 17
Приложение В 20

Файлы: 1 файл

Курс.doc

— 300.00 Кб (Скачать)

Федеральное агентство по образованию

Государственное образовательное учреждение

высшего профессионального образования

«ТОМСКИЙ  ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» 
 

        Факультет ИДО

        Кафедра ОСУ

        Направление: Прикладная информатика в экономике 
         
         
         
         
         
         

Курсовая  работа

по  «Информатике и программированию»

тема

«Программирование на языке «Турбо-Паскаль»» 
 
 
 
 
 
 
 

Выполнили: студенты гр.  З-8581  ____________  М. В. Рыболов 

Проверил              ____________  И. П. Степанова 
 
 
 
 
 
 
 
 
 
 
 
 

Томск 2009

 

Федеральное агентство по образованию

Государственное образовательное учреждение высшего  профессионального образования

«ТОМСКИЙ  ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» 

                                         Кафедра ОСУ 
 

ЗАДАНИЕ

на выполнение курсовой  работы 

    Студенту  гр. З-8581 М. В. Рыболову

1. Тема курсовой работы: “Программирование на языке Турбо-Паскаль”

2. Срок сдачи студентом готовой  работы: июня 2009 года.

3. Исходные данные к работе: задание на курсовою работу (вариант 14)

4. Содержание текстового документа  (перечень подлежащих разработке  вопросов)

    5. Дата  выдачи задания на выполнение курсовой работы: 2 февраля 2009 года. 
     
     

            Руководитель_______________ И.П. Степанова

            (подпись,  дата)  

            Задание принял к исполнению  

            __________________________ М. В. Рыболов

            (подпись,  дата) 
             
             

 

Реферат 

     Курсовая  работа 24 с., 6 рисунков, 3 приложения.

     Ключевые слова: Работа с файлами, Работа с массивами

     Цель  работы - разработка надежного и гибкого кода для требуемого комплекса программ.

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

 

Содержание 

 

Введение

 

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

 

Глава 1. Постановка задачи

1.1. Задание с использованием итерационных циклов

 

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

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

Таблица 1

1. Вычислить сумму  членов ряда:

   

до члена  ряда , где

1.2. Обработка элементов массива

 

     Спроектировать программы по обработке значений элементов массивов, задавая их значения в разделе констант (в Turbo Pascal – это CONST).

Таблица 2

1. Дан массив C(30). Подсчитать количество элементов и вывести номера их позиций, которые не попали в интервал значений [-3, 3].
2. Дан массив Z(20). Найти среднюю сумму отрицательных элементов и среднее произведение положительных элементов.
3. Дан массив Q(24). Осуществить в нём перестановку: в каждой тройке элементов на первое место поставить максимальное. Изменённый массив распечатать.
4. Заполнить матрицу  Q(7,7) следующим образом:

,

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

1.3. Файлы

 

      Составить программу обработки пяти записей  заданной структуры из созданного ранее файла во внешнем представлении (файл имеет в программе тип описателя TEXT).

      В программе создать новый файл во внутреннем представлении (файл имеет описатель FILE OF…), в который переписать часть записей по заданному условию.

Таблица 3

Ф.И.О. студента Вес (кг) Рост (см)
Нгуен Хонг Шон 64,5 170
 

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

 

Глава 2. Реализация проекта

2.1. Основная схема  решения задания с использованием итерационных циклов

 

     Для решения задач подобного типа используем рекуррентную формулу. В нашем случае:

     запись  типа , приводим к виду

      , где  - предыдущее значение функции. Уравнение получившегося типа нетрудно реализовать в программном коде. Листинг программы приведён в приложении А. Результат работы программы приведён на рис. 1. 

Рис. 1

 

2.2. Основная схема  решения задач на элементы массива

 

     Решение задач подобного рода сводится к организации циклического перебора элементов массива. В случае с одномерными массивами обходимся одним циклом, в случае с двумерными – двумя (вложенный цикл). Листинг программ приведён в приложении Б. Результат работы программ приведён на рис. 2, рис.3, рис. 4 и рис. 5 соответственно.

Рис. 2

 

Рис. 3

 
 
 
 
 
 
 
 

Рис. 4

 

Рис. 5

2.3. Основная схема решения задач с файлами

 
 

     Прежде всего, необходимо понять, что такое файл. Любой файл имеет три характерные особенности. Во-первых, у него есть имя, что дает возможность программе работать одновременно с несколькими файлами. Во-вторых, он содержит компоненты одного типа. Типом компонентов может быть любой тип Паскаля, кроме файлов. Иными словами, нельзя создать «файл файлов». В-третьих, длина вновь создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти. Следует помнить, что физические файлы на магнитных дисках и переменные файлового типа в программе на Паскале – объекты различные. Переменные файлового типа в Паскале могут соответствовать не только физическим файлам, но и логическим устройствам, связанным с вводом/выводом информации. Например, клавиатуре и экрану соответствуют файлы со стандартными именами Input, Output.

     Как известно, каждый тип данных в Паскале, вообще говоря, определяет множество  значений и множество операций над  значениями этого типа. Однако над  значениями файлового типа Паскаля  не определены какие-либо операции, в том числе операции отношения и присваивания, так что даже такое простое действие, как присваивание значения одной файловой переменной другой файловой переменной, имеющей тот же самый тип, запрещено. Все операции могут производиться лишь с элементами (компонентами) файлов. Естественно, что множество операций над компонентами файла определяется типом компонент.

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

     Для работы с файлами используют следующие стандартные функции и процедуры:

       EOF (var F: File):Boolean,

где:  1) EOF ("End Of File" - "конец файла") - имя функции;

        2) F - имя переменной файлового типа.

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

   FilePos (var F: File of Type): Integer;

    FilePos (var F: File)        : Integer,

где:  1) FilePos ("File Position" - "позиция файла") - имя функции;

        2) F - имя переменной файлового типа.

Данная  функция (типа Integer) возвращает значение текущей позиции указателя файла. Номер первой компоненты файла равен.

 

  FileSize (var F: File of Type):Integer;

    FileSize (var F: File)        :Integer,

где: 1) FileSize ("File Size" - "размер файла") - имя функции;

        2) F - имя переменной файлового типа.

Данная  функция (типа Integer) возвращает размер файла, т.е. число компонентов файла. Если FileSize(F)=0, то файл является пустым.   Функции  FilePos() и FileSize() не применимы к текстовым файлам!  

      Assign (var F: File; Name: String);

    Assign (var F: File of Type; Name: String),

где: 1) Assign ("назначить") - имя процедуры;

        2) F - имя файловой переменной (логическое имя файла);

        3) Name - имя файла на диске (физическое  имя файла).  Name  -

строковое выражение, порождающее любое допустимое имя файла. Это имя

связывается с файловой переменной F, и в дальнейшем все операции с F будут производиться  над дисковым файлом Name. Данная процедура должна выполняться перед использованием файла! После выполнения этой процедуры Name и F отождествляются, т.е. отождествляются логическое и физическое имена файла. 

      Reset (var F: File),

где: 1) Reset ("переустановить") - имя процедуры;

      2) F - имя переменной файлового типа.

Процедура открывает файл F для чтения и  ставит указатель на начало первого  элемента файла (на элемент с номером 0). Файловая переменная F должна соответствовать уже существующему на диске файлу, иначе возникает ошибка: "I/О error" ("Input/Output error" - "ошибка ввода-вывода"). 

      Rewrite (var F: File),

где: 1) Rewrite ("установить на запись") - служебное слово;

       2) F - имя переменной файлового типа.

Процедура открывает файл F для записи, "очищает" его и помещает указатель на начало первого элемента файла. Существующий файл с данным именем будет уничтожен. Дисковый файл, организуемый с помощью процедуры Rewrite, создается пустым (не со- держащим элементов). 

Информация о работе Программирование на языке «Турбо-Паскаль»