Напишите программу которая получает на вход число n и выводит на экран числа в виде ямы
- Open with Desktop
- View raw
- Copy raw contents Copy raw contents
Copy raw contents
Copy raw contents
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Python — задача «Яма» Задачу нужно решить через вложенные циклы без функций и методов!
Напишите программу, которая получает на вход число N и выводит на экран числа в виде «ямы» вот так:

Для начала нужно разделить нашу цель на подзадачи и попробовать сделать хотя бы
5.
54.
543..
5432.
54321
Первая часть задачи решена. После этого уже можно думать о том что делать с тем же самым, но в обратном порядке

for i in range(1, (n := int(input())) + 1):
s = »
for j in range(n, n — i, -1):
s += str(j)
print(s + ‘.’ * (n * 2 — i * 2) + s[::-1])
print(‘Задача 10. Яма ‘)
# В одной компьютерной текстовой игре рисуются всяческие элементы ландшафта.
#
# Напишите программу,
# которая получает на вход число N и выводит на экран числа в виде “ямы”:
# Введите число: 5
#
# 5. 5
# 54. 45
# 543. 345
# 5432..2345
# 5432112345
N = int(input(‘Введите число: ‘))
for x in range(N, 0, -1):
for y in range(N, 0, -1):
if x — 1 < y:
print(y, end=»)
else:
print(‘.’, end=»)
for y in range(1, N + 1):
if x — 1 < y:
print(y, end=»)
else:
print(‘.’, end=»)
print()
depth = int(input(‘Введите глубину ямы: ‘))
for line in range(depth):
for left_number in range(depth, depth — line — 1, — 1):
print(left_number, end = »)
point_count = 2 * (depth- line — 1)
print(‘.’ * point_count, end = »)
for right_number in range(depth — line, depth + 1):
print(right_number, end = »)
level = int(input('Введите число: '))
width = level * 2
for coln in range (1, level+1):
print_num = level
for row in range (width):
if row < coln:
print (print_num, end = '')
print_num -= 1
elif row > width — 1 — coln:
print_num += 1
print (print_num, end = '')
print ()
Напишите программу которая получает на вход число n и выводит на экран числа в виде ямы

Даниил Тихомиров 





Даниил Тихомиров
ответил Александру

Даниил Тихомиров
ответил Евгению





Даниил Тихомиров 

Даниил Тихомиров
ответил Евгению


Даниил Тихомиров
ответил Даниилу

Даниил Тихомиров
ответил Даниилу

Даниил Тихомиров
ответил Даниилу

Даниил Тихомиров
ответил Евгению

Антон Иванов
ответил Даниилу

Даниил Тихомиров
ответил Антону

Антон Иванов
ответил Даниилу


Даниил Тихомиров
ответил Антону

Даниил Тихомиров
ответил Антону

Или я условие задачи неправильно понял. 🙂 Со мной бывает. Никаких дополнительных переменных, все строго из .




Да ладно, нельзя давать такие задачи на егэ, давать переменным такие имена, и заставлять писать на питоне в таком стиле. Как можно инициализировать минимум нулем(когда нет ям)?? Хотя бы первым элементом. Ладно. Решение:
a = [. ] # данные
k = 0 # результат
for i in range(1, len(a)-1):
if a[i-1] > a[i] < a[i+1] and a[i] < k: k = a[i]
print(k)
Вариант 2:
min(j for i, j, k in zip(a, a[1:-1], a[2:]) if i>j<k) or 0