#include <iostream>
using std::cout;
using std::cin;
int Forla_ciz(int);
int While_ile_ciz(int);
int DoWhile_ile_ciz(int);
void main()
{
int genislik,no;
while ( (genislik<1) || (genislik>22) )
{
cout<<"0 ile 22 arasında bir genişlik girin:"; cin>>genislik;
}
while ((no<1)||(no>3))
{
cout<<"hangi fonksiyonu kullanarak cizmek istiyorsunuz?\n"
<<"(1)for ile (2) while ile (3) do/while ile"; cin>>no;
switch(no)
{
case 1:
Forla_ciz(genislik);
break;
case 2:
While_ile_ciz(genislik);
break;
case 3:
DoWhile_ile_ciz(genislik);
}
}
}
//************************** for döndüleri ile ***********************************
int Forla_ciz(int n)
{
int a,b,c,boslukBas,ort,p=0;
if (n%2==0) n++; //tek yapan
ort=(n/2)+1; //boşluk için ortanın bir fazlası
boslukBas=ort-1;
for(b=1; b<=ort;b++) //satır sayısını dönderiyor
{
for (a=boslukBas; a>0; a--) //boşluk
{cout<<" ";} cout<<"*";
for(c=0;c<2*p ;c++) //sağ taraftaki kısım, her *dan sonra 2 boşluk bir * basıyor.
{ cout<<" ";}
cout<<"*\n";
p++;
boslukBas--;
}
boslukBas=0;
p-=2;
for(b=ort-1; b>=1;b--) //satır sayısını dönderiyor
{
for (a=-1; a<boslukBas; a++) //boşluk
{cout<<" ";} cout<<"*";
for(c=2*p;c>0 ;c--)
{ cout<<" ";}
cout<<"*\n"; p--;
boslukBas++;
}
return 0;}
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& while döngüleri ile &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
int While_ile_ciz(int n) {
int a,b,c,boslukBas,ort,p=0;
if (n%2==0) n++; //tek yapan
ort=(n/2)+1; //boşluk için ortanın bir fazlası
boslukBas=ort-1;
b=1;
while (b<=ort)
{
a=boslukBas;
while(a>0)
{cout<<" "; a--;}
cout<<"*";
c=0;
while(c<2*p)
{ cout<<" "; c++;}
cout<<"*\n";
p++;
boslukBas--;
b++;
}
boslukBas=0;
p-=2;
b=ort-1;
while (b>=1)
{
a=-1;
while (a<boslukBas)
{cout<<" "; a++;}
cout<<"*";
c=2*p;
while(c>0)
{ cout<<" ";c--;}
cout<<"*\n"; p--;
boslukBas++;b--;
}
return 0;
}
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% do/while döngüleri ile %%%%%%%%%%%%%%%%%%%%%%%%%%%%
int DoWhile_ile_ciz(int n)
{
int a,b,c,boslukBas,ort,p=0;
if (n%2==0) n++; //tek yapan
ort=(n/2)+1; //boşluk için ortanın bir fazlası
boslukBas=ort-1;
b=1;
do
{
a=boslukBas;
do
{cout<<" "; a--;}
while(a>0);
cout<<"*";
c=0;
do
{ cout<<" "; c++;}
while(c<2*p);
cout<<"*\n";
p++;
boslukBas--;
b++;
}
while (b<=ort);
boslukBas=0;
p-=2;
b=ort-1;
do
{
a=-1;
do
{cout<<" "; a++;}
while (a<boslukBas);
cout<<"*";
c=2*p;
do
{ cout<<" ";c--;}
while(c>0);
cout<<"*\n"; p--;
boslukBas++;b--;
}
while (b>=1);
return 0;
}
i draw only diamond but i coudnot draw square.i need some help