Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornaya_rabota_4.doc
Скачиваний:
12
Добавлен:
27.11.2019
Размер:
231 Кб
Скачать
☆

Объект Math

Объект Math содержит основные математические константы и стандартные математические функции. Наиболее часто используемые приведены в таблице:

Матем. ф-ция

Синтаксис

Результат

E

Math.E

Значением свойства E является основание натуральных логарифмов e, которое приблизительно равно 2.718281828459045.

LN10

Math.LN10

Значением свойства LN10 является натуральный логарифм числа 10 (ln 10), который приблизительно равен 2.302585092994046

LOG10E

Math.LOG10E

Значением свойства LOG10E является десятичный логарифм числа e (lg e), который приблизительно равен 0.4342944819032518

LOG2E

Math.LOG2E

Значением свойства LOG2E является двоичный логарифм числа e (log2e), который приблизительно равен 1.4426950408889634

PI

Math.PI

Значением свойства PI является число π (отношение длины окружности к диаметру круга), которое приблизительно равно 3.1415926535897932

SQRT1_2

Math.SQRT1_2

Значением свойства SQRT1_2 является квадратный корень из 1/2, который приблизительно равен 0.7071067811865476

SQRT2

Math.SQRT2

Значением свойства SQRT2 является квадратный корень из 2, который приблизительно равен 1.4142135623730951

abs

Math.abs(число)

Аргументы: число — числовое выражение Результат: числовое значение Метод abs возвращает абсолютную величину числа

acos

Math.acos(число)

Аргументы: число — числовое выражение Результат: числовое значение. Метод acos возвращает арккосинус числа. Если число находится в диапазоне от -1 до 1 включительно, то результат находится в диапазоне от 0 до π. В противном случае результат равен NaN.

asin

Math.asin(число)

Аргументы: число — числовое выражение Результат: числовое значение. Метод asin возвращает арксинус числа. Если число находится в диапазоне от - 1 до 1 включительно, то результат находится в диапазоне от -π/2 до +π/2. В противном случае результат равен NaN.

atan

Math.atan(число)

Аргументы: число — числовое выражение Результат: числовое значение Метод atan возвращает арктангенс числа. Результат находится в диапазоне от -π/2 до +π/2.

atan2

Math.atan2(число1, число2)

Аргументы: число1, число2 — числовые выражения Результат: числовое значение. Метод atan2 возвращает арктангенс частного от деления числа1 на число2. Результат находится в диапазоне от -π до +π и соответствует величине угла в радианах между осью абсцисс и вектором до точки с координатами (число2, число1).

ceil

Math.ceil(число)

Аргументы: число — числовое выражение Результат: числовое значение. Метод ceil возвращает наименьшее целое число, большее или равное числа.

cos

Math.cos(число)

Аргументы: число — числовое выражение Результат: числовое значение Метод cos возвращает косинус числа. Результат находится в диапазоне от -1 до +1.

exp

Math.exp(число)

Аргументы: число — числовое выражение Результат: числовое значение Метод exp возвращает экспоненту числа (e число, где е — основание натуральных логарифмов). Если число больше 709.78, то возвращается Inifinity.

floor

Math.floor(число)

Аргументы: число — числовое выражение Результат: числовое значение. Метод floor возвращает наибольшее целое число, меньшее или равное числа.

log

Math.log(число)

Аргументы: число — числовое выражение Результат: числовое значение. Метод log возвращает натуральный логарифм числа. Если число отрицательно, то возвращается NaN.

max

Math.max(число1, …, числоN)

Аргументы: число1, …, числоN — числовые выражения Результат: числовое значение. Метод max возвращает наибольшее из значений своих аргументов. Если аргументы не заданы, то он возвращает -Inifinity.

min

Math.min(число1, …, числоN)

Аргументы: число1, …, числоN — числовые выражения. Результат: числовое значение. Метод min возвращает наименьшее из значений своих аргументов. Если аргументы не заданы, то он возвращает Inifinity.

