Siemka, prosiłbym o pomoc ze zrobieniem tego zadanie, kompletnie nie wiem jak się za nie zabrać:
Narysuj rekurencyjnie literę C utworzoną z zadanych w argumencie funkcji znaków, np. ‘*’ o
zadanej wysokości i szerokości równej połowie wysokości.
Zadanie reekurencyjne
- Rejestracja: dni
- Ostatnio: dni
- Postów: 68
0
- Rejestracja: dni
- Ostatnio: dni
1
Dla litery w tym stylu:
***
*
*
*
*
***
wystarczy trochę przerobić funkcję którą wcześniej dostałeś.
Dodaj tylko warunek aby przy level == 0 rysowała pierwszy wiersz (identyczny jak przy level == maxLevel) a przy reszcie linii pojedynczy znak *.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 68
0
Delor napisał(a):
Dla litery w tym stylu:
*** * * * * ***wystarczy trochę przerobić funkcję którą wcześniej dostałeś.
Dodaj tylko warunek aby przylevel == 0rysowała pierwszy wiersz (identyczny jak przylevel == maxLevel) a przy reszcie linii pojedynczy znak*.
wiem że to może głupie pytanie ale, czy to jest dobrze zrobione rekurencyjnie? :
#include <iostream>
using namespace std;
int C(int wysokosc,int szerokosc,int r=1){
if(r==1){
for(int i=0; i<szerokosc; i++){
cout<<"*";
}
cout<<endl;
C(wysokosc, szerokosc, r+1);
}
else{
for(int i=1; i<=wysokosc; i++){
cout<<"*"<<endl;
}
}
if(r==1){
for(int i=0; i<szerokosc; i++){
cout<<"*";
}
}
}
int main()
{
int wysokosc;
cout<<"Podaj wysokosc: ";
cin>>wysokosc;
C(wysokosc,wysokosc/2);
return 0;
}
- Rejestracja: dni
- Ostatnio: dni
0
Najprościej się przekonać uruchamiając program. Wyświetla to co powinien?