Problem z choinką c++
Ostatnio zmodyfikowano 2017-02-04 23:34
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
*/
|
|
carlosmay |
» 2017-02-04 23:07:34 |
|
Wasiak123 Temat założony przez niniejszego użytkownika |
» 2017-02-04 23:11:05 Napisz bo próbuję i nic. |
|
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. |
|
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
|
|
carlosmay |
» 2017-02-04 23:34:56 #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> . |
|
« 1 » |