Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z choinką c++

Ostatnio zmodyfikowano 2017-02-04 23:34
Autor Wiadomość
Wasiak123
Temat założony przez niniejszego użytkownika
Problem z choinką c++
» 2017-02-04 22:52:41
Mam tu taki kod, dlaczego nie wyświetla mi 20 linijek tylko 10? proszę o szybką odpowiedź! :)


#include <iostream>

using namespace std;

string stworzSpacje(int l)
{
    string rzad = "";

    for(int i=0; i<l; i++)
    {
        rzad = rzad + " ";
    }

   return rzad;
}

string stworzRzadChoinki(int l) //funkcja przyjmuj¹ca jeden argumenty typu integer
{
    string rzad = ""; // pusty ciag znakow

    for(int i=0; i<l; i++)
    {
      rzad = rzad + "*";
    }

    return rzad;
}

void wyswietlChoinke(int h)
{
    int j = 1;
    for(int i=1; i<=h; i=i+2)
    {
        cout << stworzSpacje(h - j) << stworzRzadChoinki(i) << endl;
        j = j + 1;
    }
}

int main()
{
    wyswietlChoinke(20);
    return 0;
}

/*

 *
 **
 ***
 ****


/*

Output:

   *
  ***
 *****
*******

for h = 4

*/
P-157349
carlosmay
» 2017-02-04 23:07:34
i = i + 2
To ci nic nie mówi?
P-157350
Wasiak123
Temat założony przez niniejszego użytkownika
» 2017-02-04 23:11:05
Napisz bo próbuję i nic.
P-157351
carlosmay
» 2017-02-04 23:16:23
for( int i = 1; i <= h; i = i + 2 )
Sam napisałeś algorytm, więc wiesz, że zrobienie kroku pętli co dwa, robi z dwudziestu linii dziesięć.
Albo zmień algorytm, albo zwiększ "magic number" w wywołaniu dwukrotnie.
P-157352
Wasiak123
Temat założony przez niniejszego użytkownika
» 2017-02-04 23:19:03
Ale ja właśnie potrzebuje tyle ile wpisałem w Magic Number. :D
P-157353
carlosmay
» 2017-02-04 23:34:56
C/C++
#include <iostream>
#include <numeric>
#include <string>
int main()
{
    std::size_t lines;
    while( !( std::cin >> lines ) ) {
        std::cin.clear();
        std::cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' );
    }
    std::size_t i { };
    while( lines ) {
        std::string spaces( lines--, ' ' );
        std::string characters( i++ * 2 + 1, '*' );
        std::cout << spaces << characters << '\n';
    }
   
}
 Wykorzystaj taki algorytm.

edit:
W kodzie wykorzystujesz
std::string
, więc trzeba dodać
#include <string>
.
P-157354
« 1 »
  Strona 1 z 1