Форум сайта python.su
Привет.
В программировании относительно зеленый, так что прошу совета или подсказки, как можно сделать лучше). Вот задача:
Заданы 3 натуральных числа a, b, с . Выяснить , если среди них равные.
0-(если все три введенных числа различны между собой)
2- (если среди введенных чисел есть два одинаковых)
3- (если все введенные числа равны между собой)
В документе .txt : (приложил)
4 5 1
5 1222 1222
10 10 10
(входные данные)
Программа должна перезаписать документ так, чтобы входные данные заменились на выходные .
0
2
3
(выходные данные)
P.s. При изменении входных данных, выходные данные соответственно должны изменятся.
Вот собственно сам код:
f = open ('olymp.txt') a = f.readline().split() b = f.readline().split() c = f.readline().split() print(a) if a[0] == a[1] == a[2]: print('3') aa = '3' elif a[0] == a[1] or a[1] == a[2] or a[0] == a[2]: print('2') aa = '2' else : print('0') aa = '0' print(b) if b[0] == b[1] == b[2]: print('3') ab = '3' elif b[0] == b[1] or b[1] == b[2] or b[0] == b[2]: print('2') ab = '2' else : print('0') ab = '0' print(c) if c[0] == c[1] == c[2]: print('3') ac = '3' elif c[0] == c[1] or c[1] == c[2] or c[0] == c[2]: print('2') ac = '2' else : print('0') ac = '0' f.close() f = open ('olymp.txt', 'w') f.write(aa + '\n' + ab + '\n' + ac) f.close()
Отредактировано Levious16 (Апрель 28, 2019 21:15:50)
Прикреплённый файлы: olymp.txt (28 байт)
Офлайн
Levious16
Отличнле решение, ничего улучшать не нужно! А если вам вдруг дадут задачу с файлом на 1000 строк, то волшебной комбинацией клавиш CTRL-C + CTRL-V все решается тривиально.
Офлайн
Levious16 ну вам уже намекнули про файл в 1000 строк. вы обратили внимание что для каждой строки вы выполняете одни и те же условия? изучайте функции и циклы это намного облегчит написание кода
Levious16ну а теперь попробуйте подать на вход файл из 8 строк и разным количеством чисел в каждой строке. вообщем ваш код привязан к исходному файлу и какие либо изменения файла сломают все работу вашего кода
При изменении входных данных, выходные данные соответственно должны изменятся
Отредактировано marvellik (Апрель 30, 2019 14:19:54)
Офлайн