Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.87/106: Рейтинг темы: голосов - 106, средняя оценка - 4.87
1 / 1 / 0
Регистрация: 20.11.2013
Сообщений: 40
1

Изобразите на экране пирамиду из символов 'X

30.11.2013, 18:00. Показов 20609. Ответов 33
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При помощи цикла for изобразите на экране пирамиду из символов 'X'. Верхняя часть пирамиды должна выглядеть следующим образом:
х
ххх
ххххх
ххххххх
ххххххххх
Вся пирамида должна быть высотой не 5 линий, как изображено здесь, а 20 линий. Одним из способов ее построения может служить использование двух вложенных циклов, из которых внутренний будет заниматься печатанием символов 'X' и пробелов, а другой осуществлять переход на одну строку вниз.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.11.2013, 18:00
Ответы с готовыми решениями:

Изобразите на экране закрашенную пятиконечную звезду
1. Изобразите на экране закрашенную пятиконечную звезду в центре экрана и заставьте её...

Изобразить на экране пирамиду
Всем привет, задали задачу. Сделать надо через uses crt; Условие задачи: Изобразите на экране...

Циклический алгоритм. Изобразите на экране тараканьи бега
Изобразите на экране тараканьи бега(или авторалли, или конные соревнования, или большие гонки или...

Изобразите на экране движение бильярдного шара после столкновения со стенкой
Изобразите на экране движение шара по бильярду без луз.Используйте правило:угол отражения равен...

33
1 / 1 / 1
Регистрация: 23.10.2013
Сообщений: 25
09.07.2014, 12:53 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Nick Alte Посмотреть сообщение
Не всегда, конечно, но в большинстве случаев как раз означает.
Согласен. Но была конкретная задача с конкретным условием.
Часто начальство ставит условия при которых что либо нужно сделать, но при этом не принимает во внимание, что есть способы которыми можно гораздо проще добиться требуемого результата. И поэтому приходится делать с таким условием как давалось в задании.
0
Nick Alte
09.07.2014, 13:02
  #22

Не по теме:

Когда увидите начальство, диктующее, во сколько циклов надо решать задачу - бегите от него со всех ног и не оглядывайтесь.

0
1 / 1 / 1
Регистрация: 23.10.2013
Сообщений: 25
09.07.2014, 21:45 23
Прошу прощения что пишу так как есть, не знаю, как указать, что сообщение не по теме.
Я не работаю программистом, хоть и хочется научится писать программы. И у меня нет наставника, который мог бы чему нибудь научить программированию (хоть и хотелось бы).
Так вот, думаю многие сталкивались с указаниями начальства, и эти указания, как правило, очень далеки от того что нужно сделать и как нужно правильно сделать определенную работу. Только поэтому я упомянул начальство. Но в будущем, я надеюсь, я научусь программировать и с удовольствием прибегну или послушаюсь вашего совета. Честно говоря, очень не люблю, когда мне указывают как и что нужно сделать, особенно если задание я понимаю по своему (реализацию или то как оно должно быть в жизни) . Всем спасибо за помощь, я очень признателен вам.
0
0 / 0 / 0
Регистрация: 13.09.2014
Сообщений: 3
07.12.2014, 20:25 24
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    
#define N 40
...
    int l=0,k=0;
    for (int i=0;i<N;i++)
    {
        k=0;
        for(int j=i;j<N;j++)
        {
            if (i%2!=0) 
            { 
                    cout<<' ';
                    k++;
                    if (k==(N-i))
                    {
                        l=i; 
                        while (l>0)
                        {cout<<'x';l--;}
                    }
            }
        }
        if (i%2!=0) cout<<endl;
    }
(у Лафоре пирамида в другую сторону смотрит)
0
1 / 1 / 0
Регистрация: 22.03.2017
Сообщений: 6
22.03.2017, 04:57 25
При помощи цикла for изобразите на экране пирамиду из символов 'X'.
Верхняя часть пирамиды должна выглядеть следующим образом:
х
ххх
ххххх
ххххххх
ххххххххх
Вся пирамида должна быть высотой не 5 линий, как изображено здесь,
а 20 линий. Одним из способов ее построения может служить использова-
ние двух вложенных циклов, из которых внутренний будет заниматься
печатанием символов 'X' и пробелов, а другой осуществлять переход на
одну строку вниз. (Задача выглядит имменно так! выравнивание по правой стороне). Моё решение не идеал, но...

Добавлено через 50 секунд
#include <iostream>
#include <conio.h>
#include <iomanip>


using namespace std;



int main(){
int n = 21;
char ch = 'x';



for(int i = 0; i <= 20; i++, n--)
{
cout << setw(n);

for (int j = 1; j < i; j++)
{
cout << ch;

}

cout << endl;
}

getch();
return 0;
}
0
213 / 109 / 46
Регистрация: 12.12.2016
Сообщений: 399
11.05.2018, 12:51 26
Решил не плодить тем и спросить тут...
А как сделать такую пирамиду?
Х Х Х Х
*Х Х Х
**Х Х
***Х

На примере этого кода:
C++
1
2
3
4
5
6
7
8
9
    for(int i = 0 ; i < 10; i++)
    {
        for(int j = 10; j >= 0; j--)
        {
            if(j <= i) std::cout << 'X';
            std::cout << ' ';
        }
        std::cout << std::endl;
    }
0
0 / 0 / 0
Регистрация: 09.12.2019
Сообщений: 1
30.12.2019, 22:57 27
У меня получилось так, возможно переборщил с циклами for, но работает идеально…
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main() {
    cout << "Введите кол-во уровней пирамиды: "; int level; cin >> level;
    for (int line=0; line<level; line++) {
        for (int i=0; i<level-line-1; i++)
            cout << " ";
        for (int i=0; i<2*line+1; i++)
            cout << "x";
        for (int i=0; i<level-line-1; i++)
            cout << " ";
        cout << endl;
    }
    return 0;
}
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
30.12.2019, 23:14 28
Цитата Сообщение от MURADDDD Посмотреть сообщение
нигде не могу найти информацию о стд:: стринг? ссылку не подскажете?
признайся честно, ты нашёл галочку "не отображать результаты поиска"?
0
zayats80888
30.12.2019, 23:19
  #29

Не по теме:

AndryS1, вроде уже не первый день на форуме, на дату поста хоть иногда смотрите :)

