Перейти к содержанию

Математическое и загадочное


E.K.

Рекомендуемые сообщения

Ничего себе,сколько новых формул @E.K. вывел, пока я отсутствовал   :ura:

Глаза разбегаются..

 

"Умный калькулятор":

 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Касперский. Расчёт высоты серпа..</title>
</head>
<body>
<?php
echo "<font color=#228B22 face=Arial style='font-size:12px'><b>Касперский. Расчёт высоты серпа. Задача N2</font></b><br><br>";
$R2 = 2 + sqrt(2);
echo "R2 = ".$R2."<br>";

// HL' = R2 - r - v2 * (( v ( (R2/2 + r/4) 2 - R2*r - r2/4 )  + R2/2 + r/4 + R2/2 + r/4 - v ( (R2/2 + r/4) 2 - R2*r - r2/4 ) ) /2 - r)
$rx=0.1;// шаг изменения r
$HL=0; // высота серпа

for ($r=0; $r<=$R2; $r+=$rx)
{
  echo "r=".$r;
  $HL = $R2 - $r - sqrt(2) * (( sqrt( pow(($R2/2 + $r/4), 2) - $R2*$r - $r*$r/4 )  + $R2/2 + $r/4 + $R2/2 + $r/4 - sqrt( pow(($R2/2 + $r/4), 2) - $R2*$r - $r*$r/4 ) ) /2 - $r);
  echo " HL'=".$HL;
  echo "<br>";
}

?>
</body>
</html> 

 

 

Вывод результатов:

 

Касперский. Расчёт высоты серпа. Задача N2

R2 = 3.4142135623731
r=0    HL'=1
r=0.1 HL'=1.006066017178
r=0.2 HL'=1.012132034356
r=0.3 HL'=1.0181980515339
r=0.4 HL'=1.0242640687119
r=0.5 HL'=1.0303300858899
r=0.6 HL'=1.0363961030679
r=0.7 HL'=1.0424621202459
r=0.8 HL'=1.0485281374239
r=0.9 HL'=1.0545941546018
r=1    HL'=1.0606601717798
r=1.1 HL'=NAN
r=1.2 HL'=NAN
r=1.3 HL'=NAN
r=1.4 HL'=NAN
r=1.5 HL'=NAN
r=1.6 HL'=NAN
r=1.7 HL'=NAN
r=1.8 HL'=NAN
r=1.9 HL'=NAN
r=2    HL'=NAN
r=2.1 HL'=NAN
r=2.2 HL'=NAN
r=2.3 HL'=NAN
r=2.4 HL'=NAN
r=2.5 HL'=NAN
r=2.6 HL'=NAN
r=2.7 HL'=NAN
r=2.8 HL'=NAN
r=2.9 HL'=NAN
r=3    HL'=NAN
r=3.1 HL'=NAN
r=3.2 HL'=NAN
r=3.3 HL'=NAN

r=3.4 HL'=NAN

 

 

Если r=1,  то  HL'=1.0606601717798

Если r>1, то результат не определён.

Не знаю, во всяком случае, мне мой калькулятор выдал такие результаты.

 

  • Спасибо (+1) 1
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Не может быть... Или в формуле ошибки??

Но при r=0 она правильный результат даёт..

 

Может в программе у меня где ошибка? Но я вроде бы несколько раз проверял, когда перекладывал эту формулу на язык php..

 

HL' = R2 - r - √2 * (( √ ( (R2/2 + r/4) 2 - R2*r - r2/4 )  + R2/2 + r/4 + R2/2 + r/4 - √ ( (R2/2 + r/4) 2 - R2*r - r2/4 ) ) /2 - r)

$HL = $R2 - $r - sqrt(2) * (( sqrt( pow(($R2/2 + $r/4), 2) - $R2*$r - $r*$r/4 )  + $R2/2 + $r/4 + $R2/2 + $r/4 - sqrt( pow(($R2/2 + $r/4), 2) - $R2*$r - $r*$r/4 ) ) /2 - $r);

sqrt(x) - это квадратный корень, а pow(x, 2) - это возведение во вторую степень.

  • Спасибо (+1) 1
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

 Eve-nts, 

Что интересно, но Ваша программа дает приблизительно равный результат при :

 

r=0.1 HL'=1.006066017178

и

r=1    HL'=1.0606601717798

 

!!!

Изменено пользователем iv65
Ссылка на комментарий
Поделиться на другие сайты

2*x2 - (2*R2 + r)*x + R2*r + r2/4  = 0

 

- простое квадратное уравнение.

 

 

x = √ ( (R2/2 + r/4) 2 - R2*r - r2/4 )  + R2/2 + r/4

 

 

Для этих уравнений выдаются вроде бы как разные результаты:
 
 
 
 
formula.png
 
