Онлайн калькулятор находит какой угол образует минутная и часовая стрелка часов, калькулятор вычисляет наименьший угол между стрелками, для определения наибольшего угла необходимо от 360 градусов отнять наименьший угол.
Отметка 12 часов – это 0°
1 час – 360°:12 = 30° (градусы часовой стрелки)
1 минута – 360°:60 = 6° (градусы минутной стрелки)
Каждую минуту часовая стрелка смещается на 30°:60 = 0.5°
×
Пожалуйста напишите с чем связна такая низкая оценка:
×
Для установки калькулятора на iPhone – просто добавьте страницу
«На главный экран»
Для установки калькулятора на Android – просто добавьте страницу
«На главный экран»
Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article
This problem is known as Clock angle problem where we need to find angle between hands of an analog clock at a given time.
Examples:
Input: h = 12:00 m = 30.00 Output: 165 degree Input: h = 3.00 m = 30.00 Output: 75 degree
The idea is to take 12:00 (h = 12, m = 0) as a reference. Following are detailed steps.
1. Calculate the angle made by hour hand with respect to 12:00 in h hours and m minutes.
2. Calculate the angle made by minute hand with respect to 12:00 in h hours and m minutes.
3. The difference between the two angles is the angle between the two hands.
How to calculate the two angles with respect to 12:00?
The minute hand moves 360 degrees in 60 minute(or 6 degrees in one minute) and hour hand moves 360 degrees in 12 hours(or 0.5 degrees in 1 minute). In h hours and m minutes, the minute hand would move (h*60 + m)*6 and hour hand would move (h*60 + m)*0.5.
C++
#include <bits/stdc++.h>
using
namespace
std;
int
min(
int
x,
int
y)
{
return
(x < y)? x: y;
}
int
calcAngle(
double
h,
double
m)
{
if
(h <0 || m < 0 || h >12 || m > 60)
printf
(
"Wrong input"
);
if
(h == 12) h = 0;
if
(m == 60)
{
m = 0;
h += 1;
if
(h>12)
h = h-12;
}
float
hour_angle = 0.5 * (h * 60 + m);
float
minute_angle = 6 * m;
float
angle =
abs
(hour_angle - minute_angle);
angle = min(360 - angle, angle);
return
angle;
}
int
main()
{
cout << calcAngle(9, 60) << endl;
cout << calcAngle(3, 30) << endl;
return
0;
}
C
#include <stdio.h>
#include <stdlib.h>
int
min(
int
x,
int
y) {
return
(x < y)? x: y; }
int
calcAngle(
double
h,
double
m)
{
if
(h <0 || m < 0 || h >12 || m > 60)
printf
(
"Wrong input"
);
if
(h == 12) h = 0;
if
(m == 60)
{
m = 0;
h += 1;
if
(h>12)
h = h-12;
}
int
hour_angle = 0.5 * (h*60 + m);
int
minute_angle = 6*m;
int
angle =
abs
(hour_angle - minute_angle);
angle = min(360-angle, angle);
return
angle;
}
int
main()
{
printf
(
"%d n"
, calcAngle(9, 60));
printf
(
"%d n"
, calcAngle(3, 30));
return
0;
}
Java
import
java.io.*;
class
GFG
{
static
int
calcAngle(
double
h,
double
m)
{
if
(h <
0
|| m <
0
|| h >
12
|| m >
60
)
System.out.println(
"Wrong input"
);
if
(h ==
12
)
h =
0
;
if
(m ==
60
)
{
m =
0
;
h +=
1
;
if
(h>
12
)
h = h-
12
;
}
int
hour_angle = (
int
)(
0.5
* (h*
60
+ m));
int
minute_angle = (
int
)(
6
*m);
int
angle = Math.abs(hour_angle - minute_angle);
angle = Math.min(
360
-angle, angle);
return
angle;
}
public
static
void
main (String[] args)
{
System.out.println(calcAngle(
9
,
60
)+
" degree"
);
System.out.println(calcAngle(
3
,
30
)+
" degree"
);
}
}
Python3
def
calcAngle(h,m):
if
(h <
0
or
m <
0
or
h >
12
or
m >
60
):
print
(
'Wrong input'
)
if
(h
=
=
12
):
h
=
0
if
(m
=
=
60
):
m
=
0
h
+
=
1
;
if
(h>
12
):
h
=
h
-
12
;
hour_angle
=
0.5
*
(h
*
60
+
m)
minute_angle
=
6
*
m
angle
=
abs
(hour_angle
-
minute_angle)
angle
=
min
(
360
-
angle, angle)
return
angle
h
=
9
m
=
60
print
(
'Angle '
, calcAngle(h,m))
C#
using
System;
class
GFG {
static
int
calcAngle(
double
h,
double
m)
{
if
(h < 0 || m < 0 ||
h > 12 || m > 60)
Console.Write(
"Wrong input"
);
if
(h == 12)
h = 0;
if
(m == 60)
{
m = 0;
h += 1;
if
(h>12)
h = h-12;
}
int
hour_angle = (
int
)(0.5 * (h * 60 + m));
int
minute_angle = (
int
)(6 * m);
int
angle = Math.Abs(hour_angle - minute_angle);
angle = Math.Min(360 - angle, angle);
return
angle;
}
public
static
void
Main ()
{
Console.WriteLine(calcAngle(9, 60));
Console.Write(calcAngle(3, 30));
}
}
PHP
<?php
function
mintwo(
$x
,
$y
)
{
return
(
$x
<
$y
) ?
$x
:
$y
;
}
function
calcAngle(
$h
,
$m
)
{
if
(
$h
<0 ||
$m
< 0 ||
$h
>12 ||
$m
> 60)
echo
"Wrong input"
;
if
(
$h
== 12)
$h
= 0;
if
(
$m
== 60) {
$m
= 0;
$h
+= 1;
if
(
$h
>12)
$h
=
$h
-12;
}
$hour_angle
= 0.5 *
(
$h
* 60 +
$m
);
$minute_angle
= 6 *
$m
;
$angle
=
abs
(
$hour_angle
-
$minute_angle
);
$angle
= min(360 -
$angle
,
$angle
);
return
$angle
;
}
echo
calcAngle(9, 60),
"n"
;
echo
calcAngle(3, 30),
"n"
;
?>
Javascript
<script>
function
min(x, y)
{
return
(x < y)? x: y;
}
function
calcAngle(h, m)
{
if
(h <0 || m < 0 || h >12 || m > 60)
document.write(
"Wrong input"
);
if
(h == 12) h = 0;
if
(m == 60)
{
m = 0;
h += 1;
if
(h>12)
h = h-12;
}
let hour_angle = 0.5 * (h * 60 + m);
let minute_angle = 6 * m;
let angle = Math.abs(hour_angle - minute_angle);
angle = min(360 - angle, angle);
return
angle;
}
document.write(calcAngle(9, 60) +
"<br>"
);
document.write(calcAngle(3, 30) +
"<br>"
);
</script>
Time Complexity: O(1)
Auxiliary Space: O(1)
Exercise: Find all times when hour and minute hands get superimposed.
This article is contributed by Ashish Bansal. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above
Last Updated :
14 Jan, 2022
Like Article
Save Article
Как найти угол между часовыми стрелками?
12 часов умножаем на 60 минут, получаем 720. Это в 2 раза больше чем 360, то есть, количества градусов в круге. Значит угол одной минуты составляет 0,5 градуса. Считаем количество минут между стрелками и умножаем эту цифру на 0,5.
Для чего — понятно. Для измерения времени, точнее — показания текущего времени. Чтоб было видно, сколько сейчас.
Изобретены в Китае. Самое первое упоминание механических часов относится к 725 году, причём история даже сохранила имена мастеров, их изготовивших, — И Син и Лян Лин-цзань.
Маятниковые часы были изобретены в Германии примерно в 1000 году, их изобретатель — аббат Герберт (по происхождению француз). Удивительное дело, но очень долго после этого маятник в часах не применялся, и их конструкции были «колёсными» — в часах использовались гиревые механизмы.
Во многих современных смартфонах и планшетах есть функция навигатора. То есть они принимают спутниковые сигналы GPS или ГЛОНАСС. Со спутника непрерывно передаются также сигналы точного времени, они нужны для навигации. Их вот и используют для коррекции времени в кварцевых часах, при помощи специальной микросхемы, встроенной в корпус.
Я думаю производитель бы заблокировал обратный перевод часов, если бы это было так вредно для часов.
Но я заметил что некоторые старые часы при переводе назад останавливались, поэтому мне приходилось их потом немного переводить вперёд.
А у меня раньше было так — я пару лет подряд каждое утро останавливала взгляд на часах и видела 11:11. И я тоже думала, что это какой-то знак. Возможно, так оно и было. После того, как в моей жизни произошло некое событие (человек, в которого я была тогда влюблена, отверг меня и исчез из моей жизни), у меня произошла полная переоценка ценностей. Я поняла, как сильно люблю мужа (а с ним тоже произошла серьезная неприятность, прежде чем я это осознала), и перестала обращать внимание на других мужчин. Кажется, именно тогда я и перестала видеть эти «знаки» в виде повторяющихся чисел.
Здесь важно понимать, сколько лет Вашей жене, ее вкусы и сумму, на которую Вы рассчитываете.
Среди молодежи сейчас очень модны часы с многослойным ремешком, они довольно недорогие. Но смотрятся далеко не под всю одежду и женщинам за 35 на мой взгляд не подходят:
Также актуальны часы с браслетом из белой или черной керамики. Они довольно нейтральны. Цены варьируются от 100 рублей до бесконечности:
Если Вам позволяют средства, я все же рекомендую классику от хорошего производителя, например, Tissot? пусть они и стоят дорого, но и служить будут долго.
А еще лучше, возьмите ее с собой в салон и подарите выбор ей. Ну либо подарочный сертификат в часовой салон. Точно не ошибетесь))
Как найти угол между часовыми стрелками?Vyacheslav 9 лет назад
antoniya 9 лет назад 12 часов умножаем на 60 минут, получаем 720. Это в 2 раза больше чем 360, то есть, количества градусов в круге. Значит угол одной минуты составляет 0,5 градуса. Считаем количество минут между стрелками и умножаем эту цифру на 0,5. комментировать
в избранное
ссылка
отблагодарить Знаете ответ? |
Есть интересный вопрос? Задайте его нашему сообществу, у нас наверняка найдется ответ! |
Делитесь опытом и знаниями, зарабатывайте награды и репутацию, заводите новых интересных друзей! |
Задавайте интересные вопросы, давайте качественные ответы и зарабатывайте деньги. Подробнее.. |
Статистика проекта за месяц
Новых пользователей: 4345
Создано вопросов: 16451
Написано ответов: 38614
Начислено баллов репутации: 921944
Как можно определить угол между стрелками часов?
Знаток
(408),
на голосовании
10 лет назад
Голосование за лучший ответ
Anna
Мыслитель
(7372)
10 лет назад
Очень просто: часы – это окружность, стрелки образуют центральные углы.
На циферблате 60 делений, градусная мера окружности =360, значит 1 деление=6 градусов.
Считаете, сколько делений между стрелками (например, 5). Умножаете на 6 градусов = 5*6=30 гр.
Градусная мера дуги, на которую будет опираться центральный угол, равна этому углу, т. е. 30 гр.