не работает логическая часть в коде

Elik

Новичок
Пользователь
Окт 17, 2020
21
0
1
операционная система windows 7
python 3.5.2
проблема: после ввода переменной "meDolg" программа отключается. можете объяснить где я допустил ошибку?



Код:
qwer = 'вы должны:'
i = 0
result = []
answer = []
meDolg = input('введите "мне должны"" или "ничего"')
while i < 10:
    if meDolg == 'мне должны':
        Tim = float(input('Tim'))
        Tim = Tim - (Tim * 0.09)
        Tim = Tim - (Tim * 0.08)
    else:
        Tim = Tim - (Tim * 0.09)
        Tim = Tim - (Tim * 0.05)
    if Tim == 0:
        break
    result.append(Tim)
    print(qwer), print(Tim)
    i += 1
n = 0
while n < 10:
    if meDolg == 'мне должны':
        sherin = float(input('sherin'))
        sherin = sherin - (sherin * 0.09)
        sherin = sherin - (sherin * 0.1)
    else:
        sherin -= sherin * 0.09
        sherin -= sherin * 0.07
    if sherin == 0:
        break
    result.append(sherin)
    print(qwer), print(sherin)
    pass
print(result)
print(sum(result))
 
Последнее редактирование:

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
выложите код через теги code (где пишите сообщение сверху в панели инструментов три точки -> код) с соблюдением отступов, с первого взгляда у вас ошибка Tim = float('Tim'), как вы думаете будет работать если текст перевести в число с плавающей точкой?
 
Последнее редактирование:

Elik

Новичок
Пользователь
Окт 17, 2020
21
0
1
выложите код через теги code (где пишите сообщение сверху в панели инструментов три точки -> код) с соблюдением отступов, с первого взгляда у вас ошибка Tim = float('Tim'), как вы думаете будет работать если текст перевести в число с плавающей точкой?
я прошу прощения
Tim = float(input('Tim ')) он должен был выглядеть так
я исправил. Можете взглянуть
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
я прошу прощения
Tim = float(input('Tim ')) он должен был выглядеть так
я исправил. Можете взглянуть
ну код работает после ваших правок, я только задачу не понял
 

Elik

Новичок
Пользователь
Окт 17, 2020
21
0
1
ну код работает после ваших правок, я только задачу не понял
есть накладная по реализации товара и есть дилер у которого иметься скидка
к примеру 16700 - 9% - 8% = 13981.24 это я должен
16700 - 9% - 5% = 14437.15 мне должны
ну создать код кот. считает вот это все
я только начал кодить, и пока моих знаний, хватает только на это. 4 день изучаю byte of python и видео уроки дополнительно смотрю
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
есть накладная по реализации товара и есть дилер у которого иметься скидка
к примеру 16700 - 9% - 8% = 13981.24 это я должен
16700 - 9% - 5% = 14437.15 мне должны
ну создать код кот. считает вот это все
я только начал кодить, и пока моих знаний, хватает только на это. 4 день изучаю byte of python и видео уроки дополнительно смотрю
по вашему примеру код, у вас подсчеты не верны
Python:
count = float(input('введите сумму: '))
myDolg = count
myDolg = myDolg - (myDolg * 0.09) - (myDolg * 0.08)
print('Я должен: {}'.format(myDolg))
hisDolg = count
hisDolg = hisDolg - (hisDolg * 0.09) - (hisDolg * 0.05)
print('Мне должен: {}'.format(hisDolg))
 

Elik

Новичок
Пользователь
Окт 17, 2020
21
0
1
по вашему примеру код, у вас подсчеты не верны
Python:
count = float(input('введите сумму: '))
myDolg = count
myDolg = myDolg - (myDolg * 0.09) - (myDolg * 0.08)
print('Я должен: {}'.format(myDolg))
hisDolg = count
hisDolg = hisDolg - (hisDolg * 0.09) - (hisDolg * 0.05)
print('Мне должен: {}'.format(hisDolg))
дааа, мой код это сплошное разочарование, но он работает, хоть запускать приходиться дважды, результаты верны.
если вы не против то я хотел бы доработать ваш код, правда я не понимаю зачем нужны "фигурные скобки {}" и что означает функция ".format"
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
В фигурные скобки подставляется значение из переменной, которая передана в format
подробнее можно почитать здесь тык
можно сделать так
Python:
count = float(input('введите сумму: '))
myDolg = count
myDolg = myDolg - (myDolg * 0.09) - (myDolg * 0.08)
print('Я должен: ' + str(myDolg))
hisDolg = count
hisDolg = hisDolg - (hisDolg * 0.09) - (hisDolg * 0.05)
print('Мне должен: ' + str(hisDolg))
 
Последнее редактирование:

Elik

Новичок
Пользователь
Окт 17, 2020
21
0
1
В фигурные скобки подставляется значение из переменной, которая передана в format
подробнее можно почитать здесь тык
спасибо большое, если и я смогу вам чем нибудь помочь, то пишите буду очень рад
 

lynulx

Модератор
Команда форума
Модератор
Авг 9, 2020
139
19
18
спасибо большое, если и я смогу вам чем нибудь помочь, то пишите буду очень рад
вроде код рабочий.
если вы запускаете код, открывая файл, я не запуская его через консоль\редактор, то он и будет закрываться по завершению программы.

выход: напишите в конце Input()
 

Форум IT Специалистов