كتبه: karwanpro / بتاريخ: 2013-08-29 , پێنج شه‌ممه‌
إن من اساليب التعلم وازدياد الخبرة لدى المبرمجين هي طرق التسلية والطرفة ومن ابرزها هي رسم الاشكال بالرموز وغالبا ما يستخدم المبرمجون الرمز (*) النجمة لكةنها تغطي كل الاتجاهات لتأخذ مساحة مكان معين بأكملها ففي لغة سيي++ ايظا المبرمجون ليسوا ببعيدين عن تلك الاساليب لذلك تعالوا معنا لنتعلم كيف يكون ذلك



دالة 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;  
}
   
Share

rss facebooki twitter google plus
فیسبوك
نصيحة برمجية
أصحاب المواقع
مواضيع اخرى
آخر كتاب قرأته