0
AndryS1
30.12.2019, 23:44
  #30

Не по теме:

Цитата Сообщение от zayats80888 Посмотреть сообщение
AndryS1, вроде уже не первый день на форуме, на дату поста хоть иногда смотрите :)
меня сбило с толку что появилось новое сообщение в теме)

0
4064 / 3318 / 924
Регистрация: 25.03.2012
Сообщений: 12,493
Записей в блоге: 1
31.12.2019, 10:27 31
mpol, и что же понятного в том как реализовать с одним циклом? Это могут делать только те кто уже хорошо понимает и циклы и массивы и классы и ООП и хорошо знает стандартную библиотеку.

Я очень удивлён, что вам пример выше так сразу "понятен", а как сделать с двумя циклами - нет.
0
AndryS1
31.12.2019, 14:41
  #32

Не по теме:

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
mpol, и что же понятного в том как реализовать с одним циклом? Это могут делать только те кто уже хорошо понимает и циклы и массивы и классы и ООП и хорошо знает стандартную библиотеку.
Я очень удивлён, что вам пример выше так сразу "понятен", а как сделать с двумя циклами - нет.
Дату сообщения mpol посмотрите)

0
Комп_Оратор)
Эксперт по математике/физике
8949 / 4703 / 629
Регистрация: 04.12.2011
Сообщений: 13,999
Записей в блоге: 16
01.01.2020, 05:15 33
Лучший ответ Сообщение было отмечено analogov net как решение

Решение

Цитата Сообщение от AndryS1 Посмотреть сообщение
Дату сообщения mpol посмотрите)
Дык, пирамиды же вечная тема.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
#include <ctime>
#include <iomanip>
#include <windows.h>
using namespace std;
 
void greenTree(int width)
{
    std::srand(unsigned(std::time(0)));
 
    int half = width/2 ;
    for(int i=0; i<half; i++)
    {
        cout.fill(' ');
        cout<<setw(half-i);
        for(int j=1; j<2*i; ++j)cout<<(std::rand()%2?'x':'*');
        cout<<endl;
    }
}
 
int main()
{
    HANDLE output;
    COORD cursor;
    output = GetStdHandle(STD_OUTPUT_HANDLE);
    cursor.X = 0;
    cursor.Y = 0;
 
    std::srand(unsigned(std::time(0)));
 
    int width=35, repeats=10, pause=1000;
 
    for(int i=0; i<repeats; ++i)
    {
        Sleep(pause);
        greenTree(width);
        if(i!=repeats-1){
            SetConsoleCursorPosition(output,cursor);
 
        }
    }
        cout<<"\n\tHappy New Year!\n";
        cin.get();
        return 0;
}
3
0 / 0 / 0
Регистрация: 24.11.2021
Сообщений: 5
22.12.2021, 14:25 34
У меня в той же книге пирамидка выровнена по правому краю, мб издание другое но если кому надо то вот, как раз 2 цикла, один из них вложен)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <iomanip>
using namespace std;
 
int main()
{
    for (int i = 19; i > 0; i--) {
        int j = 20 - i;
        cout << setw(i);
        for (j; j > 0; j--) {
            cout << "X";
        }
        cout << endl;
    }
 
 
    return 0;
}
0
22.12.2021, 14:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2021, 14:25
Помогаю со студенческими работами здесь

Разработка программы на языке Ассемблер, рисующую на экране пирамиду
Здравствуйте, уважаемые коллеги! Помогите пожалуйста написать программу, рисующую на экране...

Изобразите на экране прямую, вращающуюся в плоскости экрана вокруг одной из своих точек.
вообщем вот такое задание:Изобразите на экране прямую, вращающуюся в плоскости экрана вокруг одной...

Используя метод Canvas, изобразите на экране график функции y=ax2+b, где a≠0. Параметры a,b задаются пользователем
Используя метод Canvas, изобразите на экране график функции y=ax2+b, где a≠0. Параметры a,b...

Вывести пирамиду символов
Вывести пирамиду символов,как показано на рисунке.Глубину пирамиды -число строк,опеределяемых...


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

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru