Операции сравнения
| Основы программирования Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее. |
Ещё один из самых распространённых типов операций — это операции сравнения. Эти операции постоянно используются в программах, потому что программы не только выполняют какие-то вычисления, но и проделывают массу других штучек. В частности, выполняют операции сравнения, то есть сравнивают что-то с чем-то.
Давайте вспомним пример программы из предыдущего урока. там мы создали простой калькулятор, который выполнял три действия над двумя числами: сложение, вычитание и умножение.
Однако я намеренно не включил сюда операцию деления. Как вы думаете, почему? Кто-то, быть может, решит, что причиной является использование целых чисел. Ведь в Паскале они не делятся обычным способом. Но на самом деле причина не в этом.
Я не стал использовать операцию деления, потому что пользователь в качестве делителя может ввести число 0. А на ноль, как известно, делить нельзя. Поэтому программа завершится с ошибкой, и пользователь будет очень недоволен.
Как быть? Напрашивается простое решение — проверить значение второго числа, которое вводит пользователь. И если это число равно нулю, то не выполнять операцию деления.
Как сделать такую проверку программно? Да очень просто — выполнить операцию сравнения. То есть сравнить число с нулём.
В таблице 15.3 приведены операции сравнения, которые допускается использовать в языке Free Pascal.
Таблица 15.3. Операторы сравнения Free Pascal.
Оператор | Операция |
= | Равно |
<> | Не равно |
Больше чем | |
= | Больше или равно |
in | Входит в |
Все эти операции сравнения известны вам из школьного курса математики. Только некоторые операторы в Паскале обозначаются немного иначе. Единственный непонятный для вас оператор — это оператор in. Но о нём мы пока забудем. И вспомним, когда будем изучать сложные типы данных.
как в программе использовать операторы сравнения?
Более подробно мы будем изучать это в следующих уроках. А сегодня я расскажу вам только об одной языковой конструкции Паскаля
Если вы знаете английский язык, то вы уже должны догадаться, что сие значит. Ну а если нет, то я поясню по-русски. Итак, эта конструкция работает так:
А теперь попробуем доработать программу из предыдущего урока и добавить в неё операцию целого деления. Добавленный код будет выглядеть так:
Здесь мы сначала проверяем значение переменной у. Если это значение равно нулю, то мы выводим сообщение об ошибке. Иначе, то есть если переменная у имеет любое другое значение (не ноль), мы выполняем операцию целого деления и выводим результат.
Доработайте программу из предыдущего урока. Добавьте в неё операцию целого деления. проверьте работоспособность программы.
замените оператор = на оператор <>. Посмотрите, что получится, если ввести в качестве второго числа 0. Доработайте программу таким образом, чтобы она правильно работала с выражением
Поэкспериментируйте с другими операторами сравнения.
Источник статьи: http://info-master.su/programming/kurs/comparison-operations.php
Язык паскаль онлайн
Математические операции в паскале – Pascal Математические функции для работы с числами
Многие начинающие программисты задаются подобный вопросом : «Какие операции можно совершать с числами в языке программирования паскаль ?». В данном уроке мы подробно ответим на этот вопрос.
Арифметические операции
Начнем , пожалуй , с самого простого — арифметические операции с числами в паскале. В паскаль встроены многие привычные нам арифметические операции ( Сложение , вычитание , умножение , деление и т.п ).
Как же осуществляются подобные операции с числами ?. Давайте разберем это на примере исходника одной программы.
Результатом выполнения данной программы будет вывод на экран трех чисел 14 7 2 . Разберемся в том , как это работает.
В начале программы мы объявляем 2 целочисленные ( integer ) переменные «a» и «b» , а также 1 переменную «c» вещественного ( real ) типа. Подробнее прочитать о переменных в паскаль и их типах здесь.
Зачем нам нужна вещественная переменная ? Для записи результата деления целочисленная переменная не подходит , так как у нас получается дробь , а не целое число.
Теперь мы присваиваем переменной «a» значение 7 , а переменной «b» значение 3
. Переменную «c» при этом оставляем нулевой ( она нам пока не понадобится ).
Далее (в блоке begin end) мы расписываем арифметические операции с нашими числами. Обратите внимание на то , что после символов // идет комментарий , который не компилируется программой.
Запомните : Строка a:= a — b; выглядит так a:= 7 — 4; , а не так 7:= 7 — 4;
Другие операции с числами
В паскале предусмотрены и многие другие операции с числами. Давайте разберем самые популярные из них.
1. Как найти квадрат числа в паскале ?
Для нахождения квадрата числа в паскале предусмотрена функция sqr(x) , где x — число.
Пример :
Результат : переменной «а» присваивается значение 25.
2. Как найти корень числа в паскале ?
Для нахождения корня числа в паскале предусмотрена функция sqrt(x) , где x — число.
Пример :
Результат : переменной «а» присваивается значение 5.
3. Как округлить число в паскале ?
Для того , чтобы округлить некоторое число используется операция round(x).
Пример :
4. Как убрать дробную часть у числа в паскале ?
Для того , чтобы отбросить дробную часть числа используется операция trunc(x).
Пример :
Результат : переменной «а» присваивается значение 25.
5. Как убрать целую часть у числа в паскале ?
Для того , чтобы отбросить целую часть числа используется операция frac(x).
Пример :
Результат : переменной «а» присваивается значение 0.2.
6. Как получить модуль числа в паскале ?
Чтобы получить модуль некоторого числа используется операция abs(x).
Пример :
Результат : переменной «а» присваивается значение 8.
Это были самые важные и часто используемые операции в паскале для работы с числами ( переменными ). Найти другие вы можете на этой странице.
Выводы :
Для работы с числами в паскале предусмотрено множество различных операций. Мы можем делать с числами все , что угодно ( складывать , умножать , возводить в квадрат и т.п ).
Этот раздел содержит описание математических операций, которыми можно пользоваться в выражениях на языке Паскаль. Вывести результат вычисления выражения можно такой нехитрой программе:
Конечно, результат вычисления выражения можно и записать в переменную для дальнейшего использования, и передать в другую функцию.
Не все операции и действия в этом разделе будут вам понятны. Ничего страшного — просто помните, что сюда можно вернуться, когда вам что-то понадобится.
Математические операции
В Паскале, как и в большинстве языков программирования, несколько специфически передаются основные математические операции — так математические выражения надо записывать в одну строку, а не в несколько уровней, как принято в классической математической нотации. Это достигается значительно более массовым использованием скобок, что иногда огорчает начинающих. Также всегда нужно писать знак умножения *. Кроме того, параметры функций всегда должны быть в скобках. Например:
Математическое выражение | Запись на языке Паскаль |
2+2=4 | 2+2=4 |
a*(1+sqr(e))/2 | |
(-b+sqrt(sqr(b)-4*a*c))/(2*a) | |
exp(2*x+y) | |
abs(cos(x)*sin(x)*cos(y)/tan(y)) если компилятор не поддерживает Tan. |
Базовая арифметика
Название операции | Оператор | Пример | Примечание |
Добавление | + | 2+2 (=4) | |
Вычитание | — | 18.3-11 (=7.3) | |
Умножение | * | 7*8 (=56) | |
Деление | / | 7/8 (=0.875) | Результат всегда действительного типа (real) |
Целая часть деления | div | 7 div 2 (=3) | |
Остаток от деления | mod | 7 mod 2 (=1) |
Сравнение
Все операции сравнения возвращают значение типа boolean, то есть могут использоваться в операторах ветвления и циклах, например
Название операции | Оператор | Пример | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Равно | = | 2+2=4 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Не равно (?) | <> | 2+2<>5 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Больше | > | 72>71.99 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Больше или Равно | >= | x*x>=0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Меньше | Функции для преобразования действительных и целых чисел Паскаль — язык программирования со статической сильной типизацией. Это означает, что компилятор не выполняет преобразований значений между типами, которые могут привести к потере информации; в частности, если подставить в конструкцию, предусматривает целое значение, действительное число, компилятор сообщит об ошибке, даже если это число имеет целое значение. Так, как мы видели выше, 13 and 11 равна 9, но выражение 13.0 and 11 вызовет сообщение компилятора об ошибке! Чтобы избежать этого, надо явно задавать преобразования действительного числа на целое с помощью следующих функций:
Логические и побитовые операцииЛогические операции используются для объединения нескольких логических условий в одну.
Логические операторы, применены к целым типов, могут использоваться, как побитовые. Чтобы получить результат побитовой операции, надо представить операнды в двоичной системе (так, как они представлены в компьютере), после чего применить соответствующую операцию в соответствующих разрядов, причем 1 означает true 0 — false. так,
Кроме того, есть еще две побитовых операции сдвига:
Алгебраические функцииCерым обозначены функции, которые не поддерживаются в Turbo Pascal
Примечание: корень степени Y из числа X можно представить как X 1 / Y, и, соответственно, как Power (X, 1 / Y) или в Turbo Pascal как Exp (Ln (X) / Y). Тригонометрические функцииТригонометрические функции используют значения углов в радианах , будьте внимательны!
Функции для работы со случайными величинамиДля имитации случайных процессов в Паскале есть генератор псевдослучайных чисел (ГПВЧ) и функции для работы с ним; такие числа достаточно непредсказуемыми для практического использования (то есть каждое последующее использование функции Random даст какой-то мере неожиданный результат), но их последовательность может быть полностью воспроизведена, если установить начальное значение ГПВЧ.
Функции для работы со сочтеными типамиДля величин сочтеных типов (все цели, буквенный, логическое и перечни) существуют также несколько удобных стандартных функций и процедур:
Приоритет операцийВо время разбора математического выражения Паскаль сначала выполняет операции с высоким приоритетом, затем с низким, все справа налево. Так, в выражении 2 + 2 * 2 сначала будет вычислено 2 * 2 = 4, а уже затем 2 + 4 = 6 — так же, как в обычной математике; в выражении 10 mod 2 * 3 сначала будет выполнено 10 mod 2 = 0, а уже потом 0 * 3 = 0! Источник статьи: http://mypascal.ru/blog/chisla-v-paskale/ Подписаться авторизуйтесь 0 Комментарий Старые |