Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема№24 Арифметические и логические операции и их приоритет




Тема№23 Текстовые файлы. Процедуры и функции для работы с ними

 

Работа с текстовыми файлами

 

Текстовый файл - это совокупность строк, разделенных метками конца строки. Сам файл заканчивается меткой конца файла. Доступ к каждой строке возможен лишь последовательно, начиная с первой. Одновременная запись и чтение запрещены.

 

Чтение из текстового файла:

 

Read(f, список переменных);

ReadLn(f, список переменных);

Процедуры читают информацию из файла f в переменные. Способ чтения зависит от типа переменных, стоящих в списке. В переменную char помещаются символы из файла. В числовую переменную: пропускаются символы-разделители, начальные пробелы и считывается значение числа до появления следующего разделителя. В переменную типа string помещается количество символов, равное длине строки, но только в том случае, если раньше не встретились символы конца строки или конца файла. Отличие ReadLn от Read в том, что в нем после прочтения данных пропускаются все оставшиеся символы в данной строке, включая метку конца строки. Если список переменных отсутствует, то процедура ReadLn(f) пропускает строку при чтении текстового файла.

 

Запись в текстовый файл:

 

Write(f, список переменных);

WriteLn(f, список переменных);

Процедуры записывают информацию в текстовый файл. Способ записи зависит от типа переменных в списке (как и при выводе на экран). Учитывается формат вывода. WriteLn от Write отличается тем, что после записи всех значений из переменных записывает еще и метку конца строки (формируется законченная строка файла).

 

Добавление информации к концу файла:

 

Append(f)

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

 

 

 

Приоритет операции Условный знак Выражение Название операции Тип переменных в выражении Тип результата выполнения опрации

ЛОГИЧЕСКИЕ ОПЕРАЦИИ

1 not not A Логическое "не" Логический целый Логический целый

2 and A and b Логическое "и" Логический целый Логический целый

3 or A or B Логическое "или" Логический целый Логический целый

3 xor A xor B Логическое исключающее "или" Логический целый Логический целый

МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ

2 * x*y Умножение Целый Целый при умножении

2 / x/y Деление Смешанный вещественный Целых чисел, иначе вещественный

2 div N div M Деление Цлый Целый

2 mod N mod M Остаток от деления Целый Целый

3 + x + y Сложение Целый вещественный Целый при операции с целыми числами, иначе вещественный

ОПЕРАЦИИ СРАВНЕНИЯ

4 = x=y Равно Число=число Логический

4 <> X<>y Не равно Строка=символ Логический

4 > x>y Больше Строка=символ Логический

4 < x Меньше Строка=символ Логический

4 >= x>=y Больше или равно Строка=символ Логический

4 <= x<=y Меньше или равно Строка=символ Логический

 

Отметим, что операции в скобках имеют высший приоритет, т. е. сначала выполняются операции в скобках, в том числе вычисление аргументов и значения функции. Операции одинакового приоритета выполняются слева направо, например a/c*b соответствует (a/c)*b.

 

Приоритет операции Условный знак Выражение Название операции Тип переменных в выражении Тип результата выполнения операции

СПЕЦИФИЧЕСКИЕ ОПЕРАЦИИ

1 @ @x Адрес переменной Любой Указатель

2 ch1 y ch1 n Сдвиг влево Целый Целый

2 shr y chr n Сдвиг вправо Целый Целый

2 * c * D Пересечение Множество Множество

3 + c + d Обьединение Множество Множество

3 - c - d Вычитание Множество Множество

3 + s + t Сложение Строка, символ Строковый

4 in e in d Вхождение в множество Элемент множество Логический

 

Под смешанным типом переменных в выражении подразумевается операция с целым и вещественным типом переменных.

Стандартные математические функции и процедуры Турбо-Паскаля

 

Наименование Функции Тип аргумента Тип значения Результат вычесления

МАТЕМАТИЧЕСКИЕ ФУНКЦИИ

abs(x) Целый вещественный Целый вещественный Абсолютное значение "x"

sin(x) Вещественный Вещественный Синус"x"рад

cos(x) Вещественный Вещественный косинус"x"рад

arctan(x) Вещественный Вещественный арктангенс "х" (-Pi/2 < y < td)< 2 Pi>

Sqrt(x) вещественный вещественный квадратный корень из "х"(Ц х, где x > 0)

Sqr(x) Целый вещественный Целый вещественный значение "х" в квадрате (х2)

Exp(x) вещественный вещественный значение "е" в степени "х" (ех, где e= 2. 718282...)

Ln(x) вещественный вещественный натуральный логарифм "х" (х > 0)

Frac(x) вещественный вещественный дробная часть "х"

Int(x) Вещественный Вещественный целая часть "х"

Random - вещественный случайное число (0 < =y< 1)

Random(x) Word Word случайное число (0 < =y< x)

Succ(c) Порядковый Порядковый следующий за "с" символ

Pred(c) Порядковый Порядковый предшествующий "с" символ

 

Наименование процедуры Тип аргумента Тип значения Результат вычесления

МАТЕМАТИЧЕСКИЕ ПРОЦЕДУРЫ

Inc(x) целый целый Увеличивает "х" на 1 (x:=x+1;)

Dec(x) целый целый Уменьшает "х" на 1 (x:=x+1;)

Inc(x, n) целый целый Увеличивает "х" на n (x:=x+1;)

Dec(x, n) целый целый Уменьшает "х" на n (x:=x+1;)

ПРОЦЕДУРЫ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ

Str(x, s) x-целый или вещественный s-строковый Последовательность символов "s"из цифр числа "x"

Val(s, v, cod) s-строковый v-целый или вещественный cod- целый Двоичная форма числа "v"последовательности "s" cod=0 (код ошибки)

ФУНКЦИИ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ

Trunc(x) вещественный LongInt целая часть "х"

Round(x) вещественный LongInt округление "х" до целого

Odd(x) целый логический возвращает True если "х" - нечетное число

Сhr(x) Byte Char Символ ASCII кода "х"

Ord(c) Char Порядковый Byte LongInt ASCII код символа "с" Порядковый номер символа "с"

 

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

 

При вызове функция возвращает значение, которое необходимо присвоить переменной. Например, запись Y:= Sin(x); позволяет вычислить значение синуса угла "х", которое при-сваивается переменной "Y". Функции имеют высший приоритет, т. е. в выражении сначала вычисляется значение функции, а затем выполняются другие операции. Например: в выра-жении Y:= 5 * Cos(Pi + x); сначала вычисляется значение аргумента, затем значение функ-ции, которое умножается на пять.

 

При вызове процедура производит определенные действия и может возвращать значения параметров. Процедура может не иметь параметров, например, для инициализации распре-деления случайных чисел вызывается процедура Randomize;. Процедуры могут включать па-раметры, которые необходимо задать при вызове процедуры и параметры, которые возвра-щают значения после выполнения процедуры. Например, при вызове процедуры Str(x, s); параметр "x" должен быть задан, а параметр "S" возвращает строковый вид числа "x". В не-которых процедурах параметры изменяют свое значение, Например, процедура Inc(x); уве-личивает значение "x" на единицу, т. е. возвращает новое значение "x", что соответствует оператору x:=x+1; Таким образом, при вызове процедуры необходимо знать назначение и тип задаваемых параметров.

 




Поделиться с друзьями:


Дата добавления: 2015-04-24; Просмотров: 572; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.