Как исправить код, чтобы он корректно работал при вводе возраста 34 и стажа 9, а также при вводе возраста 6 и стажа 7?
Чтобы обратиться к значению ячейки в Excel, используя строку и столбец в качестве ссылки, можно использовать формулу `=ИНДЕКС(Диапазон; Строка; Столбец)`. Например, если нужно получить значение из ячейки A1, можно использовать формулу `=ИНДЕКС(A1; 1; 1)`. Чтобы исправить код для правильной работы при вводе возраста 34 и стажа 9, а также при вводе возраста 6 и стажа 7, необходимо изменить условие в коде. Например, можно использовать следующий код: ```python age = 34 experience = 9 if (age == 34 and experience == 9) or (age == 6 and experience == 7): print("Данные введены корректно") else: print("Данные введены некорректно") ``` Таким образом, код будет проверять введенные значения возраста и стажа и выводить сообщение о корректности данных.
HELP = """ help - напечатать справку по программе. мощьность - укажите мощьность автомобиля в л.с. кбм - укажите ваш кбм (скидка) - что бы узнать скидку пройдите по ссылке : https://autoins.ru/osago/raschet-stoimosti-osago/proverit-kbm/.: квс - укажите ваш квс - что бы узнать скидку введите возраст и стаж. прописка - укажите населенный пункт. рассчитать - узнать стоимость полиса. возраст - укажите возраст. стаж - укажите стаж. """ import os os.environ['PYTHONIOENCODING'] = 'utf-8' import math import openpyxl file_path = "calc.xlsx" wb = openpyxl.load_workbook(file_path) sheet = wb["Лист1"] PRICE = [5600, ] run = True while run : command = input("Введите команду: ") if command == "help": print(HELP) elif command == "мощьность": HP = int(input("Укажите мощьность автомобиля в л.с. ")) if HP <= 50 : PRICE.append(0.6) elif HP > 50 and HP <= 70 : PRICE.append(1) if HP > 70 and HP <= 100 : PRICE.append(1.1) elif HP > 100 and HP <= 120 : PRICE.append(1.2) if HP > 120 and HP <= 150 : PRICE.append(1.4) elif HP > 150 : PRICE.append(1.6) if command == "кбм": kbm = float(input("Укажите ваш кбм (скидка): ")) PRICE.append(kbm) elif command == "возраст": age = int(input("Укажите возраст: ")) elif command == "стаж": expirience = int(input("укажите ваш стаж: ")) cell = sheet.cell(age, expirience) result = cell.value print(result) elif command == "прописка": terra = input("Укажите населенный пункт: ") PRICE.append(0.68) elif command == "рассчитать" : print("Стоимость полиса :", math.prod(PRICE), "рублей") break
если ввожу возраст = 34 , стаж = 9 получаю пустую ячейку
а если возраст = 6 а стаж = 7 получаю нужное значение
Логично, потому-что функция:
cell = sheet.cell(age, expirience)
Интерпретирует передаваемые значения как координаты ячейки (то есть ровно так, как должна):
(исходники либы)
def cell(self, row, column, value=None): """
официальный туториал
d = ws.cell(row=4, column=2, value=10)