Видимым парадом планет называется планетная конфигурация, когда пять ярких планет Солнечной системы (Меркурий, Венера, Марс, Юпитер и Сатурн) в своём движении по небосводу подходят друг к другу на близкое расстояние и становятся видны в одно время в небольшом секторе (10 — 40 градусов) неба.
from itertools import count
n = 12 # число секторов, мы же взяли сектор в 30°
year = 365.256363004
periods = (
87.969, # Меркурий
224.698, # Венера
686.98, # Марс
4332.589, # Юпитер
10759.22 # Сатурн
)
speeds = [n / p for p in periods] # угловые скорости планет, сектор/день
for t in count(40): # стартанём не сразу, а погодя, чтобы планеты разошлись,
# за 40 дней меркурий убежит почти на 180°
mercury, *others = (int(t * speed) % n for speed in speeds)
if all(planet == mercury for planet in others):
y = int(t / year)
print(f'{y} лет {round(t - y * year)} дней')
break
Выхлоп - 377 лет 212 дней.Парадом планет называется также конфигурация планет Солнечной системы, когда планеты, в том числе и невидимые невооружённым глазом, «выстраиваются» по одну сторону от Солнца в небольшом секторе. В такой конфигурации Меркурий и Венера могут быть невидимы с Земли, так как находятся в нижнем соединении с Солнцем, но зато внешние планеты видимы, практически, в одном направлении. Ближайший прошедший такой парад был 10 марта 1982 года, а следующий будет в 2161 году.
n = 360. # просто 360°
occupied = 45. # размер сектора, в который должны впихнуться планеты
year = 365.256363004
periods = (
87.969, # Меркурий
224.698, # Венера
year, # Земля
686.98, # Марс
4332.589, # Юпитер
10759.22, # Сатурн
60190.03, # Нептун
# 90553.02 # Плутон # всё равно он не планета
)
speeds = [n / p for p in periods] # угловые скорости планет
t = t0 = 0 # текущая дата, дата 'нулевого' парада
for _ in range(32): # число выводимых парадов
while True:
t += 1
if t - t0 < 43:
continue # пусть планеты разойдутся, за 43 дня меркурий убежит на 180°
def width():
planets = sorted((t * speed) % n for speed in speeds)
a, max_free_angle = planets[-1] - n, 0.
for b in planets:
if max_free_angle < b - a:
max_free_angle = b - a
a = b
return 360. - max_free_angle
if width() < occupied: # подкараулим день, когда сектор будет минимальным
u = v = width()
while u >= v:
t += 1
u, v = v, width()
print(f'через {round((t - t0 - 1) / year):>4} лет '
f'планеты соберутся в секторе {round(u)}°')
t0 = t - 1
break
$_GET["page"] = "12";
$page = 0;
$numRows = 122;
$rowsPerPage = 5;
$plus = 2;
if (isset($_GET["page"]) && $_GET["page"] > 0) {
$page = intval($_GET["page"]);
}
$maxPage = ceil($numRows / $rowsPerPage);
if ($page - $plus > 0) {
echo "< ";
}
for ($i = $page - $plus; $i <= $page + $plus; $i++) {
if ($i < 0) continue;
if ($i > $maxPage) break;
echo $i . " ";
}
if ($page + $plus < $maxPage) {
echo ">";
}
bot.reply_to(message, "Привет Что хочешь поесть? \n\n Мануал ", reply_markup=markup_menu )
bor.send_message(message.chat.id, "Привет Что хочешь поесть? \n\n Мануал ", reply_markup=markup_menu )
def generate_keyboard (*answer):
keyboard = types.ReplyKeyboardMarkup(one_time_keyboard=True, resize_keyboard=True)
for item in answer:
keyboard.add(item)
return keyboard
msg = 'Тут будет твое сообщение.' # Сообщение, которое будем отправлять
keyboard = generate_keyboard('Кнопка 1', 'Кнопка 2', 'Кнопка 3') #Генерируем клавиатуру
bot.send_message(message.chat.id, msg, reply_markup=keyboard) #Отправляем сообщение и клавиатуру
users_orders = {user_chat_id:{eating:breakfast, question:"Что тут происходит вообще?"}}
if message.text == "Хочу позавтракать":
users_orders[message.chat.id][eating] = breakfast
keyboard = generate_keyboard('Вариант 1', 'Вариант 2', 'Вариант 3')
bot.send_message(message.chat.id, 'Выберите завтрак', reply_markup=keyboard )
if message.text == "Завершить":
hide_keyboard = types.ReplyKeyboardRemove()
bot.send_message(message.chat.id, 'Ваш запрос принят, обработка займет не более 5 мин', reply_markup=hide_keyboard)
msg = " От клиента {} поступил заказ:\n{}.\nИ вопрос:\n" \
"{}".format(message.chat.id, users_orders[message.chat.id][eating], users_orders[message.chat.id][question])
bot.send_message('841260346', msg)
<a href="?id=0">Главная</a>
<?php
if (isset($_GET['id'])){
echo $_GET['id'] == 0 ? "Параметр гет равен нулю" : "Параметр гет неравен нулю";
}
?>
<a href="?id=0">Передаем нуль</a>
<a href="?id=1">Передаем еденицу</a>