Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
WebNightmare
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 1
#1

Вывести на экран треугольник из звездочек - C++

26.10.2016, 20:18. Просмотров 1402. Ответов 10
Метки нет (Все метки)

Вывести на экран треугольник из символов '*' вида:
*
***
*****
*******
Высота задается с клавиатуры
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2016, 20:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести на экран треугольник из звездочек (C++):

Вывести в консоли треугольник из звездочек - C++
Нужно написать программу,которая выводит на экран изображение .Программа может использовать только три оператора вывода: , та . В...

Вывести на экран ромб из звездочек - C++
Запишите оператор или набор операторов, печатающих на экране заданную фигуру.

Нарисовать перевернутый треугольник из звездочек (цикл while) - C++
*** ..** ...*

появилась загвоздка с функцией. нужно вывести на экран строку, сост. из звездочек. Длина строки-параметр функциииз звезд. длина строки - - C++
Я видела, что на форуме есть подобные задачи, но ни одно из их решений не работает на моем dev cpp.:( вот вариант решения, но он не...

Вывести квадрат из звездочек - C++
Напишите программу

Вывести два треугольника из звездочек - C++
Вывести на экран следующую последовательность символов * * * * * * * _* * * * * ___* * * ____ * __ * * * _* * * * * * * * * *...

10
Байт
Диссидент
Эксперт C
17205 / 11275 / 1787
Регистрация: 24.12.2010
Сообщений: 22,201
27.10.2016, 12:17 #2
C
1
2
3
4
for(i=1; i<=h; i++) {
  for(j=0; j<i; j++) printf("*");
  printf("\n");
}
Псевдокод
0
SpBerkut
Объявлятель переменных
908 / 234 / 113
Регистрация: 24.09.2011
Сообщений: 875
Завершенные тесты: 2
27.10.2016, 18:45 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
int main()
{
    int h{};
    std::cin >> h;
    for (int i = 0; i < h; i++) {
        std::cout << '*';
        for (int j = 0; j < i; j++) {
            std::cout << "**";
        }
        std::cout << std::endl;
    }
}
0
Байт
Диссидент
Эксперт C
17205 / 11275 / 1787
Регистрация: 24.12.2010
Сообщений: 22,201
27.10.2016, 19:00 #4
SpBerkut, имхо, за счет организации цикла не соответствующей задаче приходится писать лишнюю строчку (8). Беда невелика, конечно... Но уж больно мы привыкли к стандартному циклу for(i=0; i<n; i++)
Я к тому, что когда приходится пройтись, скажем, по положительным числам, кратным 5, народ пишет
C++
1
2
3
for(i=0; i<n; i+) {
  if (i!=0 && i%5) continue;
  ....
0
SpBerkut
27.10.2016, 19:33
  #5

Не по теме:

Байт, я честно несколько раз перечитал Ваш пост, но так и не понял, к чему Вы клоните.

0
Байт
27.10.2016, 20:49
  #6

Не по теме:

Цитата Сообщение от SpBerkut Посмотреть сообщение
к чему Вы клоните.
Вы знаете, это опять моя невнимательность. Там надо 1 - 3- 5 звездочек, а я прочел 1-2-3-...
Значит, все что я понаписал в этом топике, можно удалить-зачеркнуть... Но этого не принято. Так что вы просто не обращайте внимания...

0
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
4009 / 2232 / 557
Регистрация: 18.10.2014
Сообщений: 3,853
27.10.2016, 23:38 #7
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <iomanip>
 
int main()
{
    unsigned n = 10;
    
    std::cout << std::setfill('*');
    for (unsigned i = 0; i < n; ++i)
      std::cout << std::setw(i * 2) << '*' << std::endl;
}
1
ValeryS
Модератор
6781 / 5189 / 495
Регистрация: 14.02.2011
Сообщений: 17,411
27.10.2016, 23:55 #8
Цитата Сообщение от Байт Посмотреть сообщение
Там надо 1 - 3- 5 звездочек, а я прочел 1-2-3-...
сдается мне что рисунок перевран движком форума
нужно что то типа
Код
 
    *
   ***
  *****
 *******
вот такое решение
C++
1
2
3
4
5
6
7
8
9
10
11
cin >> h;
int l=h*2-1
for(int i=1;i<=l;i+=2)
{
 
for(int j=0;j<(l-i)/2;j++)
  cout<<" ";
for(int j=0;j<i;j++)
  cout<<"*";
cout<<endl;
}
может где то и наврал с позиционированием
0
Байт
Диссидент
Эксперт C
17205 / 11275 / 1787
Регистрация: 24.12.2010
Сообщений: 22,201
28.10.2016, 08:29 #9
А вот у printf есть чудный формат
C++
1
printf("%-*.*s", len, len, ""); // Печатает len пробелов
1
SpBerkut
28.10.2016, 08:39
  #10

Не по теме:

Цитата Сообщение от ValeryS Посмотреть сообщение
рисунок перевран движком форума
Кто-то не может в трифорс.

0
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
4009 / 2232 / 557
Регистрация: 18.10.2014
Сообщений: 3,853
28.10.2016, 20:02 #11
Цитата Сообщение от Байт Посмотреть сообщение
А вот у printf есть чудный формат
C++
1
printf("%-*.*s", len, len, ""); // Печатает len пробелов
Не совсем понятно, к чему тут .* часть формата, ибо она в этом случае ничего не делает вообще. Также неясно, зачем -.

Чтобы напечатать len пробелов достаточно printf("%*s", len, "").
0
28.10.2016, 20:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2016, 20:02
Привет! Вот еще темы с ответами:

Вывести в консоль бабочку из звездочек - C++
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ...

Написать функцию, которая выводит на экран строку, состоящую из звездочек - C++
Написать функцию, которая выводит на экран строку, состоящую из звездочек. Длина строки (количество звездочек) является параметром функции.

Вычислить в подпрограмме значение выражения и вывести линию из звездочек - C++
Помогите с заданиями. Необходимо 2 подпрограммы в одной программеЮ с вызовом функций. Задания такие: 1. Рассчитать значение x, определив...

Как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на экран? - C++
как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на экран?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.