Русский
Русский
English
Статистика
Реклама

Перевод Python 18 задач на вывод символов по заданному шаблону

Подготовка к техническому собеседованию по Python нелёгкая задача. На таком собеседовании вам, вполне возможно, встретятся задачи на вывод символов по заданным шаблонам. Если вы хотите научиться решать такие задачи вам может пригодиться подборка способов их решения, приведённая в этом материале.



Здесь продемонстрировано 18 примеров кода. Начинающие программисты вполне могут проработать всё по порядку, а опытные могут разобраться именно с тем, что им нужно. Главное понять, как устроен тот или иной пример. Отсутствие чёткого понимания того, что происходит в программах, способно сыграть злую шутку с тем, кто, например, заучив фрагмент кода и воспроизведя его на собеседовании, попытается объяснить то, как именно этот код работает. А тех, кто проводит собеседование, часто интересуют именно такие вот разъяснения.

1. Простой числовой треугольник


Желаемый результат:

12 23 3 34 4 4 45 5 5 5 5

Код:

rows = 6for num in range(rows):for i in range(num):print(num, end=" ") # вывод числа# вывод пустой строки после каждой строки с числами для правильного отображения шаблонаprint(" ")

2. Обратный числовой треугольник


Желаемый результат:

1 1 1 1 1 2 2 2 2 3 3 3 4 4 5

Код:

rows = 5b = 0for i in range(rows, 0, -1):b += 1for j in range(1, i + 1):print(b, end=' ')print('\r')

3. Полупирамида из чисел


Желаемый результат:

11 21 2 31 2 3 41 2 3 4 5

Код:

rows = 5for row in range(1, rows+1):for column in range(1, row + 1):print(column, end=' ')print("")

4. Обратная пирамида из уменьшающихся чисел


Желаемый результат:

5 5 5 5 5 4 4 4 4 3 3 3 2 2 1

Код:

rows = 5for i in range(rows, 0, -1):num = ifor j in range(0, i):print(num, end=' ')print("\r")

5. Обратная пирамида, все элементы которой представлены одним и тем же числом


Желаемый результат:

5 5 5 5 5 5 5 5 5 5 5 5 5 5 5

Код:

rows = 5num = rowsfor i in range(rows, 0, -1):for j in range(0, i):print(num, end=' ')print('\r')

6. Пирамида из чисел, расположенных в обратном порядке


Желаемый результат:

12 13 2 14 3 2 15 4 3 2 1

Код:

rows = 6for row in range(1, rows):for column in range(row, 0, -1):print(column, end=' ')print("")

7. Обратная полупирамида из чисел


Желаемый результат:

0 1 2 3 4 5 0 1 2 3 4 0 1 2 3 0 1 2 0 1

Код:

rows = 5for i in range(rows, 0, -1):for j in range(0, i + 1):print(j, end=' ')print('\r')

8. Пирамида из натуральных чисел меньше 10


Желаемый результат:

12 3 45 6 7 8 9

Код:

currentNumber = 1stop = 2rows = 3 # Количество строк, из которых состоит пирамидаfor i in range(rows):for column in range(1, stop):print(currentNumber, end=' ')currentNumber += 1print("")stop += 2

9. Пирамида из чисел от 10, расположенных в обратном порядке


Желаемый результат:

13 26 5 410 9 8 7

Код:

start = 1stop = 2currentNumber = stopfor row in range(2, 6):for col in range(start, stop):currentNumber -= 1print(currentNumber, end=' ')print("")start = stopstop += rowcurrentNumber = stop

10. Пирамида из определённых наборов цифр


Желаемый результат:

11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 1

Код:

rows = 6for i in range(1, rows + 1):for j in range(1, i - 1):print(j, end=" ")for j in range(i - 1, 0, -1):print(j, end=" ")print()

11. Обратная пирамида из связанных чисел


Желаемый результат:

5 4 3 2 1 1 2 3 4 55 4 3 2 2 3 4 55 4 3 3 4 55 4 4 55 5

Код:

rows = 6for i in range(0, rows):for j in range(rows - 1, i, -1):print(j, '', end='')for l in range(i):print('', end='')for k in range(i + 1, rows):print(k, '', end='')print('\n')

12. Пирамида из чётных чисел


Желаемый результат:

10 10 8 10 8 6 10 8 6 4 10 8 6 4 2

Код:

rows = 5LastEvenNumber = 2 * rowsevenNumber = LastEvenNumberfor i in range(1, rows+1):evenNumber = LastEvenNumberfor j in range(i):print(evenNumber, end=' ')evenNumber -= 2print("\r")

13. Пирамида из наборов чисел


Желаемый результат:

00 10 2 40 3 6 90 4 8 12 160 5 10 15 20 250 6 12 18 24 30 36

Код:

rows = 7for i in range(0, rows):for j in range(0, i + 1):print(i * j, end=' ')print()

14. Пирамида, в каждой строке которой выводятся разные числа


Желаемый результат:

13 35 5 57 7 7 79 9 9 9 9

Код:

rows = 5i = 1while i <= rows:j = 1while j <= i:print((i * 2 - 1), end=" ")j = j + 1i = i + 1print()

15. Зеркально отражённая пирамида из чисел (прямоугольный числовой треугольник)


Желаемый результат:

11 21 2 31 2 3 41 2 3 4 5

Код:

rows = 6for row in range(1, rows):num = 1for j in range(rows, 0, -1):if j > row:print(" ", end=' ')else:print(num, end=' ')num += 1print("")

16. Равносторонний треугольник из символов *


Желаемый результат:

** ** * ** * * ** * * * ** * * * * ** * * * * * *

Код:

size = 7m = (2 * size) - 2for i in range(0, size):for j in range(0, m):print(end=" ")m = m - 1 # уменьшение m после каждого прохода циклаfor j in range(0, i + 1):# вывод пирамиды из звёздочекprint("*", end=' ')print(" ")

17. Перевёрнутый треугольник из символов *


Желаемый результат:

* * * * * ** * * * ** * * ** * ** **

Код:

rows = 5k = 2 * rows - 2for i in range(rows, -1, -1):for j in range(k, 0, -1):print(end=" ")k = k + 1for j in range(0, i + 1):print("*", end=" ")print("")

18. Пирамида из символов *


Желаемый результат:

** ** * ** * * ** * * * *

Код:

rows = 5for i in range(0, rows):for j in range(0, i + 1):print("*", end=' ')print("\r")

Какие задачи вы посоветовали бы прорешать тем, кто готовится к собеседованию по Python?

Источник: habr.com
К списку статей
Опубликовано: 11.04.2021 16:04:19
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Блог компании ruvds.com

Занимательные задачки

Python

Программирование

Алгоритмы

Разработка

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru