Привет, ребята! Вчера было Рождество, из-за этого я не мог ничего опубликовать! Я надеюсь, что вы все отлично провели время с семьей. А сегодня давайте вернемся к практике узоров! В прошлый раз мы сделали треугольник и нисходящий треугольник. Это была такая забавная практика (надеюсь, вы, ребята, чувствуете то же самое:)). Если вы пропустили это, вы всегда можете проверить мой последний пост!



И сегодня мы собираемся сгенерировать разные шаблоны, и это будет немного сложнее, чем предыдущее. Хорошо, теперь давайте начнем!

[Нисходящий треугольник 2 — только нечетные числа]

Итак, что мы хотим сделать, это.

*****
***
*

Это сложно, но, как всегда, сначала попытайтесь решить его самостоятельно. это не обязательно должен быть идеальный ответ, все дело в развитии вашего процесса решения проблем.

Хм… Я не вижу здесь шаблона… Что, если я изменю номера рядов, как показано ниже?

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

Если я удвою количество каждой строки, это будет 6 для строки 3, 4 для строки 2 и 2 для строки 1.

Таким образом, количество звездочек в каждой строке на 1 меньше, чем удвоенное число строк! Таким образом, мы можем написать код, как показано ниже.

[Пирамида]

0000*
000***
00*****
0*******

Я поставил «0» на шаблон, чтобы вы могли легко увидеть ошибку, когда она возникает, вместо этого вы можете поставить пробел. Решить это можно только с помощью оператора for, но тогда будет слишком много вложенных циклов, поэтому попробуем использовать и оператор If.

Я визуализировал шаблоны в числах. И сначала давайте сосредоточимся на последних числах каждой строки. Это 5,6,7,8. Таким образом, мы можем легко получить эти числа, добавив 4 к числам в каждой строке.

Хорошо, мы на полпути! Теперь надо разобраться, как ставить нули. Ты видишь то же, что и я? 1,2,3,4 и 4,3,2,1… Да! Нули (5-ряд). Поэтому я могу изменить код на

Этот! Но подождите... Если бы нули были 4,3,2,1... Что, если бы мы также установили строки в 4,3,2,1?

Тогда последние числа каждой строки (9-рядные), а нули - это числа каждой строки! Вау, чем код будет таким, как показано ниже.

На этот раз я поставил пробел вместо нуля. И код стал проще.

Итак, это все на сегодня, ребята. Некоторые из вас могли бы решить их по-другому, но если бы вы могли правильно понять шаблоны, это тоже могло бы быть ответом. Но дело в том, что среди этих ответов есть лучшие. Было бы неплохо, если бы вы сосредоточились на использовании меньшего количества операторов For и If для эффективного выполнения программы. Спасибо, что читаете, ребята! До встречи!