File tree Expand file tree Collapse file tree 1 file changed +33
-0
lines changed
Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change 1+ def change (lot , nom_1 , nom_2 , nom_3 ):
2+ """
3+ Первым вргументом является сумма, которую необходимо разменять.
4+ Остальные 3 аргумента - номиналы, любые ненулевые.
5+ Функция ищет самый легкий размен.
6+ """
7+
8+ all_nom = sorted ([nom_1 , nom_2 , nom_3 ], reverse = True )
9+
10+ for count_0 in range (lot // all_nom [0 ] + 1 ):
11+ rest_1 = lot - count_0 * all_nom [0 ]
12+
13+ for count_1 in range (rest_1 // all_nom [1 ] + 1 ):
14+ rest_2 = rest_1 - count_1 * all_nom [1 ]
15+
16+ if rest_2 % all_nom [2 ] == 0 :
17+ result = [count_0 , count_1 , rest_2 // all_nom [2 ]]
18+ print (
19+ f"размен: { all_nom [0 ]} * { result [0 ]} + "
20+ f"{ all_nom [1 ]} * { result [1 ]} + { all_nom [2 ]} * { result [2 ]} "
21+ )
22+ return
23+
24+ else :
25+ print ("-42!" )
26+ return
27+
28+ FIO = input ("Введите через пробел имя, фамилию и отчество\n " ).split ()
29+ nominals = [len (string ) for string in FIO ]
30+ if len (nominals ) == 2 :
31+ nominals += [19 ]
32+ lot_to_change = int (input ("Введите сумму, которую нужно разменять\n " ))
33+ change (lot_to_change , nominals [0 ], nominals [1 ], nominals [2 ])
You can’t perform that action at this time.
0 commit comments