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

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

Войти
Регистрация
Восстановить пароль
 
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
#1

Не получается обратный треугольник - C++

23.07.2012, 17:44. Просмотров 495. Ответов 4
Метки нет (Все метки)

Я сделал 2 треугольника

Вариант 1.
#include <iostream.h>
int main ()
{

for(int i=10;i>=0;i--)
{

for(int j=0;j<=i;j++)
{ cout << " * ";

}
cout<<endl;}

return 0;
}
***********
**********
*********
********
*******
******
*****
****
***
**
*

Вариант 2.
#include <iostream.h>
int main ()
{

for(int i=10;i>=0;i--)
{

for(int j=10;j>=i;j--)
{ cout << " * ";

}
cout<<endl;}

return 0;
}

*
**
***
****
*****
******
******* и т.д.

Теперь нужно сделать вариант 3, чтобы получилось так
---------*
--------**
-------***
------****

То есть обратный, чтобы звёздочки начинались с обратной стороны. Уже день мучаюсь, не могу понять, так как если второй For неправильный он автоматически переходит к первому For, то есть дальше до 10 его не считает, соответственно звёздочки с обратной стороны не могу поставить.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2012, 17:44     Не получается обратный треугольник
Посмотрите здесь:

C++ треугольник не получается
Обратный порядок.. C++
обратный enum C++
Обратный обход C++
C++ Дано натуральное число m. Найти такое натуральное n, что двоичная запись n получается из двоичной записи m изменением порядка цифр на обратный (
C++ Обратный корень
Пустой прямоугольный треугольник. Размер катетов – n. ПОМОГИТЕ СДЕЛАТЬ ЕГО ПУСТЫМ. ОН ПОЛНЫЙ У МЕНЯ ПОЛУЧАЕТСЯ C++
Обратный код C++
C++ Класс треугольник с произвольным классом - равнобедренный треугольник
C++ Создать абстрактный класс "Треугольник" и производный - "Равнобедренный треугольник"
C++ Обратный порядок
C++ Создать базовый класс Треугольник с 2 наследниками: Равносторонний треугольник, Прямоугольный треугольник

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
22314 / 10719 / 1743
Регистрация: 12.02.2012
Сообщений: 17,793
23.07.2012, 18:02     Не получается обратный треугольник #2
Вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream.h>
 
int main(int argc, char* argv[])
{
    int i,j;
 
    for (i=1; i<=10; i++)
    {
        for (j=1; j<=10; j++)
            if (j <= (10-i))
                cout << " ";
            else
                cout << "*";
        cout << endl;
    }
 
    return 0;
}
Миниатюры
Не получается обратный треугольник  
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
23.07.2012, 18:11  [ТС]     Не получается обратный треугольник #3
Цитата Сообщение от Catstail Посмотреть сообщение
Вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream.h>
 
int main(int argc, char* argv[])
{
    int i,j;
 
    for (i=1; i<=10; i++)
    {
        for (j=1; j<=10; j++)
            if (j <= (10-i))
                cout << " ";
            else
                cout << "*";
        cout << endl;
    }
 
    return 0;
}
Спасибо, но я не знал вот эти вот операторы (int argc, char* argv[]). Теперь надо будет спросить у учителя,а можно ли сделать без этих операторов (int argc, char* argv[])?
Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
23.07.2012, 18:14     Не получается обратный треугольник #4
Что-то городил типа такого:
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
49
50
51
52
53
54
55
56
57
#include <iostream>
 
int main()
{    
    const int size = 10;
    int i, j;
    
    // каждый по отдельности
    for(i = 0; i < size; ++i)
    {
        for(j = 0; j <= i; ++j)
            std::cout << "*";  
        std::cout << "\n";
    }
    
    for(i = 0; i < size; ++i)
    {
        for(j = 0; j < size - i; ++j)
            std::cout << "*";
        std::cout << "\n";
    }
    
    for(i = 0; i < size; ++i)
    {
        for(j = 0; j < size; ++j)
            std::cout << (j >= i ? "*" : " ");
        std::cout << "\n";
    }
    
    for(i = 0; i < size; ++i)
    {
        for(j = 0; j < size; ++j)
            std::cout << (j >= size - i - 1 ? "*" : " ");
        std::cout << "\n";
    }
    std::cout << "\n";
    
    // все сразу
    for(i = 0; i < size; ++i)
    {
        for(j = 0; j < size; ++j)
            std::cout << (j <= i ? "*" : " ");
            
        for(j = 0; j < size; ++j)
            std::cout << (j < size - i ? "*" : " ");
            
        for(j = 0; j < size; ++j)
            std::cout << (j >= i ? "*" : " ");
            
        for(j = 0; j < size; ++j)
            std::cout << (j >= size - i - 1 ? "*" : " ");
         
        std::cout << "\n";
    }
    
    return 0;
}
Добавлено через 39 секунд
Цитата Сообщение от Parilo Посмотреть сообщение
можно ли сделать без этих операторов
Можно, это для передачи параметров из командной строки. В этой задаче можно обойтись
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
23.07.2012, 18:14  [ТС]     Не получается обратный треугольник #5
Оказывается можно, уже проверил работает.
#include <iostream.h>
int main ()
{

for(int i=0;i<=10;i++)
{

for(int j=0;j<=10;j++)
{ if (j <= (10-i))
cout << " ";
else
cout << "*";

}
cout<<endl;}

return 0;
}

Спасибо большое
Yandex
Объявления
23.07.2012, 18:14     Не получается обратный треугольник
Ответ Создать тему
Опции темы

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