Форум сайта python.su
Здравствуйте.
Не получается у меня вывести кортеж в обратном порядке.
Сама задача такая:
Напишите программу, в которой пользователь вводит целое число, а программа формирует кортеж, который состоит из цифр, входящих в это число. Предложите способы создания кортежа, при котором цифры, формирующие число, включаются в кортеж в прямом и обратном порядке.
Офлайн
Вроде получилось, но не пойму откуда появляется запятая в самом начале во втором ряду.
his = input('введите число: ') hiss = tuple(his) pre = int(''.join(map(str, hiss))) k = [] for i in range(0, pre + 1): k.append(i) k.sort(reverse=True) print(f'{i}', end=',') print(f'\n', *k, sep=',')
Офлайн
raw = input('Enter number') res_tuple = tuple(int(i) for i in raw) res_tuple_reverse = tuple(int(i) for i in raw[::-1]) print(res_tuple, res_tuple_reverse)
Офлайн
Нужно чтобы при вводе пользователя целого числа, программа формировала кортеж, который состоит из цифр, входящих в это число. А потом эти числа вывести реверсом.
Офлайн
Может так ?
raw = input('Enter number: ') res_tuple = tuple(int(i) for i in raw) res_tuples = int(''.join(map(str, res_tuple))) res_tupl = tuple(int(z) for z in range(0, res_tuples)) print(*res_tupl, sep=',') res_tuple_reverse = tuple(int(i) for i in res_tupl[::-1]) print('\n', *res_tuple_reverse, sep=',')
Отредактировано AleksandrM (Дек. 25, 2021 06:30:52)
Офлайн
AleksandrMМоя программа именно это и делает. Вы её запускали?
Нужно чтобы при вводе пользователя целого числа, программа формировала кортеж, который состоит из цифр, входящих в это число. А потом эти числа вывести реверсом.
Офлайн
num = int(input('введите число:')) order = (input('введите порядок(1 -> прямой, 2 -> обратный):')) if order == '1': my_tuple = tuple(range(num+1)) print(','.join(map(str, my_tuple))) elif order == '2': my_tuple = tuple(range(num,-1,-1)) print(','.join(map(str, my_tuple))) else: print('порядок не определен')
введите число:12 введите порядок(1 -> прямой, 2 -> обратный):2 12,11,10,9,8,7,6,5,4,3,2,1,0 Process finished with exit code 0
Офлайн
xam1816
…программа формировала кортеж, который состоит из цифр, входящих в это число
my_tuple = tuple(range(num+1))
Офлайн
FishHookНу да, понял что не то, сначала код автора запустил, он там выводит их как диапазон, а нужно из цифр этого числа
ну разве вы это сделали?
num = input('введите число:') order = (input('введите порядок(1 -> прямой, 2 -> обратный):')) if order == '1': my_tuple = tuple(map(int,num)) print(','.join(map(str, my_tuple))) elif order == '2': my_tuple = tuple(map(int,num[::-1])) print(','.join(map(str, my_tuple))) else: print('порядок не определен')
введите число:54321 введите порядок(1 -> прямой, 2 -> обратный):2 1,2,3,4,5 Process finished with exit code 0
Отредактировано xam1816 (Дек. 25, 2021 21:00:58)
Офлайн
AleksandrMТут есть загвоздка. Целое число принадлежит интервалу от -inf до +inf. Следовательно, оно может быть введено со знаком плюс и со знаком минус.
Напишите программу, в которой пользователь вводит целое число, а программа формирует кортеж, который состоит из цифр, входящих в это число.
Отредактировано py.user.next (Дек. 26, 2021 00:49:14)
Офлайн