Разное

Распечатать прописи цифры 1 и 2: Прописи цифра 2 – распечатать, скачать для школьников и дошкольников

python. Как написать программу, которая выводит все положительные целые числа от 1 до заданного числа, чередуясь между двумя концами диапазона?

Программа должна работать следующим образом:

 Введите число: 5
1
5
2
4
3
 

Мой код не делает то же самое. Я думаю, что должен быть 2-й цикл, но я не очень понимаю, как я могу это сделать. Не могли бы вы дать мне подсказку или совет для решения этой задачи. Спасибо. Мой код выглядит так:

 num = int(input("Пожалуйста, введите число:"))
п=0
в то время как число>n:
    а = число% 10
    число -= а
    число = число/10
    печать (а)
    п = п + 1
печать (н)
 
  • питон
  • цикл while
  • флип

2

Это должно работать:

 num = int(input("Пожалуйста, введите число:"))
number_list = [i+1 для i в диапазоне (число)]
в то время как номер_список:
    печать (number_list.pop (0))
    номер_список.обратный()
 

2

 х = флаг = 1
для i в диапазоне (n-1, -1, -1):
    печать (х)
    флаг, х = -флаг, х+флаг*i
 

1

Не самый экономичный способ, но если число относительно невелико, проще всего составить список и просто выталкивать каждый конец по очереди:

 nums = list(range(1, int(input(" Пожалуйста, введите число:"))+1))
в то время как числа:
    печать (числа. поп (0))
    если числа:
        печать (nums.pop())
 

2

По-видимому, наиболее эффективным способом использования памяти было бы использование itertools.zip_longest и диапазон s:

 из itertools import zip_longest
n = int(input("Пожалуйста, введите число:"))
для нижнего, верхнего в zip_longest(range(1, n//2 + 1), range(n, n//2, -1)):
    если ниже:
        печать (нижний)
    печать (верхний)
 

Это милый способ сделать это:

 l = list(range(1,6))
деф индекс_генератор():
    пока верно:
        выход 0
        выход -1
индекс = генератор_индекса()
результат = []
пока я:
    результат.append(l.pop(следующий(индекс)))
 
 число = целое (ввод ())
 
слева = 1
справа = число
 
пока слева < справа:
    печать (слева)
    печать (справа)
    слева += 1
    справа -= 1
# В случае нечетных чисел
если слева == справа:
    печать (слева)`
 

1

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

python — Как написать программу, которая выводит все положительные целые значения от 1 до входного числа, и каждая пара чисел переворачивается?

Мой код почти работает:

 number = int(input("Пожалуйста, введите число: "))
 
а = 2
б = 1
 
в то время как a в диапазоне (число) или b в диапазоне (число):
    печать (а)
    печать (б)
    а += 2
    б += 2
 

с вводом 6 работает как надо:

 Введите число: 6
2
1
4
3
6
5
 

, но с входом 5 это не так и показывает последовательность 2 1 4 3 вместо 2 1 4 3 5

  • python
  • циклы
  • переменные

0

В цикле for мы перебираем все нечетные числа до n (1, 3, 5.

..) и печатаем пару последовательных чисел ( i+1 - четное число first ). Поскольку нам нужны только числа до n для печати, мы проверяем, меньше ли i+1 или равно n (ps внутри цикла for значение i всегда меньше или равно n, поэтому нам просто нужно было убедиться, что если i+1 тоже соответствует этому условию).

 n = целое (ввод ())
для i в диапазоне (1, n+1, 2):
    если i+1 <= n:
        печать (я + 1)
    печать (я)
 

0

это можно сделать с помощью функции диапазона. Вот упрощенная версия:

 акк = []
для i в диапазоне (1, число, 2):
    согл.добавить(i+1)
    согл.доп.(i)
if number % 2: # если ваш номер нечетный, то добавьте последний номер вручную
    согл.присоединить(число)
 

Похоже, вы были очень близки к тому, как вы это написали, но вы не добавили функцию печати в конце, поэтому вы просматривали неправильные значения в качестве вывода. Кроме того, используйте «и» вместо «или» в этом случае.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *