Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 20.11.2016
Сообщений: 21

Как сделать ёлочку из звездочек как на картинке?

17.12.2016, 11:23. Показов 1868. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, получилось сделать одну "ветку", пытаюсь вторую поместить под первую, но не выходит.. в чем ошибка?
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
46
47
48
char znachenie;
    cout << "Enter value from 1 to 3: ";
    cin >> znachenie;
    switch (znachenie)
    {
    case '1':
    {
        for (int i = 0, x = 9; i < 21; i++, x++)
        {
            for (int j = 0; j < 19; j++)
            {
                if /*1 ветка*/((i == 9 || j == 10 - i - 1) || (j >= 9 && j == x) ||
                    /*столб*/  ((i == 9 || (j == 5 && i >= 10 && i <= 13) || (i == 13 && j >= 5 && j <= 13) || (j == 13 && i >= 10 && i <= 13))))
                {
                    cout << '*';
                }
                else
                {
                    cout << ' ';
                }
            }
            cout << endl;
        }
        break;
    }
    case '2':
    {
        for (int i = 0, x = 9; i < 21; i++, x++)
        {
            for (int j = 0; j < 19; j++)
            {
                if /*1 ветка*/ ((i == 9 || j == 10 - i - 1) || (j >= 9 && j == x) ||
                    /*2 ветка*/ (i == 18 || j == 10 - i - 1) || (j >= 9 && j == x))                    
                {
                    cout << '*';
                }
                else
                {
                    cout << ' ';
                }
            }
            cout << endl;
        }
        break;
    }
    default:
        break;
    }
Название: Загрузки.png
Просмотров: 33

Размер: 11.3 Кб
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.12.2016, 11:23
Ответы с готовыми решениями:

Помогите создать ёлочку из звездочек
Очень надо!!! ПОМОГИТЕ! надо сделать ёлочку в с++ с помощью while

Как сделать поле из звездочек (16*16)
Ну я пробовал и ничего не получилось (как всегда): uses GraphABC; var a,b:integer; begin a:=0; b:=0; while (a&lt;&gt;16) do...

Как сделать такое как на картинке, используя массивы?
как сделать такое как на картинке, используя массивы? Вводиться ровно 16 любых символов, а потом они меняются местами

7
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
17.12.2016, 11:37
Ёлочка из звездочек =)
0
0 / 0 / 0
Регистрация: 20.11.2016
Сообщений: 21
17.12.2016, 11:40  [ТС]
это не совсем то что мне нужно
0
76 / 73 / 67
Регистрация: 18.09.2015
Сообщений: 234
17.12.2016, 12:28
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <string>
#include <iostream>
using namespace std;
 
 
void main()
{
    string tmp("   *\n  ***\n *****\n");
    for (int i = 0; i < 4; i++)
        cout << tmp;
    cout << "   *  \n";
}
0
0 / 0 / 0
Регистрация: 20.11.2016
Сообщений: 21
17.12.2016, 12:30  [ТС]
к сожалению строки пока не проходили
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.12.2016, 17:00
C++
1
const char *tmp = "   *\n  ***\n *****\n";
0
0 / 0 / 0
Регистрация: 20.11.2016
Сообщений: 21
17.12.2016, 17:05  [ТС]
MrGluck, мой код не правильный?
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.12.2016, 17:22
Лучший ответ Сообщение было отмечено mikassso как решение

Решение

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
#include <iostream>
 
void foo(const int N, const int shift = 0)
{
    for (int i=0; i < N/2; i++)
    {
        for (int k=0; k < shift; k++)
            std::cout << ' ';
        for (int j=0; j < N; j++)
            std::cout << (j == N/2 - i || j == N/2 + i ? '*' : ' ');
        std::cout << std::endl;
    }
    for (int k=0; k < shift; k++)
        std::cout << ' ';
    for (int i=0; i < N + !(N & 1); i++)
        std::cout << "*";
    std::cout << std::endl;
}
 
int main()
{
    const int a = 7, b = 11, c = 4;
    foo(a, (b-a) / 2);
    foo(a, (b-a) / 2);
    foo(b);
    foo(b);
    for (int i=0; i < 2; i++)
    {
        for (int j=0; j < b; j++)
            std::cout << (j == (b-c)/2 || j == (b+c)/2 ? '*' : ' ');
        std::cout << std::endl;
    }
    for (int j=0; j < b; j++)
        std::cout << (j >= (b-c)/2 && j <= (b+c)/2 ? '*' : ' ');
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.12.2016, 17:22
Помогаю со студенческими работами здесь

Как сделать так, чтобы было как на картинке?
Всем привет. Как сделать так, чтобы в поисковике выдавало как на картинке? Ато у меня пару ссылок друг за другом выдает...

Как сделать такое форматирование как на картинке?
Здравствуйте! Подскажите пожалуйста, как в ячейки обведенной красным сделать такое форматирование, чтобы большая скобка? офис 2003

Как сделать шапку сайта как на картинке?
У меня вот так получилось, хотя размеры такие же. Архив с кодом.

Как сделать такую прокрутку, как на картинке?
Кто знает, как реализовать такую функцию? На некоторых страницах контент больше, чем сайдбар. Нужно, что бы при прокрутке вниз...

Как сделать квадрат с текстом (как на картинке)
Здравствуйте как сделать такое же как на картинке


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru