Загрузка данных


# Считываем принятую строку (пакет команд)
packet = input().strip()

# Проверяем длину пакета
if len(packet) > 20:
    # Если длина превышает 20 символов
    result = "TOO LONG"
else:
    # Если длина ≤ 20 символов
    result = "ACCEPTED"

# Выводим результат валидации
print(result)
Тренажер кода 2
# Считываем входящую строку данных (пакет телеметрии)
telemetry_packet = input()

# Распарсиваем строку, разделяя её на отдельные статусы
statuses = telemetry_packet.split()

# Проверяем наличие статуса 'error' в списке
if 'error' in statuses:
    # Если error найден
    result = "ALARM"
else:
    # Если error отсутствует
    result = "ALL OK"

# Выводим результат проверки
print(result)
Тренажер кода 3
# Считываем входящую строку (пакет данных)
battery_data = input()

# Разбираем строку на отдельные строковые значения
cell_voltages_str = battery_data.split()

# Преобразуем строковые значения в вещественные числа
cell_voltages = []
for voltage_str in cell_voltages_str:
    cell_voltages.append(float(voltage_str))

# Находим минимальное напряжение среди всех ячеек
min_voltage = min(cell_voltages)

# Анализируем данные
if min_voltage < 3.6:
    # Если напряжение хотя бы одной ячейки меньше 3.6 вольт
    status = "LOW CELL"
else:
    # Если все ячейки в норме
    status = "BATTERY OK"

# Выводим ответный статус
print(status)
Тренажер кода 4
# Считываем сырое значение сигнала
signal = float(input())

# Считываем команду протокола
command = input().strip()

# Инициализируем результат исходным сигналом
result = signal

# Обрабатываем команду offset
if command == "offset":
    # Считываем параметр корректировки (поправку)
    adjustment = float(input())
    # Прибавляем поправку к сигналу
    result = signal + adjustment

# Обрабатываем команду scale
if command == "scale":
    # Считываем параметр корректировки (коэффициент)
    adjustment = float(input())
    # Умножаем сигнал на коэффициент
    result = signal * adjustment

# Выводим результат в нужном формате
print(f"RESULT: {result}")
Тренажер кода 5
# Считываем строку со значениями
packet_str = input().strip()

# Разбиваем строку на отдельные элементы
packet_parts = packet_str.split()

# Преобразуем строковые значения в целые числа
packet = [int(num) for num in packet_parts]

# Проверяем, что пакет содержит 6 элементов
if len(packet) != 6:
    print("PACKET BAD")
else:
    # Извлекаем компоненты пакета
    header = packet[0]
    d1, d2, d3 = packet[1], packet[2], packet[3]
    checksum = packet[4]
    footer = packet[5]
    
    # Проверка протокола
    protocol_ok = (header == 170) and (footer == 85)
    
    # Проверка целостности
    data_sum = d1 + d2 + d3
    integrity_ok = (data_sum == checksum)
    
    # Проверяем обе проверки
    if protocol_ok and integrity_ok:
        # Если обе проверки пройдены
        print("PACKET OK")
        print(f"DATA: {d1} {d2} {d3}")
    else:
        # В любом ином случае
        print("PACKET BAD")
Самостоятельная работа 3
# Считываем входящую строку
data = input()

# Проверяем, состоит ли строка только из цифр
if data.isdigit():
    print("Команда принята")
else:
    print("Ошибка: ожидалось число")
Самостоятельная работа 4
# Считываем строку с перечнем занятых портов
ports_string = input().strip()

# Преобразуем строку в список данных, используя запятую как разделитель
ports_list = ports_string.split(',')

# Проверяем наличие порта A3 в полученном списке
if 'A3' in ports_list:
    # Если A3 есть в списке
    status = "BUSY"
else:
    # Если A3 отсутствует
    status = "FREE"

# Выводим статус канала
print(status)