(Здесь R - это R2)

 

2*x2 - (2*R2 + r)*x + R2*r + r2/4  = 0

 

- простое квадратное уравнение.

 

 

x = √ ( (R2/2 + r/4) 2 - R2*r - r2/4 )  + R2/2 + r/4

 

 

Для этих уравнений выдаются вроде бы как разные результаты:
 
 
 
 
formula.png
 
(Здесь R - это R2)

 

Кнопку редактирования не вижу, поэтому исправляю пост таким образом.

Я вторую формулу неправильно ввёл:

Второе:

 

formula1.png

  • Спасибо (+1) 1
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Привет и ой - я сегодня что-то подустал тут в Европейщинах..

Можно более конкретно - где ошибка? Я на неделе немного в жёстком графике, сесть и подумать некогда будет..

  • Спасибо (+1) 1
  • Согласен 2
Ссылка на комментарий
Поделиться на другие сайты

2*x2 - (2*R2 + r)*x + R2*r + r2/4  = 0

 

- простое квадратное уравнение. Посмотрите - правильно ли всё? 

Я не совсем понял предложенный метод решения этого уравнения, поэтому не смог проверить правильность решения.

Решил решить его с помощью дискриминанта

Дискриминант D квадратного уравнения a*x2+bx+c=0 равен D=b2–4*a*c,

а его корни x1,2 = (-b ± √D) / 2a

 

D = (2*R+ r)2 - 4 * 2 * (R2 * r  + r2/4) = 4*R22 - 4*R2*r - r2

 

x1,2 =  ( (2*R2 + r) ±  √ (4*R22 - 4*R2*r - r2) ) / 2*2

 

x= (√ (4*R22 - 4*R2*r - r2)  + 2*R2 + r) / 4

 

x= ( - √ (4*R22 - 4*R2*r - r2)  + 2*R2 + r) / 4

  • Спасибо (+1) 1
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

x = (√ (4*R22 - 4*R2*r - r2)  + 2*R2 + r) / 4

 

y = R2 + r/2 - x = R2 + r/2 - (√ (4*R22 - 4*R2*r - r2)  + 2*R2 + r) / 4

 

O1L' =  √2 * ((x+y)/2 - r)

 

HL' = R1 - O1L' = R2 - r - √2 * ((x+y)/2 - r)

 

HL' = R2 - r - √2 * (( (√ (4*R22 - 4*R2*r - r2)  + 2*R2 + r) / 4 + R2 + r/2 - (√ (4*R22 - 4*R2*r - r2)  + 2*R2 + r) / 4  )/2 - r)

 

Прогр:

 


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Касперский. Расчёт высоты серпа..</title>
</head>
<body>
<?php
echo "<font color=#228B22 face=Arial style='font-size:12px'><b>Касперский. Расчёт высоты серпа. Задача N2</font></b><br><br>";
$R2 = 2 + sqrt(2);
echo "R2 = ".$R2."<br>";
 
// HL' = R2 - r - v2 * (( (v (4*R2^2 - 4*R2*r - r^2)  + 2*R2 + r) / 4 + R2 + r/2 - (v (4*R2^2 - 4*R2*r - r^2)  + 2*R2 + r) / 4  )/2 - r)
$rx=0.1;// шаг изменения r
$HL=0; // высота серпа
 
for ($r=0; $r<=$R2; $r+=$rx)
{
  echo "r=".$r;
  $HL = $R2 - $r - sqrt(2) * (( (sqrt (4*$R2*$R2 - 4*$R2*$r - $r*$r)  + 2*$R2 + $r) / 4 + $R2 + $r/2 - (sqrt (4*$R2*$R2 - 4*$R2*$r - $r*$r)  + 2*$R2 + $r) / 4  )/2 - $r);
  echo " HL'=".$HL;
  echo "<br>";
}
 
?>
</body>
</html>

 

 

 

Рез:

 

R2 = 3.4142135623731
r=0 HL'=1
r=0.1 HL'=1.006066017178
r=0.2 HL'=1.012132034356
r=0.3 HL'=1.0181980515339
r=0.4 HL'=1.0242640687119
r=0.5 HL'=1.0303300858899
r=0.6 HL'=1.0363961030679
r=0.7 HL'=1.0424621202459
r=0.8 HL'=1.0485281374239
r=0.9 HL'=1.0545941546018
r=1    HL'=1.0606601717798
r=1.1 HL'=1.0667261889578
r=1.2 HL'=1.0727922061358
r=1.3 HL'=1.0788582233138
r=1.4 HL'=1.0849242404917
r=1.5 HL'=1.0909902576697
r=1.6 HL'=1.0970562748477
r=1.7 HL'=1.1031222920257
r=1.8 HL'=1.1091883092037
r=1.9 HL'=1.1152543263817
r=2    HL'=1.1213203435596
r=2.1 HL'=1.1273863607376
r=2.2 HL'=1.1334523779156
r=2.3 HL'=1.1395183950936
r=2.4 HL'=1.1455844122716
r=2.5 HL'=1.1516504294496
r=2.6 HL'=1.1577164466275
r=2.7 HL'=1.1637824638055
r=2.8 HL'=1.1698484809835
r=2.9 HL'=NAN
r=3    HL'=NAN
r=3.1 HL'=NAN
r=3.2 HL'=NAN
r=3.3 HL'=NAN

