Напишите программу которая выводит указанный треугольник состоящий из звездочек
Перейти к содержимому

Напишите программу которая выводит указанный треугольник состоящий из звездочек

  • автор:

глупо это задавать но не получается [закрыт]

Хотите улучшить этот вопрос? Добавьте больше подробностей и уточните проблему, отредактировав это сообщение.

Закрыт 2 года назад .

На вход программе подается натуральное число n \, (n \ge 2)n(n≥2) – катет прямоугольного равнобедренного треугольника.

Напишите программу, которая выводит звездный треугольник в соответствии с примером.

Формат входных данных На вход программе подается одно натуральное число n \, (n \ge 2)n(n≥2)

Формат выходных данных Программа должна вывести треугольник в соответствии с условием задачи.

Step 1 (S-14666)

Еще один вид цикла, который активно используется в языке Python, этот цикл for. Цикл for, позволяет делать повторяющиеся действия с последовательностью элементов. В простейшем случае это может выглядеть следующим образом.

S-14666-1.png

В этом примере мы перебираем все элементы последовательности чисел — 2, 3, 5 и выводим квадрат для каждого из них. Разберем из каких элементов состоит конструкция for? Вначале пишем ключевое слово for, за ним следует переменная, которая может принимать значения из некоторой последовательности элементов. Далее следует ключевое слово in и уже за ним мы указываем последовательность элементов (в данном случае мы просто перечислили элементы через запятую) и ставим двоеточие. В теле цикла мы пишем команды, которые будут выполняться для каждого значения из последовательности элементов.

Сначала i примет значение 2 и будет вычислен и выведен квадрат значения i — число 4. На следующей итерации цикла i станет равной 3 и выведется — 9. И так далее, пока цикл не переберет все значения из последовательности элементов.

Также цикл for очень часто используется совместно с функцией range, которая в простейшем случае принимает один параметр n (целое число) и возвращает последовательность чисел от 0 до n, исключая n.

S-14666-2.png

В приведенном выше примере, это будет последовательность чисел от 0 до 9 включительно. Если мы выполним следующий код:

S-14666-3.png

программа напечатает квадраты чисел от 0 до 9:

Посмотрим, как выглядит функция range в общем случае.

S-14666-6.png

Функция range возвращает последовательность чисел. Первый случай, когда функция range принимает только один параметр мы уже рассмотрели.

Во втором случае функция range принимает на вход два параметра. Они задают интервал в пределах которого будут находится числа возвращаемой последовательности. Первый параметр — число, с которого начинается последовательность, второй — число, верхний предел, достигнув которого итерации прекращаются. Очевидно, что оно не будет входить в последовательность. Таким образом, range(2, 5) вернет последовательность чисел с 2 до 5 с шагом 1, не включая 5.

S-14666-4.png

В последнем случае функция range принимает на вход три параметра. Первые два аргументы аналогичны, описанным во втором случае, а третий аргумент задает шаг с которым будут перебираться элементы последовательности. Например:

вернет последовательность — 2, 6, 10, 14.

S-14666-5.png

Для Python это стандартный подход, когда при использовании интервалов левая граница (начальное значение последовательности) включается в интервал, а правая (число, устанавливающее верхнюю границу последовательности) — нет. Это нужно учитывать при определении интервалов, допустим, вам необходимо вывести числа от 0 до 5 включительно, тогда функция range будет выглядеть как range(5 + 1). Другими словами, если мы хотим, чтобы правая граница интервала была включена в результирующую последовательность, при передаче в функцию range ее нужно увеличить на 1.

Тот факт, что функция может иметь несколько параметров, часто записывают таким вот образом:

Здесь заданы три параметра, при чем первый и третий имеют значения по умолчанию равные 0 и 1 соответственно. Второй параметр to не имеет значения по умолчанию, поэтому мы обязаны всегда его передавать в вызов функции.

Рассмотрим пример использования цикла for. Ранее мы уже написали программу, которая выводит треугольник из звездочек, немного изменим условие, пусть теперь программа выводит квадрат из звездочек. Пользователь введет число n — длину стороны квадрата, а программа выводит n строчек, каждая из которых состоит из n звездочек.

S-14666-8.png

Посмотрев на задачу, можно заметить, что нам нужно вывести n одинаковых строк, состоящих из n звездочек.

Как создавать строку из n звездочек мы уже разбирали на предыдущих шагах.

S-14666-7.png

В первой строке мы читаем строку, которую ввел пользователь и преобразуем ее в число. Далее нам нужно n раз повторить вывод строки состоящей из n звездочек. Для этого мы используем цикл for и функцию range с одним параметром (числом n). Такую конструкцию можно использовать в любой ситуации, когда нам нужно повторить какое-либо действие n раз.

Русские Блоги

Прочитайте целое число N, N нечетно, и выведите равносторонний треугольник, состоящий из символов звездочки.

Одна звездочка в первом ряду, три звездочки во втором ряду, пять звездочек в третьем ряду и т. Д., А в последнем ряду всего N звездочек.

Анализ идей:

Оптимистично оценивает требования к названию, это означает, что на входе 1, звездочке 1 выводится в первой строке без пробелов, 3, 1 звездочке в первой строке и 1 пробеле до и после, 3 звездочек во второй строке и нет Пробелы: введите 5, 1 звездочку в первом ряду и 2 пробела до и после, 3 звездочки во втором ряду и 1 звездочку спереди и сзади, 5 звездочек в третьем ряду и без пробелов спереди и сзади и т. Д. В то же время вы можете получить:

Количество выходных линий = (количество входных + 1) // 2.

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

Количество выходных звездочек = (переменная цикла i (начиная с 0) + 1) * 2 -1;

Тогда возникает вопрос о количестве пробелов, без пробелов в конце:

Количество пробелов в первой строке = количество оставленных пробелов в звездочке (одинаковое количество пробелов в левой и правой части звездочки) * 2,

Звездочка слева: пробел = (входной номер + 1) // 2 = номер выходной строки.

Таким образом, число выходных строк, количество звездочек и количество пробелов решаются(Вы должны вывести пробел до и после прохождения)

Треугольник звездочек в Python

Я пытаюсь создать программу, которая позволяет мне создавать «пирамиду» или «треугольник» с помощью звездочек в программе Python. Я уже начал код, но не могу понять его.

Вот код, который мне удалось выяснить:

Конечный результат должен отражать это!

Stephanie Elizabeth Tipple

Когда totalRows равен 4, в треугольнике 9 звезд или 10? Когда totalRows равен 5, количество звездочек равно 12 или 15? То есть треугольник полый или заполненный? — James Waldby — jwpat7

Что не так с вашим текущим кодом? — Marcin

10 ответы

Небольшая модификация решения RParadox для соответствия требованиям:

Когда я собираю его, я получаю синтаксическую ошибку. Вот как это выглядит сейчас: def треугольник(): totalRows = int(eval(input(«Насколько большой?»))) для currentRows в диапазоне (1, totalRows+1): для currentCol в диапазоне (1, currentRows+1) : Распечатать(««, end = » «) для i в диапазоне (totalRows + 1): numWhite = totalRows — я печатаю ‘ ‘ * numWhite + ‘ ‘ * я треугольник () — Стефани Элизабет Типпл

Если вы вытащите for currentRows. loop (все три строки) и вместо этого скопируйте приведенный выше фрагмент, все должно быть в порядке — дайте мне знать, если это не удастся. — Хорхе Аранда

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

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