الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برنامج للقيام بالعمليات المنطقيه

بدأه جراند في 13 يوليو 2010 · 4 رد · 660 مشاهدة · في لغة C و ++C
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

برنامج قم ببرمجته بسيط في فكرته

يطلب من المستخدم تحديد العمليه التي يريد القيام بها ..

0 : للقيام بعمليه And

1 : للقيام بعمليه Or

بعد ذلك يطلب منك تحديد طول الـ Bit المراد القيام بمعالجته لنفرض انه 4

ثم نقوم بادخل اول عدد في مصفوفه

1100

ثم نقوم بادخال العدد الاخر في مصفوفه اخرى

0000

سيقوم البرنامج بـ المعالجه و تخزين الناتج في مصفوفه جديده .

Source Code

#include <iostream>
using namespace std;

int main()
{
	int path;
	cout<<"Welcome Tp Bainary Calculator"<<endl;
	cout<<"Enter 0 For : And --- 1 For : Or"<<endl;
	cin>>path;
	int n;
	cout<<"Number Of Bit ? "<<endl;
	cin>>n;
	bool arr1[100];
	bool arr2[100];
	bool resarr[100];

	int count  =0;
	int count1 =0;
	int count2 =0;
	int countA =0;
	int countB =0;
	int countC =0;

	cout<<"Enter Bit ! "<<endl;
	while ( count<n )
	{
		cout<<"x"<<count<<endl;
		cin>>arr1[count];
		count++;
	}
	while ( count1 < n)
	{
		cout<<"y"<<count1<<endl;
		cin>>arr2[count1];
		count1++;
	}

	while ( count2 <n)
	{
		if ( path == 0 )
		{
		resarr[count2]=(arr1[count2] && arr2[count2] );
		count2++;
		}

		else if (path == 1 )
		{	
		resarr[count2]=(arr1[count2] || arr2[count2] );
		count2++;

		}
	}

	while ( countA < n )
	{

		cout<<arr1[countA];
		countA++;
	}
	cout<<endl;

	while (countB<n )
	{
		cout<<arr2[countB];
		countB++;
	}
	cout<<endl;
	cout<<"----"<<endl;
	while (countC<n)
	{
		cout<<resarr[countC];
		countC++;

	}
	cout<<endl;
	system("pause");
	return 0;
}
1
#2

دائما ما أري برامج تعتمد على ال bit operations , و هذه المره أري برنامج يقوم بتطبيقها,,,

أتنوي في صناعة معالج يا أخي؟tongue.gif

#3

السلام عليكم

ماشاء الله موضوع جميل جدا و الكود أجمل :wink:

يا ريت لو تشرح الكود باختصار :blush: لكي يتضح للمبتدئين أمثالي.

تحياتي.

#4
هويدي كتب:

دائما ما أري برامج تعتمد على ال bit operations , و هذه المره أري برنامج يقوم بتطبيقها,,,

أتنوي في صناعة معالج يا أخي؟tongue.gif

اهلا اخوي هويدي مرورك شرف لي :happy:

بخصوص صناعه المعالجات لازال الطريق طويل :wacko:

#5
khaled_prg كتب:

السلام عليكم

ماشاء الله موضوع جميل جدا و الكود أجمل :wink:

يا ريت لو تشرح الكود باختصار :blush: لكي يتضح للمبتدئين أمثالي.

تحياتي.

عليكم السلام اخي العزيز خالد

ان شاء الله راح اضيف الشرح

#include <iostream>
using namespace std;

int main()
{
	int path;//نقوم بتعرف متغير لكي يحدد المستخدم من خلاله اي عمليه يريد استخدامها سواء 
	cout<<"Welcome Tp Bainary Calculator"<<endl;
	cout<<"Enter 0 For : And --- 1 For : Or"<<endl;
	cin>>path;//ندخل 1 او 0
	int n;//نقوم بتعريف متغير لكي يحدد لنا طول البت المراد معالجته
	cout<<"Number Of Bit ? "<<endl;
	cin>>n;//ندخل عدد البت
	bool arr1[100];//يدخل من المستخدم نعرف مصفوفه لتخزين اول عدد
	bool arr2[100];//نعرف مصفوفه لتخزين ثاني عدد من المستخدم
	bool resarr[100];//مصفوفه لتخزين الناتج


	// declaration integer for while loop 
	int count  =0;//هذا العداد يستخدم لادخال اول عدد في اول مصفوفه
	int count1 =0;//هذا العداد يستخدم لادخال ثاني عدد في ثاني مصفوفه
	int count2 =0;//عداد يستخدم لتخزين الناتج في المصفوفه الثالثه
	int countA =0;//عداد يستخدم لطباعه اول مصفوفه
	int countB =0;//عداد يستخدم لطباعه ثاني مصفوفه
	int countC =0;//عداد يستخدم لطباعه مصفوفه النواتج

	cout<<"Enter Bit ! "<<endl;
	while ( count<n )//حلقه تكراريه لادخال العناصر في اول مصفوفه
	{
		cout<<"x"<<count<<endl;
		cin>>arr1[count];
		count++;
	}
	while ( count1 < n)//حلقه تكراريه لادخال العناصر في المصفوفه الثانيه
	{
		cout<<"y"<<count1<<endl;
		cin>>arr2[count1];
		count1++;
	}

	while ( count2 <n)//حلقه تكرايه للقيام بالعمليات المنطقيه و تخزين الناتج في المصفوفه الثالثه
	{

		if ( path == 0 )//عمليه And
		{
		resarr[count2]=(arr1[count2] && arr2[count2] );
		count2++;
		}

		else if (path == 1 )//عمليه or
		{	
		resarr[count2]=(arr1[count2] || arr2[count2] );
		count2++;

		}
	}
	//حلقات تكراريه لطباعه المدخلات ثم المخرجات
	while ( countA < n )
	{

		cout<<arr1[countA];
		countA++;
	}
	cout<<endl;

	while (countB<n )
	{
		cout<<arr2[countB];
		countB++;
	}
	cout<<endl;
	cout<<"----"<<endl;
	while (countC<n)
	{
		cout<<resarr[countC];
		countC++;

	}
	cout<<endl;
	system("pause");
	return 0;
}

المصفوفات جميعها من النوع

bool

لانه مختص بالمتغيرات المنطقيه

True , False

او

1 , 0

تم تعديل هذه المشاركة بواسطة جراند في 13 يوليو 2010 في 13:58

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…