r=3.4 HL'=NAN

 

 

 

Странные какие-то результаты. Заколдованная задача  :)

Нужно будет потом ещё раз проверить..

 

  • Спасибо (+1) 1
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

1. Всё верно получается!

Уравнение пересечения окружностей в какой-то момент перестанет решаться, поскольку у них не будет пересечений - на картинке это фиолетовая окружность.

pics10-2.jpg

 

На взгляд оно перестанет решаться гдето на r = R2 - 0.6 = 2 + √2 - 0.6 = 2.8

Точно как в полученных результатах! Ура, формулы верны.

 

2. А также мы видим, что HL' всегда больше 1. То есть, серп не пролезает в коридор. Чтобы пролезть, он должен быть со срезом наверху. Примерно таким:

pic9-6.jpg

 

3. Но шут с ним, с этим срезом. Если потребуется, то потом к нему вернёмся. Давайте подсчитаем какую же площадь серпа можно провернуть через поворот в зависимости от r.

 

То есть, нужно найти площадь фигуры A'BHDE'F - зелёненький серп.

pics10-3.jpg

 

Эта площадь равна площади сектора O1A'HE' минус площадь сектора OA'FE' плюс 2*площадь треугольника OA'O1. Вроде не ошибся.. То есть, надо подсчитать углы a1 и a2, которые A'O1F и A'OF. Вроде бы не должно быть сложно.

  • Спасибо (+1) 1
  • Улыбнуло 1
Ссылка на комментарий
Поделиться на другие сайты

А что тут сложного-то??

Итак:

площадь сектора O1A'HE'  - площадь сектора OA'FE' + 2*площадь треугольника OA'O1.

 

Надо подсчитать углы a1 и a2, которые A'O1F и A'OF. Это просто, поскольку мы уже знаем (подсчитаны выше) координаты {x,y} пересечения окружностей. Посему знаем длину A'L', дальше буду обозачать просто 'al'. Итак,

 

sin(a1) = al/R1  - верно? Тогда a1 = arcsin(al/R1)  Аналогично a2 = arcsin(al/R2). // напоминаю, что для удобства a1 и a2 это половина от углов на пересечения окнужностей, то есть углы A'O1F и A'OF.

 

Тогда площать O1A'HE' = pi * R12 * a1 / 180

Площадь OA'FE' = pi * R22 * a2 / 180

2*площадь треугольника OA'O1 = al * R2 * cos(a2

 

Всё. Теперь просто надо дописать нужное в программу..

Ничего сложного.

  • Спасибо (+1) 1
  • Согласен 2
Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • E.K.
      От E.K.
      Всем привет!
       
      По ходу жизни мы все иногда сталкиваемся с разными визуальными несуразностями, которые можно сфотографировать - или которые уже существуют в виде фоток. Например, однажды в небольшом магазинчике на Гавайях я обнаружил... водку Камчатка!

       
      Судя по цене - пойло должно было оказаться мерзким. Насколько помню, экспериментировать не стал. Что интересно, обнаружено это было в магазинчике в местной базе отдыха для американских военных и их семей. Как я туда попал - отдельная история...

       
      Или меня постоянно удивляет кофе "Georgia" в японских уличных магазинах и вендинговых автоматах:

       
      Процитирую себя
      "Каждый раз в Японии меня умиляет кофейный бренд "GEORGIA" со снежными вершинами на картинке.
      Никак не могу понять - если это американская Джорджия - то при чём здесь горы? Если же это Грузия - то при чём здесь кофе? Но в Японии эти несовместимые несовместимости вполне себя неплохо чувствуют в повсеместно расставленных вендинговых машинках. Хотя... Если посмотреть по сторонам.. Например, "Спартак" и "Динамо".. ... - какое отношение эти бренды имеют к футболу?"
       
      Кстати, а почему он на картинке в каске? Зачем это кофе надо пить в каске?..

       
      Так вот, картинок таких наверняка не только у меня достаточно - посему эта тема будет как раз посвящена разным фоткам с несуразностями, загадками - и разными прочими подобными тоже. Спасибо Борису за подсказку!
       
       
      Ну, можно начинать.
×
×
  • Создать...