Главная
Простейшие операторы
Операторы условия
Циклы
Массивы
Массивы II
Строки
Функции I
Функции II

Математические операторы

Математическими операторами мы уже пользовались: в предыдущем уроке мы складывали текстовые строки для вывода их на экран. ("Текст" + переменная + "текст"). С числами все почти что также. Вот перечень доступных операторов:
+ сложение
- вычитание
* умножение
/ деление
% остаток от деления
Пример:

<script>
alert(23+34);
alert(23-34);
alert(23*34);
alert(23/34);
alert(34 % 23);
</script>

Но складывать одни только числа было бы глупо. Поэтому рассмотрим пример программы, которая вычисляет площадь прямоугольника со сторонами, определяемыми пользователем.

<script>
a=prompt("Введите ширину прямоугольника","");
b=prompt("Введите высоту прямоугольника","");
</script>

Ну до этих пор, все уже было понятно. Осталось только вывести на экран произведение числа a на число b. Однако не все так просто. Дело в том, что, по умолчанию, переменные определяемые с помощью метода prompt являются текстовыми строками. Чтобы превратить их в числа следует использовать другой оператор - Number()

<script>
a=prompt("Введите ширину прямоугольника","");
b=prompt("Введите высоту прямоугольника","");
alert("Площадь такого прямоугольника равна " + Number(a)*Number(b) + " единиц площади");
</script>

 Объекты

Объекты позволяют получить дополнительный набор операторов. Объектов не один и не два, знакомиться с ними будем последовательно. Начнем с объекта Math. Этот объект предоставляет дополнительный набор математических операторов. Вот наиболее распространенные:

  • LN2; LN10: LOG2E; LOG10E - различные логарифмы
  • E; PI - число e и число π соответственно
  • SQRT2; SQRT1_2 - корень квадратный из двух и 0,5 соответственно

Все предыдущие опретаторы набираются как-нибудь так:

<script>
alert(Math.LN10);
a=Math.E;
alert(a);
</script>
  • sin(); cos(); tan(); asin(); acos(); atan() - синус, косинус, тангенс, арксинус, арккосинус, арктангенс
  • abs() - модуль числа
  • sqrt() - квадратный корень числа
  • pow() - степень числа (в скобках через запятую основание и показатель степени)
  • exp() - экспонента числа
  • log() - логарифм числа
  • random() - псевдослучайное число
  • round() - округление числа
  • ceil() - округление по избытку
  • floor() - округление по недостатку (целая часть от деления двух целых чисел)
  • max() - максимальное значение из тех чисел, которые через запятую перечислены в скобках
  • min() - минимальное значение из тех чисел, которые через запятую перечислены в скобках

А в этих операторах следует не забывать про скобки.

 Упражнение 3
Модифицируйте предыдущую программу, чтобы она вычисляла площадь не прямоугольника, а треугольника по теореме Герона (√p(p-a)(p-b)(p-c)). Напоминаем, что корень запишется, как Math.sqrt().
 

Определение типа переменной

Немаловажным является оператор определения типа переменной - typeof(). Рассмотрите его и кликните на нижеследующем коде:

<script>
var a1="Text", a2=14, a3=7>5, a4=false, a5;
alert("Type of a1 is "+typeof(a1));
alert("Type of a2 is "+typeof(a2));
alert("Type of a3 is "+typeof(a3));
alert("Type of a4 is "+typeof(a4));
alert("Type of a5 is "+typeof(a5));
alert("Type of a6 is "+typeof(a6)); </script>

Упражнение 4
Math.random() дает псевдослучайное число в диапазоне от 0 до 1. Подумайте как составить генератор псевдослучайных чисел в диапазоне от 1 до 100.

[В начало]
Hosted by uCoz