Поделитесь своими знаниями, ответьте на вопрос:
Перестановка цифр Дано трехзначное число \overline{abc} abc , в котором все цифры различны. Напишите программу, которая выводит шесть чисел, образованных при перестановке цифр заданного числа. Формат входных данных На вход программе подаётся положительное трёхзначное целое число, все цифры которого различны. Формат выходных данных Программа должна вывести шесть чисел, образованных при перестановке цифр заданного числа в следующем порядке: abc, \, acb, \, bac, \, bca, \, cab, \, cbaabc, acb, bac, bca, cab, cba. Sample Input 1: 123 Sample Output 1: 123 132 213 231 312 321 Sample Input 2: 987 Sample Output 2: 987 978 897 879 798 789 Через Python 3 для stepik
Для начала вводим трехзначное число:
```python
n = int(input())
```
Затем нужно получить каждую цифру числа, чтобы переставлять их местами. Для этого будем использовать операцию деления по модулю (%):
```python
a = n // 100
b = (n // 10) % 10
c = n % 10
```
Теперь у нас есть каждая цифра числа и мы можем производить перестановки. Для этого используем цикл for, который пройдет по всем возможным значениям a, b и c и выведет их комбинации.
```python
# Перестановка abc
print(a, b, c)
print(a, c, b)
print(b, a, c)
print(b, c, a)
print(c, a, b)
print(c, b, a)
```
Таким образом, для числа 123 программа выведет:
```
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1
```
Для числа 987 программа выведет:
```
9 8 7
9 7 8
8 9 7
8 7 9
7 9 8
7 8 9
```
Полный код программы, решающей данную задачу, выглядит следующим образом:
```python
n = int(input())
a = n // 100
b = (n // 10) % 10
c = n % 10
print(a, b, c)
print(a, c, b)
print(b, a, c)
print(b, c, a)
print(c, a, b)
print(c, b, a)
```