pow

Math.pow(число1, число2)

Аргументы: число1, число2 — числовые выражения. Результат: числовое значение. Метод pow возвращает число1, возведенное в степень число2 (число1число2).

random

Math.random()

Результат: числовое значение. Метод random генерирует случайное число в диапазоне от 0 включительно до 1 исключительно.

round

Math.round(число)

Аргументы: число — числовое выражение. Результат: числовое значение. Метод round округляет число до ближайшего целого числа и возвращает его.

sin

Math.sin(число)

Аргументы: число — числовое выражение. Результат: числовое значение. Метод sin возвращает синус числа. Результат находится в диапазоне от -1 до +1.

sqrt

Math.sqrt(число)

Аргументы: число — числовое выражение. Результат: числовое значение. Метод sqrt возвращает квадратный корень из числа. Если число отрицательно, то возвращается NaN.

tan

Math.tan(число)

Аргументы: число — числовое выражение. Результат: числовое значение. Метод tan возвращает тангенс числа.

Набор математических функций JavaScript позволяет решать довольно большой спектр задач, но злоупотреблять этим не стоит. Не забывайте, что код исполняется интерпретатором, а вот о низкоуровневой оптимизации вычислений нет и речи, следовательно, высокого быстродействия добиться будет очень сложно. Чаще всего математика на сайтах используется для создания различных калькуляторов или расчёта положения элементов интерфейса.

Задание 1. Проверьте работу сценария вычисления модуля разницы двух заданных чисел.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>z1</title>

</head>

<script language="javascript">

var a=5.3;

var b=2.6;

var c=Math.abs(b-a)

document.write (c)

window.document.write("c=",c)

</script>

<body>

</body>

</html>

Задание 2. Введите сценарий вычисления полусуммы двух чисел и работы со срочными величинами. Обратите внимание на использование тегов внутри сценария. Внесите изменения: измените шрифт, размеры и цвет линий, Добавляйте выведения своей фамилии через свойство документа document.write (используйте слой и встроенные стили).

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>z2</title>

</head>

<body>

<script language="javascript">

var a=5.3;

var b=2.6;

var c,d;

c=a+b;

d=c/2;

var k=5; ++k;

var m="Луганский национальный университет";

var f="имени Тараса Шевченко";

var ff=m+" "+f;

document.write ("<hr style='color:#ffff00' width=35%>", "c=", c, "<br>", "d=", d, "<hr width=50%>", "k=", k, "<hr><font face='arial' color='green'>",m+"</font> "+f)

</script>

</body>

</html>

Задание 3. Введите сценарий вычисления периметра и полупериметра треугольника с заданными параметрами. Вычислите площадь данного треугольника по формуле Герона, используя математические функции.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>z3</title>

</head>

<body bgcolor="#CC99FF">

<script language="javascript">

var a=2, b=3, c=4;

var p=a+b+c;

var pp=p/2;

s=Math.sqrt(p*(p-a)*(p-b)*(p-c));

window.document.write ("периметр равен", p, "<br>", "полупериметр равен", pp, "<hr>", "площадь трeугольника равна", s)

</script>

</body>

</html>

Задание 4. Рассмотрите пример введения функций с помощью JavaScript. Обратите внимание на выведение сообщения и структуру выведения текста document.write(). Найдите дескрипторы комментариев. Сохраните набранный файл primer1.htm и запустите его.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>z4</title>

<script language="javascript">

function pl (m,n)

{var s=(m*n)/2;

document.write ("<table border='2' bgcolor='aqua'> <tr> <td>", "Площадь прямоугольного треугольника равна", "</td> <td>", s, "</td> </tr> </table>");

return (s)}

function p2(m,n)

{

pl (m,n);

document.write (k)

}

</script>

</head>

<body>

<form name="wwod">

Основание: <input name="t1" type="text" size="5" /> <hr>

Высота: <input name="t2" type="text" size="5" /> <hr>

<input type="button" value="вычислить" onclick="pl(document.wwod.t1.value, document.wwod.t2.value)" />

<input type="button" value="вычислить" onclick="p2(document.wwod.t1.value, document.wwod.t2.value)" />

</form>

</body>

</html>

Задание 6. Наберите код программы и вычислите гипотенузу и косинусы острых углов прямоугольного треугольника с катетами 3 см и 5 см. Обратите внимание на то, что в функцию передается объект - имя формы и на использование метода math. JavaScript чувствительный к регистру. В форму введите дополнительно строку с текстовым полем:

Площадь <Input type="text" size=7 name="res"><hr>

В функции измените метод вывода результата: вместо document.write ("Площадь ровная ", s) введите obj.res.value=s и выведите результат в форму.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>z7</title>

<script language="javascript">

function tr2 (obj)

{var a=obj.st1.value;

var h=obj.st2.value;

var s;

var k1=3;

var k2=5;

var c=Math.sqrt(k1*k1+k2*k2);

var y1=Math.cos(k1/c);

var y2=Math.cos(k2/c);

with (Math) {s=(a*h)/2};

//document.write ("",s);

obj.res.value=s;

obj.cos1.value=y1;

obj.cos2.value=y2;

obj.gip.value=c;

return(s)}

</script>

</head>

<body>

<p> Вычисление площади треугольника </p>

<form name="f_m">

Основание: <input name="st1" type="text" size="7" /> <hr>

Высота: <input name="st2" type="text" size="7" /> <hr>

Площадь: <input name="res" type="text" size="7" /><hr>

При катетах равных 3 и 5 см имеем:

Косинус 1:<input name="cos1" type="text" /><hr>

Косинус 2:<input name="cos2" type="text" /><hr>

Гипотенуза:<input name="gip" type="text" /><hr>

<input type="button" value="вычислить" onclick="tr2(f_m)"/>

</form>

</body>

</html>

Задание 7. Выполните сценарий, который определяет, или есть число в переменной а парным. Измените сценарий, чтобы число вводилось и в из формы и результат выводился в форму.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Untitled Document</title>

</head>

<body>

<script language="javascript" >

function vivod() { /*проверить является ли число четным*/

var a=document.f1.v_a.value;

var c=(a%2);/*остаток от деления на 2*/

if (c==0) {

document.f1.otv.value='Четное'

}else {

document.f1.otv.value='Нечетное';

}

}

</script>

<form name="f1">

<p>Введите а:

<input name="v_a" type="text" id="v_a" size="5" />

<input type="button" name="button" id="button" value="Ввести" onclick="vivod()" />

</p>

<p>Ответ:

<input name="otv" type="text" id="otv" size="10" />

</p>

</form>

</body>

</html>

Задание 8. Проверьте роботу сценария, который определяет больше из 3-х чисел.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Задание №3</title>

</head>

<body>

<script>

var a=2;

var b=5;

var c=4;

var max;

if (a>b) {max=a} else {max=b};

if (max<c) {max=c};

document.write("max=",max);

</script>

</body>

</html>

Задание 9. В зависимости от введенной температуры (из формы) в событии alert сообщается, что в сосуде лед, пара, вода.

Задание 10. Введите сценарий, который определяет правильную отмену количества собранных грибов до 10 штук.

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Untitled Document</title>

<script language="jscript">

function sklon(x) /*определьть правильное склонение количества грибов*/

{var n=parseInt(x);

var d=document;

var st;

switch (n)

{case 1: st="гриб"; break;

case 2: case 3: case 4: st="гриба"; break;

case 5:case 6: case 7: case 8: case 9: case 10: st="грибов"; break;

default: st="-вобщем целую кучу";}

window.alert( "Мы нашли "+ n+" " +st);

}

</script>

</head>

<body>

<form name="f_m">

Введите количество грибов:

<input type="text" name="t1">

<input type="button" onmouseover="sklon(t1.value)" value="Определить" />

</body>

</html>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]