Математические преобразования

Делитель – это число i, на которое данное число n делится без остатка. Т.е. это можно записать следующим образом: n % i =0.

Например,

Математические преобразования - student2.ru Математические преобразования - student2.ru 4 2

Математические преобразования - student2.ru Математические преобразования - student2.ru Математические преобразования - student2.ru 4 2

Т.е. число 2 – делитель числа 4.

В данной работе делители ищутся перебором всех значений от 1 до n/2. Нет необходимости перебирать все числа от 1 до n, т.к. во второй половине числа делителем данного числа является только само это число. Но числа называются дружественными, если каждое из них равно сумме делителей другого не считая самого числа. Следовательно, можно проверить на предмет делителей только от 1 до половины числа.

Например, для числа 220 делителями являются 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 и 110. Что даёт в сумме: 1+2+4+5+10+11+20+22+44+55+110=284.

А для числа 284 делителями являются 1, 2, 4, 71 и 142, сумма которых даёт: 1+2+4+71+142=220.

Таким образом, получаем, что сумма делителей числа 220 равно нашему второму числу. А сумма делителей числа 284 равна нашему первому числу. Из этого следует, что данные числа дружественные.

Таким же образом проверяются все остальные пары введённых чисел.

Выполнение работы

Копии экрана, иллюстрирующие работу:

Сначала вводятся 2 числа.

Далее необходимо нажать на кнопку «определить, числа дружественные или нет».

В следующем поле Вы увидите результат – сообщение о том, что Вы ввели дружественную пару чисел или не дружественную.

Если необходимо очистить форму, нужно нажать на кнопку «Сброс».

Если хотите узнать заранее дружественные числа, то можно перейти по ссылке на определённый сайт.

Математические преобразования - student2.ru

Рис.1 Разработанная web-страница (Тестовые данные №1)

Математические преобразования - student2.ru

Рис.2 Разработанная web-страница (Тестовые данные №2)

Разработанный код сайта:

<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

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

<title>Дружественные числа</title>

<style type="text/css">

body {background-image:url(зелень.jpg)!important}

</style>

<link rel="stylesheet" type="text/css" href="style.css"/>

<script type="text/JavaScript">

function sumdel (n) <!--находит сумму делителей числа n, не считая самого числа-->

{ var s=1;

for (var i=2; i<=n/2; i++)

{ if ( n % i == 0)

s += i;

}

return s;

}

function fr (n,m) <!-- являются ли два числа дружественными-->

{ var result = "";

if ( (n == sumdel (m)) && (m == sumdel (n)))

result="дружественные";

else

result="не являются дружественными";

return result;

}

</script>

</head>

<body>

<h1>Лабораторная работа №10 </h1>

<p class="bold24">Циклы в JavaScript</p>

<p class="bold24"> Вариант 17</p>

<p>Написать программу на HTML и JavaScript для следующего задания: Определите, являются ли два введенных числа дружественными. Числа называются дружественными, если каждое из них равно сумме делителей другого не считая самого числа.</p>

<form name="form0">

<p style="text-indent:0px; font-weight:bold">Введите первое число:

<input type="text" size="20" name="num1"><br></p>

<p style="text-indent:0px; font-weight:bold">Введите второе число:

<input type="text" size="20" name="num2"><br></p>

<input type="button" value="Определить, числа дружественные или нет" onClick="document.form0.res.value=fr(form0.num1.value,form0.num2.value)">

<p style="text-indent:0px; font-weight:bold">Данные числа: <input type="text" size="30" name="res"><br></p>

<input type="reset" value="Сброс">

<br><br>

<a href="https://ru.wikipedia.org/wiki/%D0%94%D1%80%D1%83%D0%B6%D0%B5%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B0" target="_blank" title="Здесь найдёте подробную информацию о дружественных числах">Примеры дружественных чисел вы можете посмотреть на сайте wikipedia.org</a>

</form>

</body>

</html>

Стили css:

h1 {

text-align: center;

font-family: Monotype Corsiva, Arial;

color: #BA0606;

font-style: italic;

}

h2{

text-align: center;

background-color: #FAD899;

color: #E967FA;

}

body {

background-image:url(http://172.23.64.64/ftp/21/642138/Image/%D1%80%D0%BE%D0%BC%D0%B0%D1%88%D0%BA%D0%B0.jpg);

}

a {

text-decoration: none;

}

a:hover {

text-decoration: underline;

}

a:link {

color: #0000d0;

}

a:visited {

color: #900060;

}

a:active {

color: #AC37C6;

}

.bold24{

font-size:24px;

font-weight:bold;

text-align: center;

}

.tfirst {

border:1px none #9F3207;

border-collapse:separate;

width:100%;

height:100%;

}

#line{

border-bottom-style:ridge;

border-bottom-color:red;

border-bottom-width:2mm;

}

p {

text-align: justify;

font-size:24px;

text-indent:60px

}

ul.square{

list-style-type: square;

font-size:24px;

}

.leftimg{

float:left;

margin: 5px 40px 50px 5px;

width:15%;

height:15%;

}

.rightimg{

float:right;

margin: 5px 5px 40px 30px;

width:20%;

height:20%;

}

.kursiv{

font-style: italic;

}

#leftbold{

font-size:24px;

text-align: left;

font-weight:bold;

text-indent:0px

}

ol.size24{

font-size:24px;

}

.sizeimg{

width:60%;

height:60%;

}

.sizemap{

width:600px;

height:400px;

}

Наши рекомендации