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

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

Восстановить пароль Регистрация
 
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
04.02.2014, 15:24     Вывести на экран фигуру из символов #1
День добрый! Помогите, пожалуйста, вывести формулу. Суть задачи такова: с помощью вложенной конструкции нужно вывести на экран косой крест, вписанный в квадрат со стороной, указанной пользователем. В итоге должна получиться такая штука (см. Снимок).
Вот я написал такой код для квадрата со стороной 10 (см. Снимок 2). Подскажите, какой формулой объединить условия, обведенные красной рамкой, чтобы программа работала для квадрата с любой стороной, заданной пользователем?
Миниатюры
Вывести на экран фигуру из символов  
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.02.2014, 15:24     Вывести на экран фигуру из символов
Посмотрите здесь:

C++ Ввести массив символов, а затем вывести его на экран
Вывести на экран линию из символов C++
C++ Вывести строку символов на экран задом наперед
C++ Вывести на экран код и тип вводимых символов
Вывести на экран геометрическую фигуру, заполняя ее символом * C++
Вывести на экран следующую последовательность символов C++
Вывести строки символов на экран C++
При помощи функции вывести на экран фигуру в виде буквы "Н". C++
Вывести на экран фигуру из * C++
C++ Вывести на экран геометричесую фигуру, которая состоит из символов "*"
C++ Вывести на экран таблицу 10 следующих за заданным символов
C++ Строка: вывести на экран самую повторяющуюся комбинацию символов.

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
04.02.2014, 17:33     Вывести на экран фигуру из символов #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
void Func(unsigned size) {
    for (unsigned i = 0; i < size; ++i) {
        for (unsigned j = 0; j < size; ++j) {
            char ch = (((i == j) || (size - j - 1 == i)) ? '*' : ' ');
            std::cout << ch;
        }
        std::cout << std::endl;
    }
}
 
int main() {
 
    Func(5);
 
    Func(10);
 
    return 0;
}
kirviza
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 5
04.02.2014, 17:58     Вывести на экран фигуру из символов #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
using namespace std;
 
int main(void)
{
    int n;
    cout<<"vvedite razmer kvadrata"<<endl;
    cin>>n;
 
    for(int i=0; i<n; i++){
        cout<<endl;
        for(int j=0; j<n; j++){
            if(i==j || (n-i)==j+1){
                cout<<'*';
            }
            else {
                cout<<' ';
            }
        }
    }
    return 0;
}
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
04.02.2014, 19:33  [ТС]     Вывести на экран фигуру из символов #4
anmartex, kirviza, мда, а ларчик просто открывался... Большое спасибо!

Добавлено через 46 минут
Подскажите еще, пожалуйста, как ромб вписать в квадрат? Т.е. вывести такую же символьную фигуру, но в виде ромба.
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
05.02.2014, 17:54     Вывести на экран фигуру из символов #5
Цитата Сообщение от Donnerwetter Посмотреть сообщение
Подскажите еще, пожалуйста, как ромб вписать в квадрат? Т.е. вывести такую же символьную фигуру, но в виде ромба.
Вроде как-то так:
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
#include <iostream>
 
void Func(unsigned size) {
    unsigned halfSize = size / 2;
    for (unsigned i = 0; i < size; ++i) {
        for (unsigned j = 0; j < size; ++j) {
            char ch = (j == halfSize - i
                       || j == halfSize + i
                       || j == halfSize + i - size + 1
                       || j == halfSize - i + size - 1) ? '*' : ' ';
            std::cout << ch;
        }
        std::cout << std::endl;
    }
}
 
int main() {
 
    Func(5);
 
    Func(11);
 
    return 0;
}
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
05.02.2014, 18:18  [ТС]     Вывести на экран фигуру из символов #6
Цитата Сообщение от anmartex Посмотреть сообщение
Вроде как-то так:
Спасибо, я уже разобрался, сделал по аналогии с программой, рисующей крест.
Yandex
Объявления
05.02.2014, 18:18     Вывести на экран фигуру из символов
Ответ Создать тему
Опции темы

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