М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
dzorina2002
dzorina2002
22.06.2022 05:17 •  Информатика

Ограничение времени 1 секунда Ограничение памяти 64Mb

Ввод стандартный ввод или input.txt

Вывод стандартный вывод или output.txt

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

Поэтому разработан специальный протокол, определяющий взаимодействие клиента (запрашивающего значение времени компьютера) и севера (рассылающего значение времени компьютера), содержащий следующие шаги:

Клиентский компьютер отсылает серверу свой запрос и сохраняет (по времени клиента) момент отправления А этого запроса;

В момент получения запроса клиента севером его точные часы показывают В. Это значение сервер и отправляет клиенту;

ответ сервера приходит клиенту в момент C по клиентскому времени, это значение клиентом также сохраняется. Теперь он в состоянии установить значение точного времени, располагая известными значениями А, В и С.

Предполагается, что значения задержки при передаче данных в направлениях клиент-сервер и сервер-клиент совпадают.

Требуется реализовать алгоритм, который с точностью до одной секунды находит точное значение времени для установки на клиентском компьютере по известным значениям А, В и С. При получении дробного результата необходимо округлить его до целого числа секунд по обычным правилам арифметики (если дробная часть числа меньше 0.5, то в меньшую сторону, иначе – в большую)

Нужно принять во внимание, что пока клиент ожидает ответа, по его клиентскому времени могут начаться новые сутки. При этом известно, что между моментом отправки запроса и получением ответа от сервера проходит менее 24 часов.

Формат ввода

Программа получает на вводе три момента времени, каждый записан в отдельной строке. Моменты времени представлены в формате «hh:mm:ss» (hh -– часы, mm – минуты, ss – секунды). Часы, минуты и секунды записываются ровно двумя цифрами с добавлением при необходимости ведущих нулей.

Формат вывода

Необходимо вывести в том же формате, что и на вводе единственный момент времени –- точное время, которое нужно установить на клиенте.

Пример

Ввод Вывод

15:01:00

18:09:45

15:01:40

18:10:05

Примечания

Клиент отправил запрос в 15:01:00 по своим часам, сервер получил запрос в 18:09:45 по своим часам. Клиент получил ответ в 15:01:40, в этот момент его точное время будет 18:10:05

👇
Ответ:
obizyana88
obizyana88
22.06.2022

def timestamp_to_time(timestamp):

   seconds = 0

   for token in timestamp.split(":"):

       seconds = seconds * 60 + int(token)

   return seconds

 

def time_to_timestamp(time):

   seconds = time % 60

   time //= 60

   minutes = time % 60  

   time //= 60

   hours = time % 24

   return "{:02d}:{:02d}:{:02d}".format(hours, minutes, seconds)

 

A = timestamp_to_time(input())

B = timestamp_to_time(input())

C = timestamp_to_time(input())

 

if C < A:

   C += timestamp_to_time("24:00:00")

 

t = (C - A + 1) // 2

current_time = B + t

print(time_to_timestamp(current_time))

Объяснение:

это я нашла у другого человека

4,4(75 оценок)
Открыть все ответы
Ответ:
Era2008
Era2008
22.06.2022
Class MiddleTemperature{
 public static void main(String args[]){
  java.util.Scanner in = new java.util.Scanner(System.in); double tSum = 0;
  for(int day = 0; day<7; day++){
   switch(day){
 case 0: System.out.print("Понедельник>>"); break;
 case 1: System.out.print("Вторник>>"); break;
 case 2: System.out.print("Среда>>"); break;
 case 3: System.out.print("Четверг>>"); break;
 case 4: System.out.print("Пятница>>"); break;
 case 5: System.out.print("Суббота>>"); break;
 case 6: System.out.print("Воскресенье>>"); break;
   }
   tSum+=in.nextInt();
  } tSum/=7;
  System.out.print("Средняя температура за неделю: "+(int)tSum/1+"."+(int)(tSum%1.0/0.1)+(int)((tSum-(int)(tSum/0.1)/10D)/0.01));
 }
}
4,6(1 оценок)
Ответ:
vikysikrusinova
vikysikrusinova
22.06.2022
За в следующий раз никто программу не напишет вам
var mo,tu,we,th,fr,sa,su,a: ShortInt;
var b: Real;
Begin
Write('Температура воздуха в Понедельник: ');
Readln(mo);
Write('Температура воздуха во Вторник: ');
Readln(tu);
Write('Температура воздуха в Среду: ');
Read(we);
Write('Температура воздуха в Четверг: ');
Readln(th);
Write('Температура воздуха в Пятницу: ');
Readln(fr);
Write('Температура воздуха в Субботу: ');
Readln(sa);
Write('Температура воздуха в Воскресенье: ');
Readln(su);
a:=mo+tu+we+th+fr+sa+su;
b:=a/7;
Write('Средняя температура воздуха: ',b:0:2,' градусов.');
End.
4,6(96 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