Разработка программ на языке Pascal
Рассмотрение правил записи, способов ввода и вывода, использования функций обработки символьных данных в Pascal. Описание алгоритмизации и программирования файловых структур данных, проектирования структуры файла. Ознакомление с работой данных массива.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 27.06.2015 |
Размер файла | 336,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Аннотация
pascal программирование файловый массив
Данная курсовая работа посвящена разработке программ на языке Pascal с примерами обработки символьных, файловых данных, работа с массивами.
Также рассмотрены правила записи, способы ввода и вывода, использование функции обработки символьных данных; получены навыки алгоритмизации и программирования файловых структур данных, проектирования структуры файла, вывода данных в файл, чтения данных из файла; ознакомлены с работой данных массива, с его созданием.
Содержание
Введение
1. Теоретическая часть
2. Постановка задач
3. Руководство пользователя
4. Руководство программиста
5. Анализ работы
Заключение
Список использованной литературы
Приложения
Введение
Язык Турбо Паскаль - это один из самых распространённых языков программирования микрокомпьютеров. Он разработан фирмой "Борланд" как диалект стандартного языка Паскаль, но благодаря своей популярности сам стал стандартом языка программирования 8- и 16-разрядных микрокомпьютеров.
К важнейшим достоинствам языка Турбо Паскаль относятся небольшой размер компилятора, высокая степень соответствия стандартному Паскалю, очень быстрая компиляция программ, объединение компилятора с интерактивным экранным редактором, предупреждение об ошибках на уровне исходной программы, обширная библиотека подпрограмм и полезные расширения, упрощающие системное программирование.
Одной из основных проблем, с которой сталкиваются в процессе программирования, является написание программы, не содержащей ошибок. Ошибку наиболее полно можно определить, как расхождение поведения программы с ожиданиями пользователя. Сюда входит как несоответствие результат исходных данных, так и другие, порой более опасные эффекты: зацикливание, аварийная остановка программ и т.п.
Наиболее явно наблюдаемыми историческими тенденциями в программировании являются непрерывный рост пользовательских требований, лавинообразное усложнение функциональности программы и, как следствие, - усложнение её разработки. В связи с увеличением трудоёмкости программных средств возникла необходимость выработки интеллектуальных инструментов, позволяющих разработчикам справляться с возросшей сложностью своего труда.
В настоящий момент можно утверждать, что практически каждая программа составляется с применением той или иной технологии программирования.
1. Теоретическая часть
Алфавит языка Паскаль составляют следующие символы:
1) буквы латинского алфавита A, B, C…;
2) буквы русского алфавита А, Б, В,…Я (кроме Ъ);
3) цифры 1,2,3,4,5,6,7,8,9;
4) знаки арифметических операций:
+ - сложение;
- - вычитание;
*- умножение;
/ - деление;
5) специальные символы:
. - точка;
, ? запятая;
; ? точка с запятой;
: ? двоеточие;
' - апостроф;
( ) - круглые скобки;
[ ] - квадратные скобки;
_ ?пробел;
{ } - фигурные скобки;
6) знаки операций:
> - больше;
< - меньше;
>= - больше или равно;
<= - меньше или равно;
= - равно;
<> - не равно;
:= - присвоить.
Из символов алфавита строят более сложные конструкции - слова, словосочетания, предложения. В языке Паскаль под словом понимают число, строку, имя. Минимальная конструкция языка, представляющая собой законченную мысль, есть предложение. Предложение либо задает полное описание некоторого действия, которое необходимо выполнить, и называется оператором, либо описывает структуру и организацию данных - объектов языка, над которыми эти действия производятся, и называется описанием. Совокупность описаний и операторов образует программу. Для того, чтобы научиться писать программы, необходимо изучить синтаксис языка (правила записи его конструкций) и его семантику (смысл и правила использования этих конструкций). В языке Паскаль существует некоторый набор служебных слов, назначение которых строго определено (зарезервировано) и которые не могут быть использованы с другой целью. Служебные слова используются, например, для обозначения операторов.
Массив - это упорядоченная совокупность значений одинакового типа, объединенная одним именем. Для того чтобы иметь возможность работать с каждым элементом массива, необходимо задать координаты этого элементам в общей структуре массива.
Если массив одномерный рис. 1 а, б, то для определения положения элемента достаточно задания номера ячейки. Выделенные ячейки имеют номера 3, 5, 7, а соответствующие элементы массива, если массив в целом обозначить буквой А, обозначаются соответственно, как A[3], A[5], A[7]. Одномерные массивы часто называют векторами.
Если массив двумерный, то для определения положения какого-либо элемента достаточно задания номера строки и столбца, на пересечении которых находиться рассматриваемый элемент. Так выделенные на рис. 1 в элементы массива имеют следующие обозначения B[1,1], B[1,4], B[5,2].
Файл представляет собой совокупность данных, в которой все данные должны быть одного типа. Необходимость в файлах возникает тогда, когда память (ОЗУ) мала для данных, и когда данные нужно сохранить. На первый взгляд файл похож на массив. Однако между массивом и файлом существует четкое различие. Одним из таких различий является то, что у массива с помощью индекса можно указать любой элемент. У файла же вызвать желаемые данные таким способом нельзя. Нагляднее всего файл представить в виде бумажного рулона, на котором одно за другим записаны данные. Читать данные, записанные таким образом можно только с начала, и по мере чтения следует перемещаться последовательно с одной записи на другую. Таким образом, после каждого обращения к файлу указатель файла автоматически смещается на следующую позицию (окно).
Файловый тип определяется в программе с помощью соответствующего описания:
TYPE <имя типа> = FILE <тип элемента>
Например, определение типов
CONST MAX = 80;
TYPE M=1. . MAX;
F = ARRAY [M] OF CHAR;
FF = FILE OF F;
задает файл FF, элементами которого являются массивы символов длинной M. Файловый тип можно определить и в разделе переменных:
VAR <имя файла>: FILE OF <тип элементов>;
Переменная, имеющая смысл файла, описывается в разделе переменных. Над файлами можно выполнять некоторые действия: запись (создание и пополнение файла) и чтение.
Операция записи добавляет к файлу новую компоненту. Новые элементы могут добавляться только к концу файла.
Рассмотрим некоторые процедуры, которые можно выполнять над файлами:
1) связь программного имени файла с дисковым именем файла
ASSIGN (F, `A: FILE. EXE');
F- программное имя файла;
A- имя диска;
FILE.EXE- дисковое имя и расширение (с этим расширением хранится на диске созданный файл).
2) открытие существующего файла на диске для чтение (файловое окно установится на начало файла)
RESET (F);
3) открытие нового файла на диске для записи (файловое окно устанавливается на начало файла)
REWRITE (F);
4) чтение из файла
READ (F, V);
V -имя переменной.
Через текущее окно считывается компоненты файла в переменную V. V имеет тип компоненты файла.
5) запись в файл
WRITE (F, V);
Записывается значение V в компоненту файла.
6) открытие файла и установка окна для добавления символов
в конец существующего файла
APPEND (F);
7) закрытие файла.
CLOSE (F);
Тип STRING (строка) в Паскале широко используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY [O . . N] OF CHAR, однако, в отличии от последнего, количество символов в строке - переменной может меняться от О до N, где N - максимальное количество символов в строке. Значение N определяется объявлением типа STRING [N] и может быть любой константой порядкового типа, но не более 255, например:
Const N = 25;
Type Stroka = String [n];
Var S: Stroka;
B: String [50];
C: String [230];
D: String [270]; Ошибка, 270>255
Разрешается не указывать N. В этом случае длина строки принимается максимально возможной, а именно N=255. Т.о. согласно описания
Var A: String; B: String [255];
переменные А и В могут содержать до 255 символов каждая.
2. Постановка задачи
Задание 1.
Разработать блок-схему и программу для вычисления переменной r, используя для ввода данных, операторы READ и READLN. Вывести значения исходных данных, подобрав к ним форматы по операторам WRITE и WRITELN. Значение переменной r вывести в стандартной форме.
b=-3 c=5,6 k=0,14 |
Задание 2.
Поменять в каждом столбце элементы главной и неглавной диагоналей
Задание 3.
Создать файл S, компонентами которого являются элементы массива T. Записать в файл X первые пять компонент файла S и сумму всех остальных. Прочитать файл X.
T=(0,2; 0,4; 6,1; 5,8; 4,9; 9,8; 7,1; 2,4;).
Задание 4.
Дан текст из букв и цифр. Определить, равна ли длина текста сумме числовых значений цифр, входящих в текст.
3. Руководство пользователя
Задание 1. Запускается программа program1. Вводятся значения b, c, k. После нажатия на Enter программа считает и выводит результат работы программы (рисунок В.1).
Задание 2. Запускается программа program2. С клавиатуры вводятся элементы матрицы А. Далее программа меняет местами элементы главной и побочной диагоналей и выводит результат на экран (рисунок В.2).
Задание 3. Запускается программа program3. Программа создаёт файл S, компонентами которого являются элементы массива Т.Далее программа создаёт файл Х в который заносит первые пять компонентов файла S и сумму остальных. Читает файл Х (рисунок В.3).
Задание 4.Запускается программа program4. Вводится предложение содержащее цифры. Программа считает количество символов и сравнивает их с суммой цифр в предложении (рисунок В.4).
4. Руководство программиста
Задание 1. Организация линейной программы.
В данной программе используются входные переменные b, c, k, промежуточные p, x, o и выходная r.
В таблице 1 приведены арифметические операции и функции, используемые в программе.
Таблица 1 - Арифметические операции и функции
Запись на языке Паскаль |
Выполняемые функции |
|
ABS(X) |
| X | |
|
COS(X) |
COS X |
|
EXP(X) |
ex |
|
LN(X) |
Ln x |
Задание 2. Массивы.
Входными параметрами являются элементы исходного массива А[i, j]. Выходными - элементы измененного массива. Выходной массив изменен путём замены в нем элементов главной и побочной диагоналей.
Задание 3. Обработка файловых структур данных.
Входные параметры: элементы массива Т, записанные в файл S.Исходным параметром является файл Х, элементами которого являются первые пять компонентов файла S и сумма всех остальных.
Для работы с файлами используются следующие основные процедуры и функции:
Assign (y, `Y') - связывает внешний файл, с файловой переменной.
Reset (y) - открывает существующий файл для чтения.
Rewrite (y) - создает и открывает новый файл.
Close (y) - закрывает открытый файл.
Так же используется функция:
Oef - возвращает состояние конца файла.
Задание 4. Строки в паскале.
В данной программе используется входная переменная s. Вводим произвольное предложение, содержащее цифры. Программа считает количество символов и сравнивает его с суммой цифр содержащихся в предложении.
Так же используются функции:
Length - возвращает в качестве значения длину строки.
Ord - возвращает порядковое значение выражения перечисляемого типа.
Inc - увеличивает число на определенное значение.
5. Анализ работы
Задание 1.
1. Даны значения b=-3, c=5.6, k=0.14 и формулы для расчета переменных p, x и o.
2. Найти по выше приведенным формулам переменную r.
Полученный результат совпал с результатом программы (рисунок В.1).
Задание 2.
Дана исходная матрица А:
1. Произведём замену элементов главной диагонали на элементы побочной диагонали:
Полученный результат совпал с результатом программы (рисунок В.2).
Задание 3.
1. Создается файл S, компонентами которого являются элементы массива Т:
2. Записываются в файл Х первые пять компонентов файла S и сумма всех остальных. Х=(0.2, 0.4, 6.1, 5.8, 4.9, 19.3)
Полученный результат совпал с результатом программы (рисунок В.3).
Задание 4.
Вводим произвольное предложение, содержащее цифры. Программа считает количество символов и сравнивает его с суммой цифр содержащихся в предложении:
Andrey7 содержит 7 символов и цифру 7. Количество символов равно сумме цифр значит условие выполняется.
Полученный результат совпал с результатом программы (Рисунок В.4).
Заключение
В данной курсовой работе были рассмотрены символьные, линейные, файловые структуры данных и массивы, их ввод, обработка на языке Pascal.
Согласно условиям поставленных задач в данной курсовой работе подробно разработаны руководство пользователя и руководство программиста.
Также были проанализированы результаты работы программы. Задачи, поставленные перед программистом, были успешно выполнены.
Разработка блок-схем решения поставленных задач осуществлена в приложении А.
Листинг программ приведен в приложении Б.
В приложении В представлены результаты работы программ.
Список использованной литературы
1. Абрамов В.Г., Трифонов Н.П. Введение в язык Паскаль. - М.: Наука 1988. - 320 с.
2. Абрамов С.А., Зима Е.В. Начала программирования на языке Паскаль. - М.: Наука, 1987. - 112 с.
3. Алтухов А.В., Жукова Т.А. Основы алгоритмизации и программирования - Шымкент: ЮКГИ им. М. Сапарбаева, 2007 г.
4. Бутомо И.Д., Самочадин А.В., Усанова Д.В. Программирование на алгоритмическом языке Паскаль. - Л.: Издательство Ленинградского университета, 1985. - 216 с.
5. Грэхем Р. Практический курс языка Паскаль. - М.: Радио и связь. 1986 - 200 с.
6. Йенсен К., Вирт Н. Руководство для пользователя и описание языка. - М., 1982. 151 с.
7. Пильщиков В.Н. Сборник упражнений по языку Паскаль. - М.: Наука, 1989. - 160 с.
8. ru.wikipedia.org/wiki/PascalABC.
Приложения
Приложение А (обязательное)
Блок-схемы
Рисунок А.1 - Блок-схема алгоритма программы (задание 1)
Рисунок А.2 - Блок-схема программы (задание 2)
Рисунок А.4 - Блок-схема программы (задание 3)
Рисунок А.5 - Блок-схема программы (задание 3)
Рисунок А.6 - Блок-схема программы (задание 3)
Рисунок А.7 - Блок-схема программы (задание 4)
Приложение Б (обязательное)
Листинг программ
Задание 1
Program ZADANIE1;
Uses crt;
Const PI=3.14;
Var r,o,p,x,b,c,k:real;
Begin
clrscr;
write('Введите b=');
readln(b);
write('Введите c=');
readln(c);
write('Введите k=');
readln(k);
p:=14.38E3+exp(1/3*ln(k-lg(ABS(k))));
x:=b+c;
o:=cos(2*PI/3*b);
r:=(o+p)/(x+exp(2*x)+18E3);
Writeln('Промежуточные');
Writeln('p=',p:3:3);
Writeln('х=',p:3:3);
Writeln('о=',p:3:3);
Writeln('Результат');
Writeln('r=',r:3:3);
readln;
end.
Задание 2
Program Zadanie2;
var A:array[1..4,1..4] of real;
i,j:integer;
N:real;
begin
for i:=1 to 4 do
for j:=1 to 4 do
begin
write('vvedite element A[',i,',',j,']:');
readln(A[i,j]);
end;
for i:=1 to 4 do
begin
N:=A[i,i];
A[i,i]:=A[i,4-i+1];
A[i,4-i+1]:=N;
end;
for i:=1 to 4 do
begin
for j:=1 to 4 do
begin
write(A[i,j],' ');
end;
writeln;
end;
readln;
end.
Задание 3
Program Zadanie3;
var X,S:file of real;
i:integer;
B:real;
T:array[1..8] of real;
begin
assign(X,'I:X.doc');
assign(S,'I:S.doc');
rewrite(S);
for i:=1 to 8 do
begin
write('vvedite element T[',i,']:');
readln(T[i]);
write(S,T[i]);
end;
reset(S);
rewrite(X);
B:=0;
for i:=1 to 5 do
begin
read(S,T[i]);
write(X,T[i]);
end;
while not eof(S) do
begin
read(S,T[i]);
B:=B+T[i];
end;
write(X,B);
reset(X);
writeln('sodergimoe faila X');
while not eof(X) do
begin
read(X,T[i]);
writeln(T[i]);
end;
close(X);
close(S);
end.
Задание 4
program laba4;
var s:string;
i,sum,k:integer;
begin
write('Text: ');readln(s);
for i:=1 to length(s) do
if s[i] in ['0'..'9'] then
begin
sum:=sum+ord(s[i])-ord('0');
inc(k);
end;
if sum=length(s) then writeln('Yslovie vupolnyaetsya')
else writeln('Yslovie ne vupolnyaetsya');
readln;
end.
Результаты работы программ
Рисунок В.1 - Результат работы программы (задание 1)
Рисунок В.2 - Результат работы программы (задание 2)
Рисунок В.3 - Вывод работы программы на экран (задание 3)
Рисунок В.4 - Вывод результата работы программы (задание 4)
Размещено на Allbest.ru
Подобные документы
Краткая характеристика интегрированной среды Turbo Pascal. Принципы программирования разветвляющихся алгоритмов, циклических структур, задач обработки символьных данных, множеств. Правила записи данных в текстовый файл. Понятие явной и косвенной рекурсии.
учебное пособие [1,5 M], добавлен 10.12.2010Создание программы для обработки структуры данных. Возможность ввода и записи данных на персональном компьютере. Прикладное программирование на языке Turbo Pascal. Свободное редактирование записанных данных с помощью программы, написанной на Turbo Pascal.
лабораторная работа [11,4 K], добавлен 13.05.2011Особенности разработки программ на языке Turbo Pascal на примере программы обработки массива данных с построением диаграммы. Функции программы и основные требования к ней. Состав входных и выходных данных. Использование предметной области "Садовод".
курсовая работа [789,1 K], добавлен 13.03.2013Запись в языке программирования – это структура данных, состоящая из фиксированного числа компонентов, называемых полями записи. Поле записи как обычная переменная. Операторы сравнения, присоединения. Программа с использованием массива структур.
реферат [11,5 K], добавлен 19.01.2009Строгая типизация и наличие средств структурного (процедурного) программирования императивного языка Pascal. Структура программы, выражения, строки. Правила и описание типов, процедур и функций, операторов ввода - вывода, модулей и подпрограмм.
курсовая работа [37,3 K], добавлен 28.06.2008Создание программного продукта на языке Pascal в визуальной среде программирования Borland Developer Studio в консольном приложении. Разработка типизированного файла для записи данных и их вывод на экран, добавление данных в конец файла, поиск информации.
курсовая работа [1,0 M], добавлен 04.12.2011Разработка программ на языке Turbo Pascal на основе использования массивов данных. Особенности хранения данных, способы объявления переменных, действия над элементами массивов, их ввод и вывод. Практическое применение одномерных и многомерных массивов.
методичка [17,8 K], добавлен 25.11.2010Проектирование программ в среде Рascal с интерфейсом типа "Меню". Разработка и отладка программы сортировки массива данных. Освоение методов проектирования Pascal-программ с использованием графических процедур и функций из стандартного модуля Graph.
контрольная работа [581,1 K], добавлен 16.01.2015Изучение функций и возможностей среды разработки языка программирования Pascal. Рассмотрение работы с одномерными и двумерными массивами, со строками и числами. Математическая формулировка задач. Разработка алгоритмов, описание структуры программ.
курсовая работа [879,8 K], добавлен 11.02.2016Информационные технологии и защиты данных. Методы защиты информации. Виды информационной безопасности и умышленные угрозы. Программирование на языке Turbo Pascal. Типы числовых данных. Функции ввода и вывода. Логические операторы, символьные переменные.
курсовая работа [1,7 M], добавлен 16.05.2016