إن من اساليب التعلم وازدياد الخبرة لدى المبرمجين هي طرق التسلية والطرفة ومن ابرزها هي رسم الاشكال بالرموز وغالبا ما يستخدم المبرمجون الرمز (*) النجمة لكةنها تغطي كل الاتجاهات لتأخذ مساحة مكان معين بأكملها ففي لغة سيي++ ايظا المبرمجون ليسوا ببعيدين عن تلك الاساليب لذلك تعالوا معنا لنتعلم كيف يكون ذلك
دالة abs تستخدم لأخذ القيمة المطلقة لرقم وهي موجودة في المكتبة cstdlib وهنا الشرط للجملة if هو العنصر الرئيسي في الشكل فمثلا نقف عند الصف الأول حيث I = 0 ,j = 0 ,Num = -3 ثم ننزل للشرط هيكون مجموع I,j يساوي 0 ولا يحقق الشرط فيتم طباعة عدد 3 مسافات ثم يطبع نجمة واحدة ومن ثم يطبع سطر فاضي وينزل للسطر الثاني ويخرج لجملة For الرئيسية وهكذا
البرنامج الاول
والكود يكون كالتالي
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int i=0, j=0, NUM=3;
for(i=-NUM; i<=NUM; i++)
{
for(j=-NUM; j<=NUM; j++)
{
if( abs(i)+abs(j)<=NUM)
{ cout<<"*"; }
else { cout<<" ";}
}
cout<<endl;
}
return 0;
}
البرنامج الثاني
فقط نقوم بتغير كود الشرط الى
if( abs(i)*abs(j)<= NUM)
البرنامج الثالث
فقط نقوم بتغير كود الشرط الى
if( abs(i)+abs(j)==NUM)
البرنامج الرابع
فقط نقوم بتغير كود الشرط الى
if( abs(i)==abs(j))
البرنامج الخامس
فقط نقوم بتغير كود الشرط الى
if( abs(i)==0||abs(j)==0)
البرنامج السادس
فقط نقوم بتغير كود الشرط الى
if( abs(i)>=abs(j))
البرنامج السابع
برنامج لرسم دائرة عندما تدخل القطر
#include<iostream>
#include<cstdlib>
using namespace std;
int main(){
double y,x,r;
while(1){
cout<< "\n enter the rudius : ";
cin>>r;
for(y=0.0;y>=(-2.0*r);y=y-0.5){
for(x=0.0;x<=(2.0*r);x=x+0.5){
if( ( (x-r)*(x-r) + (y+r)*(y+r) ) <=(r*r) )
cout<<"* ";
else cout<<" ";}
cout<<endl;}
}
return 0;
}
دالة abs تستخدم لأخذ القيمة المطلقة لرقم وهي موجودة في المكتبة cstdlib وهنا الشرط للجملة if هو العنصر الرئيسي في الشكل فمثلا نقف عند الصف الأول حيث I = 0 ,j = 0 ,Num = -3 ثم ننزل للشرط هيكون مجموع I,j يساوي 0 ولا يحقق الشرط فيتم طباعة عدد 3 مسافات ثم يطبع نجمة واحدة ومن ثم يطبع سطر فاضي وينزل للسطر الثاني ويخرج لجملة For الرئيسية وهكذا
البرنامج الاول
والكود يكون كالتالي
Code
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int i=0, j=0, NUM=3;
for(i=-NUM; i<=NUM; i++)
{
for(j=-NUM; j<=NUM; j++)
{
if( abs(i)+abs(j)<=NUM)
{ cout<<"*"; }
else { cout<<" ";}
}
cout<<endl;
}
return 0;
}
البرنامج الثاني
فقط نقوم بتغير كود الشرط الى
Code
if( abs(i)*abs(j)<= NUM)
البرنامج الثالث
فقط نقوم بتغير كود الشرط الى
Code
if( abs(i)+abs(j)==NUM)
البرنامج الرابع
فقط نقوم بتغير كود الشرط الى
Code
if( abs(i)==abs(j))
البرنامج الخامس
فقط نقوم بتغير كود الشرط الى
Code
if( abs(i)==0||abs(j)==0)
البرنامج السادس
فقط نقوم بتغير كود الشرط الى
Code
if( abs(i)>=abs(j))
البرنامج السابع
برنامج لرسم دائرة عندما تدخل القطر
Code
#include<iostream>
#include<cstdlib>
using namespace std;
int main(){
double y,x,r;
while(1){
cout<< "\n enter the rudius : ";
cin>>r;
for(y=0.0;y>=(-2.0*r);y=y-0.5){
for(x=0.0;x<=(2.0*r);x=x+0.5){
if( ( (x-r)*(x-r) + (y+r)*(y+r) ) <=(r*r) )
cout<<"* ";
else cout<<" ";}
cout<<endl;}
}
return 0;
}