Приоритет выполнения логических операций в Pascal.

Логические операции применяются при написании многих программ в Pascal. Все операции имеют определенный приоритет выполнения : Первой выполняется операция NOT. Второй выполняется операция AND. Последними выполняются операции OR и XOR (Они имеют ...

Abs, Sqr в Pascal.

Abs - функция языка Паскаль, которая вычисляет модуль числа.
Sqr - функция языка Паcкаль, которая возводит число в квадрат.

Логические операции And, Or, Not, Xor в Pascal.

Над переменными логического типа можно производить логические операции. В языке программирования Pascal существуют следующие логические операции : Andлогическое умножение, Orлогическое сложение, Notлогическое отрицание, Xor ...

Циклы и массивы

Сортировка одномерного массива. Метод пузырька.

Сортировка — перестановка местами объектов в определенном порядке. Известно несколько сотен алгоритмов сортировки и их модификаций.

Тип данных Boolean.

Тип BOOLEAN (булевский, логический). Логический тип в языке Паскаль задается как перечисляемый тип, содержащий всего два значения, которые имеют идентификаторы FALSE (ложь) и TRUE (истина).

Уроки Паскаль

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это функция Trunc, которая округляет дробное число до целого, отбрасывая дробную часть и функция Round, которая округляет дробное число до ближайшего целого.

Program number10;
uses crt;
var N,K: integer;
A,B: real;
begin
clrscr;
N:=4;
A:=3.6;
B:=N;
writeln('B=',B);
N:=Trunc(A);
writeln('Trunc(3.6)=',N);
K:=Round(A);
writeln('Round (3.6)=',K);
readln
end.

В строке №3 и №4 мы указали сразу 2 типа переменных. Для переменных N и K мы указали тип данных Integer, т.е. эти переменные могут принимать только целые значения в диапазоне от -32768 до 32767. Для переменных A и B мы указываем тип данных Real. Это вещественный тип данных, применяемый для переменных, которые могут принимать дробные значения в диапазоне от 2.9*10-39 до 1.7*1038. Обратите внимание, что переменные разных типов указываются в разделе описания переменных через точку с запятой.

В строке №7 присваиваем переменной «N» значение «4».

В строке №8 присваиваем переменной «A» значение 3,6. Учтите, что при записи дробного числа в программе между целой и дробной частью ставится точка (а не запятая как при обычной записи).

Строка №9. Здесь переменной вещественного типа B мы присваиваем значение переменной целого типа N. Фактически мы присвоили переменной «B» значение 4. Таким образом, получается, что в переменную типа Real можно записать значение переменной Integer (т.е. целое число). А вот записать вещественное число в переменную Integer нельзя. Если нам необходимо это сделать, то мы должны определить, что делать с дробной частью. И здесь есть 2 варианта.

Строка №11. Функция trunk говорит нам о том, что при записи вещественного числа A в переменную целого типа K, дробная часть будет отбрасываться. Таким образом, получится, что переменной N будет присвоено значение не «3.6» , а просто «3».

Строка №13. Функция Round говорит нам о том, что при записи вещественного числа A в переменную целого типа K , число будет округляться до ближайшего целого. Таким образом, получится, что переменной K будет присвоено значение не «3.6» , а «4».

trunc round

trunc round.

Обратите внимание, на формат вывода на экран вещественных чисел. Паскаль выводит дробные числа на экран в виде числа с плавающей точкой (экспоненциальная форма). Эта запись является неудобной, поэтому для приведения ее к нормальному виду прибегают к форматированию. Для форматирования нужно в строке №10 (вывод на экран) сделать такие изменения: writeln('B=',B:2:1). После переменной B мы через двоеточие записываем 2 числа. Первое число (в нашем случае «2») показывает, сколько всего знаков должно выводиться на экран, второе число («1») показывает количество знаков после запятой.
После внесения этих изменений в программу мы получим следующий результат:trunc round..



Дополнение к материалу.

Ниже приведена таблица значений для различных вещественных типов данных.

Типы Диапазон допустимых значений Число значащих цифр Размер в байтах
Real 2.9*10-39 .. 1.7*1038 11-12 6
Single 1.5*10-45 .. 3.4*1038 7-8 4
Double 5.0*10-324 .. 1.7*10308 15-16 8
Extended 3.4*10-4932 .. 1.1*104932 19-20 10
Comp -2*1063+1 .. 1.7*1063-1 19-20 8

Комментарии  

 
+3 # Паша 03.01.2013 16:41
А кол-во занимаемой памяти в байтах можно описать(имею ввиду последнюю таблицу)?
Ответить
 
 
+7 # Admin 17.04.2014 04:43
Добавлены столбцы: Число значащих цифр и Размер в байтах
Ответить
 
 
-13 # pirtec 23.12.2014 17:25
:-| :-| :-| :-| :-|
Ответить
 
 
-7 # Максим 11.03.2015 09:27
:D класс Спасибо но есть такая функция если есть хоть какой то остаток тогда мы +1 не подскажите какая )???
Ответить
 
 
-2 # Максим 11.03.2015 09:30
Просто если у меня например 3.123 тогда Round выдаст 3 а мене нужно 4 :-?
Ответить
 
 
-2 # 4mm0L3D 30.06.2015 19:38
Ясен пень 3. Даже чисто логически сокращая будет тройка, как ни крути.
Ответить
 
 
-5 # я 12.02.2016 10:20
добавь 1
Ответить
 
 
0 # Axbor 31.07.2016 08:23
Такого эффекта можно добится если прибавить этому числу 0.5 и воспользоваться функцией round. Например если ваше число равен 3.01 то при добавлении у вас получится 3.56 а round(3.51)=4, если же ваше число равен 3.99 то при добавлении 0.5 вы получите 4.49 и round(4.49)=4 думаю это то что вы хотели
Ответить
 
 
-6 # Дмитро 26.07.2015 08:43
А як округлити 3.5?
Ответить
 
 
-5 # Вова 27.02.2016 18:23
round
Ответить
 
 
-4 # #саша 02.10.2016 19:24
Тогда подскажите как можно решить задачу с помощью trunc : работа светофора запрограммирова на следующим образом в начале каждого часа в течении 3мин- горит зеленый затем 1мин- желтый 2мин-красный. И нам дано веществ. Число t обознач вр в мин прошедшее с начала часа и нужно ответить на вопрос какой свет горит в данный момент?
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальУроки Паскаль