• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Rysowanie figur C++

Aruba Cloud - Virtual Private Server VPS
0 głosów
13,672 wizyt
pytanie zadane 15 lutego 2017 w C i C++ przez Lahimowicz Początkujący (300 p.)
edycja 15 lutego 2017 przez Lahimowicz
X
XX
XXX
XXXX
XXXXX
XXXXXX
XXXXXXX

              X
            XX
          XXX
        XXXX
      XXXXX
   XXXXXX
XXXXXXX

               X
             XX
           X   X
         X     X
       X       X
     X         X
   XXXXXXX



XXXXXXXXXXX
X                     X
X                     X 
X                     X
X                     X
X                     X
X                     X
X                    X  
XXXXXXXXXXX




XXX
XXX
XXX
XXX
XXX
XXXXXXX
XXXXXXX
XXXXXXX

Cześć. Mam problem ponieważ nie do końca rozumiem jak powstają takie figury. Niby rozwiązania w google znalazłem ale czy mógłby ktoś mi wytłumaczyć jak powstają takie np figury:                                     
 

Będę wdzięczny jeżeli ktoś napisze mi programy na te figury. Chyba że ktoś woli dokładnie wytłumaczyć jak to należy zrobić dlaczego tak lub tak.

Dzięki ;)

komentarz 15 lutego 2017 przez Lahimowicz Początkujący (300 p.)
Fajne że rozwaliło figury. W każdym razie chodzi mi o kwadrat bez środka o trójkąt pełny i pusty od lewej lub od prawej itp.
komentarz 15 lutego 2017 przez mbabane Szeryf (79,260 p.)
moze zrob screena i wklej (ewentualnie wstaw te figury w blok kodu, moze sie nie rozjada)
komentarz 15 lutego 2017 przez Lahimowicz Początkujący (300 p.)
tak czy siak rozwala te figury. Mniejsza o to. Chodzi o normalne piramidy trójkąty prostokąty pełne puste itp.

1 odpowiedź

0 głosów
odpowiedź 15 lutego 2017 przez degrek Bywalec (2,380 p.)

Zamieszczam kod wraz z komentarzami, spróbuj w ramach ćwiczeń zrobić trójkąt ale np do góry nogami.

#include <iostream>
using namespace std;

void drawFullSquare(int height);
void drawEmptySquare(int height);
void drawEmptyTriangle(int height);
void drawFullTriangle(int height);

int main()
{
    drawFullSquare(5);
    drawEmptySquare(6);
    drawFullTriangle(7);
    drawEmptyTriangle(8);
}

void drawFullSquare(int height)
{
    cout << "\nFull Square:\n";
    for(int i = 0; i < height; i++)             //ta petla odpowiada za rysowanie wierszy czyli ile dokaldnie ich ma byc
    {
        for(int j = 0; j < height; j++)        // z kolei taodpowiada za rysowanie kolumn czyli ile "X" ma byc w wierszu
        {
            cout << "X";                       //wypisujemy X
        }
        cout << endl;                          //po jednym obiegu głównej petli wukonujmey przeskok do nastepnej lini
    }
}

void drawEmptySquare(int height)
{
    cout << "\nEmpty Square:\n";
    for(int i = 0; i < height; i++)
    {
        for(int j = 0; j < height; j++)                 
        {                                                              //waruenk if okresla kiey rysujemy linie, mianowicie sa to krance figury
            if(i == 0 || i == height-1 || j == 0 || j == height-1)     //czyli nasz poczatek petli i jej koniec bo wtedy rysujemy elemnety  
                cout << "X";                                           //lezace na pierwszej i ostaniej pozycji       
            else
                cout << " ";
        }
        cout << endl;
    }
}

void drawFullTriangle(int height)
{
    cout << "\nFull Triangle:\n";
    for(int i = 0; i < height; i++)
    {
        for(int j = 0; j <= i; j++)           // musimy wyznaczyc przekatna, jak zauwazyc jest ona wtedy kiedy i == j; ponizej rysunek
        {
                cout << "X";
        }
        cout << endl;
    }
}

/*
00 01 02 03 04 ...
10 11 12 13 14 ...
20 21 22 23 23 ...
30 31 32 33 34 ...
40 41 42 43 44 ...
pierwsza liczba to nasza  zmienna "i" druga "j"
*/

void drawEmptyTriangle(int height)
{
    cout << "\nEmpty Triangle:\n";
    for(int i = 0; i < height; i++)
    {
        for(int j = 0; j < height; j++)
        {
            if(j==0 || i == height-1 || i == j)     //analogicznie :D
                cout << "X";
            else
                cout << " ";
        }
        cout << endl;
    }
}

 

Podobne pytania

0 głosów
2 odpowiedzi 367 wizyt
pytanie zadane 28 maja 2017 w C i C++ przez BinaryMan Stary wyjadacz (12,620 p.)
0 głosów
2 odpowiedzi 3,300 wizyt
pytanie zadane 19 stycznia 2017 w C# przez kondzio11 Nowicjusz (160 p.)
0 głosów
1 odpowiedź 1,905 wizyt
pytanie zadane 26 listopada 2016 w C# przez pclolowicz Użytkownik (500 p.)

93,335 zapytań

142,330 odpowiedzi

322,411 komentarzy

62,670 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...