# Native Code > برنامه نویسی با C > برنامه نویسی با MFC و ++Visual C >  توليد لوزي توخالي

## kyaksar

سلام به همه خسته نباشيد من ميخواستم با كاراكتر ستاره يه لوزي توليد كنم كه تو خالي باشه اين كد رو نوشتم ولي لوزي توپر رسم مي كنه اگه كمك منيد ممنون ميشم
 
#include <iostream.h>
#include <conio.h>
void main()
{
    int x,y,k,c=1;
    cout<<"Enter a num:";
    cin>>x;
    y=x;
    k=x;
    while(x>0)
    {
 for(int w=0;w<x;w++)
{
     cout<<" ";
}
 for(w=c;w>0;w--)
{
 cout<<"*";
}
 x=x-1;
 c=c+2;
 cout<<"\n";    }
    c=c-4;
    x=(y-1);
    while(x>0)
    {
 for(int w=y;w>=x;w--)
            cout<<" ";
 for(w=c;w>0;w--)
            cout<<"*";
 c=c-2;
 x=x-1;
 cout<<"\n";
    }
getch();
}
//end

----------


## returnx

یکی به من یک تمرین از کتاب Dietel & dietel رو داده بود براش بنوسیم ، که توش رسم لوزی با کارکتر * بود خوشبختانه برنامه رو پاک نکردم و داشتم...
این کد کل برنامه : (هر چند طبق قوانین سایت این کار خیلی درست نیست)

#include"stdafx.h"
usingnamespace System;
#include<iostream>
usingnamespace std;
void regtang();
void sharp();
void cust_reg();
void diamond();
int main(array<System::String ^> ^args)
{
//Console::WriteLine(L"Hello World");
cout<<"Item Number:1=Regtang;2=Sharp;3=Diamond;4=Custome Regtang;5=Cleare Screen;0=EXIT"<<endl;
int order;
while (1)
{
cout<<"Please Insert The Number Item:";
cin>>order;
if (order==1)
regtang(); //Draw Regtang
elseif(order==2)
sharp(); //Draw Sharp
elseif(order==3)
diamond(); //Draw Diamond
elseif(order==4)
cust_reg(); //Draw Custom Regtang
elseif(order==5)
{
Console::Clear(); //Clear Screen
cout<<"Item Number:1=Regtang;2=Sharp;3=Diamond;4=Custome Regtang;5=Cleare Screen;0=EXIT"<<endl;
}
elseif(order==0)
break;
else
cout<<"Invalid Item Number,Please Try Agin..."<<endl;
}//end While 
return 0;
}//end main
void regtang()//Draw regtang
{
int i,j;
for (i=0;i<8;i++)
{
for (j=0;j<9;j++)
{
if (i==0||j==0||i==7||j==8)
cout<<"*";
else
cout<<" ";//Space
}//end j 
cout<<endl; //Goto Next Line
}//end i
}//end Function
void sharp()
{
int i=0,j=0;
for (i=0;i<9;i++)
{
for (j=0;j<5;j++)
{
if (j==2)
cout<<"*";
elseif (i==1 && ((j==1||j==3) && j!=4))
cout <<"*";
elseif (i==2 && j!=2)
cout<<"*";
else
cout<<" ";
}//End j
cout<<endl; //Go To Next Line
}//End i
}// End Function
void cust_reg()
{
int i,j;
for (i=0;i<8;i++)
{
for (j=0;j<9;j++)
{
if (i==1 && j==0||i==1 && j==8||i==6 && j==0 || i==6 && j==8)
cout<<"*";
elseif (i==0 && j>2 && j<6 ||i==7 && j>2 && j<6)
cout<<"*";
elseif (i>1 && i<6 && j==1 || i>1 && i<6 && j==7)
cout<<"*";
else
cout<<" ";
}//End j
cout<<endl;
}//End i
}//End Function
void diamond()
{
int i,j,k=7,p=7;
for (i=0;i<10;i++)
{
for (j=0;j<15;j++)
{
if (j/2==7 && i>0 && i<5)
{
k=k-1;
p=p+1;
}//end if
elseif(j/2==7 && i>=5 && i<10)
{
k=k+1;
p=p-1;
}//end else if

if (j==k && (i>0 && i<5) || j==p && (i>0 && i<5))
cout<<"*";
elseif (j==k &&(i>=5 && i<10) || j==p && (i>=5 && i<10))
cout<<"*";
else
cout<<" ";
}//end j
cout<<endl;
}//end i 
}//End Function

----------


## miladmn

برنامه اي كه دو ع صحيح را دريافت كند ، عدد اول برابر با اندازه ي قطر لوزي.عدد دوم برابر با تعداد لوزي هاي تو در تو . در خروجي به تعداد خواسته شده لوزي تو در تو چاپ كند.به طوري كه اندازه ي قطر بزرگترين لوزي برابر با عد اول باشد ، در صورتي كه تعداد لوزي هاي خواسته شده بزرگتر از انازه قطر لوزي باشد برنامه پيغام خطا ده.


به عنوان مثال در صورتي كه اندازه ي قطر لوزي را برابر با 7 بدهد و تعداد لوزي ها برابر با 2 باشد 2 لوزي هم مركز يكي به قطر 5 و يگري به قطر 7 در خروجي چاپ كند.



ممنون ميشم اگه هر چي زود تر اين برنامه رو يكي برام بنويسه.

----------

