Форум программистов, компьютерный форум CyberForum.ru

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

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

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

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

Вывести на экран треугольник из символов '*' вида:
*
***
*****
*******
Высота задается с клавиатуры
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2016, 20:18     Вывести на экран треугольник из звездочек
Посмотрите здесь:
C++ Вывести в консоли треугольник из звездочек
Вывести на экран ромб из звездочек C++
Нарисовать перевернутый треугольник из звездочек (цикл while) C++
появилась загвоздка с функцией. нужно вывести на экран строку, сост. из звездочек. Длина строки-параметр функциииз звезд. длина строки - C++
C++ Вывести квадрат из звездочек
C++ Вывести два треугольника из звездочек
C++ Вывести в консоль бабочку из звездочек
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Байт
Эксперт C
15674 / 10001 / 1500
Регистрация: 24.12.2010
Сообщений: 18,792
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");
}
Псевдокод
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;
    }
}
Байт
Эксперт C
15674 / 10001 / 1500
Регистрация: 24.12.2010
Сообщений: 18,792
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;
  ....
SpBerkut
27.10.2016, 19:33
  #5

Не по теме:

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

Байт
27.10.2016, 20:49
  #6

Не по теме:

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

TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
3641 / 1916 / 505
Регистрация: 18.10.2014
Сообщений: 3,480
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;
}
ValeryS
Модератор
6542 / 5008 / 461
Регистрация: 14.02.2011
Сообщений: 16,655
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;
}
может где то и наврал с позиционированием
Байт
Эксперт C
15674 / 10001 / 1500
Регистрация: 24.12.2010
Сообщений: 18,792
28.10.2016, 08:29     Вывести на экран треугольник из звездочек #9
А вот у printf есть чудный формат
C++
1
printf("%-*.*s", len, len, ""); // Печатает len пробелов
SpBerkut
28.10.2016, 08:39
  #10

Не по теме:

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

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2016, 20:02     Вывести на экран треугольник из звездочек
Еще ссылки по теме:
Написать функцию, которая выводит на экран строку, состоящую из звездочек C++
Вычислить в подпрограмме значение выражения и вывести линию из звездочек C++
Как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на экран? C++
В исходном предложении поставить между словами вместо пробела вставьте символ '*', вывести полученный текст и количество звездочек C++
C++ Создать базовый класс Треугольник с 2 наследниками: Равносторонний треугольник, Прямоугольный треугольник

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

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

Чтобы напечатать len пробелов достаточно printf("%*s", len, "").
Yandex
Объявления
28.10.2016, 20:02     Вывести на экран треугольник из звездочек
Ответ Создать тему
Опции темы

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