КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Математика. Запись арифметических выраженийЕсли вы - школьник не самых старших классов, то не все, что здесь написано, будет вам понятно. Не огорчайтесь, при дальнейшем чтении непонятные вещи вам не понадобятся. В правой части оператора присваивания и в операторе WriteLn мы записывали выражения, имеющие численное значение (например, a+b-8). Такие выражения называются арифметическими. В будущем мы увидим, что выражения могут быть не только арифметическими. А сейчас рассмотрим математические возможности Паскаля. Четыре действия арифметики (и еще два) обозначаются в Паскале следующим образом:
На уроках математики мы привыкли писать ab+cd , подразумевая: a умножить на b плюс c умножить на d. В Паскале это выражение мы обязаны писать так: a*b+c*d. Иначе компьютер подумает, что нужно к переменной, имеющей имя ab, прибавить переменную, имеющую имя cd. Во избежание двусмысленности знак умножения положено писать всегда. Например, a * (b+c). Скобки. Ввиду того, что с клавиатуры всю информацию приходится вводить символ за символом в одну строку, ввод двухэтажных выражений, таких как , очень затруднен. Поэтому для обозначения деления и выбрана косая черта. Это выражение на Паскале положено записывать так: (a+1)/(b+1). Если бы мы не поставили скобок, то выражение получилось бы таким a+1/b+1, а это неправильно, так как компьютер, как и мы, всегда перед сложением и вычитанием выполняет умножение и деление, поэтому в последнем случае он бы сначала разделил 1 на b , а затем к результату прибавил a и 1. Вопрос: когда в выражениях можно ставить скобки? Ответ: всегда, когда у вас возникают сомнения в правильной очередности действий. Лишняя пара скобок не помешает. Пример: записать на Паскале выражение: Его можно было бы записать так: (1 + a / (2+a*b)) / (3+a) * b . Однако, при такой записи мы не знаем, что Паскаль будет делать раньше - делить (1 + a / (2+a*b)) на (3+a) или умножать (3+a) на b. А от этого зависит результат. Добавим для верности пару скобок: ((1 + a / (2+a*b)) / (3+a)) * b . Теперь все в порядке. К сожалению, в выражениях разрешается писать только круглые скобки. Квадратные и фигурные запрещены. От этого сложные выражения с большим количеством скобок на глаз воспринимаются с трудом, так как трудно для конкретной скобки увидеть ее законную пару. В этом случае я могу посоветовать идти "от малого к большому", то есть сначала заметить самые малые из взятых в скобки фрагменты выражения (у нас это 3+a и 2+a*b). После этого будет уже легче заметить более крупные фрагменты, такие как 1 + a / (2+a*b) , и т.д. Запись десятичных дробей. Почти во всех языках программирования и уж, конечно, в Паскале, в десятичных дробях принято вместо запятой ставить точку. Пример: 62.8 - шестьдесят две целых восемь десятых. Математические функции. Кроме четырех действий арифметики Паскаль может выполнять и другие математические действия, например, возведение в квадрат, для чего имеется специальная функция - Sqr. На уроке математики мы обозначаем показатели степени маленькими цифрами и буквами. На компьютере такие цифры и буквы вводить не всегда возможно, поэтому в Паскале принято другое обозначение. Например, пять в квадрате обозначается так - Sqr(5), a+b в квадрате так - Sqr(a+b). Здесь Sqr - сокращение от английского слова square - квадрат. То, что нужно возвести в квадрат, записывается в скобках. Приведу неполный список математических функций Паскаля:
Кроме этого, имеются функции sin, cos, arctan, exp, ln и процедура Randomize. К сожалению, в Паскале нет специальной функции для возведения в произвольную степень. Примеры: Выражение Sqr(2+1) при вычислении даст 9 Задание 11: Определите без компьютера, что напечатает данная программа: VAR a,b: Integer;
|