Автор работы: Пользователь скрыл имя, 13 Ноября 2013 в 12:09, курсовая работа
Данная курсовая работа была разработана на языке программирования Pascal. Pascal является одним из самых распространенных в мире алгоритмических языков. Он характеризуется широкими возможностями, хорошо развитой библиотекой модулей, позволяющих использовать возможности операционной системы, создавать оверлейные структуры, организовывать ввод-вывод, форматировать графические изображения. Перед другими языками Паскаль имеет ряд преимуществ, такие как: краткость языка, легкость и простота процесса программирования, мобильность и компактность написанных программ, умение отлаживать программы.
ВВЕДЕНИЕ………………………………………………………………………3
ГЛАВА I. Типы данных………………………………………………………....5
2.1. Целые типы…………………………………………………...6
2.2. Вещественные типы……………………………………….….8
2.3. Логический тип………………………………………….…....11
2.4. Символьный тип……………………………………………….11
2.5. Строковый тип…………………………………………………12
ГЛАВА II. Разветвленный алгоритм……………………………………………14
1.1. Общее понятие ……………………………….………………..14
1.2.Виды разветвленного алгоритма ………………..……………16
ЗАКЛЮЧЕНИЕ……………………………………………………………………22
ЛИТЕРАТУРА………………………………………
В общем случае при выполнении любой операции операнды должны быть одного и того же типа, но целые и вещественные величины смешивать разрешается.
К вещественным величинам можно применять стандартные функции, перечисленные ниже:
Имя |
Описание |
Результат |
Пояснения |
abs |
модуль |
вещественный |
|x| записывается abs(x) |
arctan |
арктангенс угла |
вещественный |
arctg x записывается arctan(x) |
cos |
косинус угла |
вещественный |
cos x записывается cos(x) |
exp |
экспонента |
вещественный |
ex записывается exp(x) |
frac |
дробная часть аргумента |
вещественный |
frac(3.1) даст в результате 0.1 |
int |
целая часть аргумента |
вещественный |
frac(3.1) даст в результате 3.0 |
ln |
натуральный логарифм |
вещественный |
logex записывается ln(x) |
pi |
значение числа п |
вещественный |
3.1415926536 |
round |
округление до целого |
целый |
round(3.1) даст в результате 3 |
sin |
синус угла |
вещественный |
sin x записывается sin(x) |
sqr |
квадрат |
целый |
x2 записывается sqr(x) |
sqrt |
квадратный корень |
вещественный |
записывается sqrt(x) |
trunc |
целая часть аргумента |
целый |
trunc(3.1) даст в результате 3 |
2.3. Логический тип
Логический тип данных часто называют булевым по имени английского математика Д. Буля, создателя математической логики. В языке Турбо Паскаль имеются две логические константы TRUE (ПРАВДА) и FALSE (ЛОЖЬ). Логическая переменная принимает одно из этих значений и имеет тип Boolean. Величины этого типа занимают в памяти 1 байт. Внутреннее представление значения false - 0 (нуль), значения true - 1.
К величинам логического типа применяются логические операции and, or, xor и not. Они описаны ниже. Для наглядности вместо значения false используется 0, а вместо true - 1.
a |
b |
a and b |
a or b |
a xor b |
not a |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
Операция and - "логическое И", логическое умножение. Операция or - "логическое ИЛИ", логическое сложение. Операция xor - так называемое исключающее ИЛИ, или операция неравнозначности. Логическое отрицание not является унарной операцией.
Кроме этого, величины логического типа можно сравнивать между собой с помощью операций отношения: > , >= , < ,<= , = , <>(не равно).
2.4. Символьный тип
Символьный тип данных это тип char. служит для представления любого символа из набора допустимых символов. Под каждый символ отводится 1 байт. Значениями данного типа является множество всех символов компьютера: русская или латинская большая или маленькая буква, цифра, знак препинания, специальный знак (например, "+", "-", "*", "/", "", "=" и др.) или пробел " ". Каждый из символов имеет уникальный номер от 0 до 255, т. е. внутренний код, который возвращает функция ORD. Символьная константа или символьная переменная - любой символ языка, заключённый в апострофы.
К символам можно применять операции отношения (<, <=, >,>=, =, <>), при этом сравниваются коды символов. Меньшим окажется символ, код которого меньше.
Стандартных функций для работы с символами немного:
Имя |
Описание |
Результат |
Пояснения |
ord |
порядковый номер символа
|
целый |
ord('b') даст в результате 98 |
chr |
преобразование в символ |
символьный |
chr(98) даст в результате 'b' |
pred |
предыдущий символ |
символьный |
pred('b') даст в результате 'a' |
succ |
последующий символ |
символьный |
pred('b') даст в результате 'a' |
upcase |
перевод в верхний регистр |
символьный |
upcase('b') даст в результате 'B' |
2.5. Строковый тип
Строки в Паскале – это данные типа string. В Паскале длина стандартной строки ограничена 255 символами. Под каждый символ отводится по одному байту, в котором хранится код символа. Кроме того, каждая строка содержит еще дополнительный байт, в котором хранится длина строки.
Значением строковой величины является строка переменной длины (быть может пустая). Строковая константа или строковая переменная представляет собой произвольную последовательность символов, заключенную в апострофы.
Существует понятие пустой строки, т.е. строки, которая не имеет элементов. Пустая строка обозначается двумя рядом стоящими апострофами (например, st := '').
Строки можно присваивать друг другу. Если максимальная длина переменной слева меньше длины присваиваемой строки, то лишние символы справа отбрасываются.
Строки можно объединять с помощью операции конкатенации, которая обозначается знаком +.
…
s1 := 'John';
s2 := 'Black';
s1 := s1 + ' ' + s2;
…
К отдельному символу строки можно обращаться как к элементу массива символов, например s1[3]. Символ строки совместим с типом char, их можно использовать в выражениях одновременно, например:
…
s1[3] := 'h';
writeln (s2[3] + 'r');
…
Можно осуществлять коррекцию любого символа строковой переменной, для чего в соответствующем операторе достаточно указать имя переменной типа string, вслед за которым в квадратных скобках задается номер ее элемента (например, str[3]:='j').
ГЛАВА II. Разветвленный алгоритм
2.1. Общее понятие
Любой алгоритм можно составить из нескольких базовых структур. Простейшей из них является линейная (следование). В ней команды выполняются однократно в той последовательности, как они записаны. Однако далеко не всегда для решения задачи последовательность действий одна и та же при любых исходных данных. Если на каком-то этапе исполнитель должен выбирать один вариант из нескольких, в алгоритме используют ветвление.
Разветвленный алгоритм - алгоритм, содержащий хотя бы одно условие, в результате проверки которого может осуществляться разделение на несколько параллельных ветвей алгоритма.
Разветвленные алгоритмы
в своем составе содержат блок
условия и различные
В алгоритме разветвленной структуры (ветвлении) в зависимости от истинности или ложности некоторого условия выбирается одна из двух серий команд.
Если в программе есть ветвление, нужно:
Операции сравнения
При записи условий в языке Pascal можно использовать следующие операции сравнения:
Операция |
Обозначение |
Пример записи |
Равно? |
= |
d = 0 |
Больше? |
> |
x + y > 100 |
Меньше? |
< |
z < 5 * x |
Больше либо равно? |
>= |
sin(a) >= 0.5 |
Меньше либо равно? |
<= |
v <= 60 |
Не равно? |
<> |
y <> 0 |
Результатом операции сравнения всегда будет логическое значение — либо false (ложь), либо true (истина).
Логические операции
Нередко условие, требующее проверки, нельзя выразить с помощью единственного сравнения. Тогда используют составные условия, образующиеся с помощью логических операций. В языке программирования Pascal их три (в некоторых реализациях — четыре):
Операция |
Обозначение |
Результат |
Пример записи |
«И» |
and |
«истина», если истинны оба операнда (и первый, и второй) |
(x > -2) and (x < 2) |
«Или» (дизъюнкция) |
or |
«истина», если истинен хотя
бы один операнд (или первый, или второ |
(x < -2) or (x > 2) |
«Не» (инверсия) |
not |
«истина», если операнд ложен |
not (a > b) |
. Условие — это выражение логического типа, которое может принимать одно из двух значений: "истина" или "ложь". Простое условие состоит из двух выражений и знака сравнения между ними
2.2. Виды разветвленного алгоритма
Различают 2 алгоритма: с полным ветвлением и с неполным ветвлением.
В первом случае, действия определены и в случае истинности условия, и в случае ложности. А во втором - действия определены либо в случае истинности условия, либо в случае ложности.
Алгоритм с полным ветвлением
полная
условие
да нет
Действие1
Действие2
Если условие истинно,
то выполняется действие 1,
иначе выполняется действие 2.
IF условие
THEN действие 1
ELSE действие 2;
Алгоритм с неполным ветвлением
Если условие
истинно,
то выполняется действие 1.
В случае неполной развилки:
команда ELSE и серия команд 2 в записи отсутствуют:
неполная
условие
да нет
Действие1
Пример 1. Дано число a. Если а=2, то с=а+2, иначе с=а-2.
Var a,b:integer;
Begin
Readln(a);
If a=2 then c:=a+2
Else c:=a-2;
Writeln(c);
End.
Пример 2. Дано квадратное уравнение. Вывести, имеет ли корни уравнение.
var a, b, c, d: real;
begin
readln(a, b, c);
d := b * b - 4 * a * c;
if d < 0 then writeln('корней нет')
else writeln('корни есть');
end.
Пример 3. Даны два числа X и Y. Вывести на экран наибольшее из заданных чисел.
PROGRAM maximum;
VAR x, y, m: integer;
BEGIN
WRITELN(‘введите числа х и у’);
READLN (x,y);
IF x>y
THEN m:=x
ELSE m:=y;
WRITELN (‘наибольшее’,m);
END.
Пример 4. Дано число S. Если число S>=0, то вывести корень из этого числа, иначе умножить S на 2.
Информация о работе Основные типы данных. Разветвленный алгоритм»