tgoop.com/Beprogramming/1338
Last Update:
السلام عليكم ورحمة الله وبركاته
الاخوة الزملاء الكرام
عند حل اي مشكلة بأي لغة برمجة اولا نبدأ
بتحليل تلك المشكلة ثم بناء الخوارزمية لتلك المشكلة سواءً بالخوارزميات او بالمخطط الانسيابي ومن فهم الى هذه النقطة فقد فهم نصف البرمجة ولاكن كيف نحلل المشكلة بالخوارزميات؟
قبل ان نبرمج نفكر كيف نبني الخوارزمية لحل تلك المشكلة
مثلاً
نريد برنامج يقوم بتحويل العدد العشري الى ثنائي ونحن كمبتدئين في البرمجة لم نصل في الدراسة الى الدوال
كيف نعمل البرنامج؟
اولا الرقم العشري عند تحويله الى الرقم الثنائي بنقوم بقسمة الرقم على 2 ونضع الباقي ونكرر العملية حتى يطلع لدينا الرقم الثنائي
اذن استفدنا من هذا التحليل اننا سوف نستخدم دوارة اي دالة for او while او do...while
وايضا باقي القسمة
هذه اهم ما استفدنا منه
صح ان هناك معلومات اخرى مثلا بما ان البرنامج لتحويل العدد العشري الى ثنائي فأن دالة الادخال سوف تدخل ضمن البرنامج
الان لو رتبنا هذه المعلومات بشكل جميل بستخدام الخوارزميات
اولا الاعلان عن اربعة متغيرات متغيرين منهن اسندنا لهن قيمة بدائية والذي رمزنا للأول بالرمز iوسندنا له القيمة1 ورمزنا للثاني بالرمز sum وسندنا له القيمة ٠ لماذا؟
جميع المتغيرات من نوع عدد صحيح
لماذا؟
ثانياً ادخال المتغير الاول والذي رمزنا له بالرمز x
ثالثاً وصل دور استخدام احد الدوارات
شرط توقف الدوارة ان يبقى العدد العشري x يساوي صفر
رابعاً نقوم بأسناد قيمة للمتغير الثاني
والذي رمزنا له بالرمز b
بباقي القسمة على 2
خامساً نقوم بأسناد قيمة للمتغير sum بالقيمة sum+i*b
سادساً ايجاد حاصل القسمة لـ x مثلما بنعمل في الحل ترم اول نقسم العدد على 2 ونوجد جاصل القسمة ونعيد قسمته وهكذا
اذن نوجد حاصل القسمة كيف؟
x/=2; هكذا
سابعاً نسند قيمة للمتغير i
بـ i*=10;
لماذا؟ اريد اجابة من اجل يبقى هناك مشاركة يازملاء
ثامناً نغلق الدوارة بالحاصرة
تاسعا نعمل دالة اخراج للمتغير sum
عاشرا نغلق بحاصرة الدالة الرئيسية
وهذا البرنامج
//Yahya Shaker
#include<iostream>
using namespace std;
int main()
{
int sum=0 ,i=1,x ,b;
cout<< "ادخل الرقم العشري الذي تود تحويله الى ثنائي" ;
cin>>x ;
while (x != 0)
{
b =x % 2;
sum=sum+ i*b;
x /=2;
i *=10;
}
cout << sum ;
return 0;
}
اي استفسار اتواصلو معي انا موجود لخدمتكم جميعاً
زميلكم يحيى شاكر
BY مستـ1ــوى حاسوب
Share with your friend now:
tgoop.com/Beprogramming/1338