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

While,switsh,if مساعدة

بدأه Error99 في 21 مايو 2009 · 17 رد · 1,376 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

انا عضو جديد بينكم

وطالب جديد في لغة السي

بعد البحث عن

while

switsh

if

لم اجد امثله مبسطه تناسب مستواي الحالي

فلم اجد امامي الا انتم بعد الله

اذا كان بالامكان بعض الامثله عن هذه الدوال

مع بعض الامثله للاستخدامات

اكون شاكر وممتن جداً :blush:

تم تعديل هذه المشاركة بواسطة Error99 في 21 مايو 2009 في 20:04

#2

Write and run a complete C++ program that takes two integers from the user then display a menu to add or subtract or multiply or divide or print the max

( طبعا هذا بالسي بلس بلس ماادري عن السي )

هذا سؤال يقول طلع لليوزر menu

اذا كان يبغى يجمع او يطرح او يضرب او يقسم او يطبع العدد الاكبر

راح تكتب برنامج عادي وتكتب الmenu

1 \ جمع

2\ طرح

وهكذا

وتطلب من اليوزر انه يدخل رقم الخيار اللي يبغاه

مثلا هو دخل رقم 1

يعني يبغى يجمع <<<مثلا

فراح تطلع له نتيجة الجمع

وهكذا

فاستخدم الـswitch

وهذا البرنامج كامل

يمكن شرحي مو واااضح فياليت احد يوضح اكثر

او ان شاء الله بالبرنامج يوضح

#include <iostream>
using namespace std;

int main ()
{

	int num1, num2, result, choice;

	cout << "Enter first number:  ";
	cin >> num1;
	cout << "Enter second number:  ";
	cin >> num2;

	cout <<"\n``````````````````Menu``````````````````````\n";
	cout << " 1. Add the numbers\n";
	cout << " 2. Subtract the numbers\n";
	cout << " 3. Multiply the numbers\n";
	cout << " 4. Divide  the numbers\n";
	cout << " 5. Print the Max\n";


	cout << "Enteer your choice; ";
	cin >> choice;

	switch (choice)
	{
		case 1:		cout<<"The result is :"<<num1 + num2;
			break;
		case 2:		cout<<"The result is :"<<num1 - num2;
			break;
		case 3:		cout<<"The result is :"<<num1 * num2;
			break;
		case 4:		cout<<"The result is :"<<num1 / num2;
			break;
		case 5:		if (num1> num2)
					cout<<"The Max is "<<num1;
				else
					cout<<"The Max is "<<num2;
	}

	return 0;
}

وممكن نضيف بعد

case 5

defult

اذا كان اليوزر دخل رقم غير المذكورة يعني مثلا دخل 6 او 7

ونكتب داخلها اي شئ ( بس قبل مانحط default

نحط break

مثلا

default :
					cout<<"no operation";

ان شاء الله يكون واضح واذا كان مو واضح ياليت احد يضيف شئ

وغير كذا هاالبرنامج تقدر تسويه بال if

ونقدر نضيف while

تم تعديل هذه المشاركة بواسطة miss totah في 21 مايو 2009 في 20:47

#3

الكود التالي بwhile

int x = 1;
while (x <= 10)
{
   cout << "Hello\n";
   x = x + 1;
}

نفس الكود بfor

int x;
for (x = 1; x <= 10; x++)
   cout << "Hello\n";

مثال 2

#include <iostream.h>



int main(void) {

	  int x = 0;

	  int y = 0;



	  cout << "Please enter an integer between 1 and 10: ";

	  cin >> x;

	  cout << "You entered: " << x << endl << endl; 



	  while ((x < 1) || (x > 10)) {

			cout << "Please enter an integer between 1 and 10: ";

			cin >> x;

			cout << "You entered: " << x << endl << endl; 



			if ((x < 1) || (x > 10)) {

				  cout << "Your value for x is not between 1 and 10!" 

				   << endl;

				  cout << "Please re-enter the number!" << endl << endl;

			}



	  }



	  cout << "Thank you for entering a valid number!" << endl;



	  return 0;

}
#4

السلام عليكم و رحمة الله و بركاته

اخي Error 99 , انا طالب هندسة كمبيوتر و قد انا حاليا ادرس لغة C++ as a programming language , و لدي بعض الخبرة في control statments مثل while و if و switch . . . . . . .

اما ال while فهي تستخدم في التحكم بعمل البرنامج , لذا اذا اردت ان يتكرر العملية اكثر من مرة تستخدم ال while , مثال

#include<iostream.h>

int main()

{

int N,i=0,a;

cout<<"enter your integer";

cin>>N;

while(i>8) الشرط هنا ان تتكرر العملية ثمان مرات , لذا تجد ان هذا الكود استخدم في النحكم بالعملية

{

a=N/2

cout<<"the result is "<<a<<endl

}

_____________________________________________________

اما ال if فهذه سهلة جدا

include<iostream.h>

int main()

{

int N,i=0,a;

cout<<"enter your integer";

cin>>N;

if(N>20)

{a=N*2;

cout<<"the result is "<<a<<endl;

}

else

cout<<"sorry it is less than 20";

_______________________________________________________________________________

switch

اما هذه فستستخدم في الحالات المتعددة ,الحالة الاولى ,الحالة الثانية ,.. .. .. الخ و يكون لكل حالة معادلاتها الخاصة . . . مثال

#include<iostream.h>

#include<iomanip.h>

#include<cmath>

int main()

{

int a,b,N,M;

cout<<"enter two integers";

cin>>N,M; ادخال الارقام

cout<<"please choose an operation";

cout<<"add the two integers "; لجمع الاعداد

cout<<"multiply the two integers "; لضرب الاعداد

cin>>choice; هذه للاختيار اي عملية حسابية يريد

switch(choice) هذه switch function للحالات المتعددة

{

case 1: الحالة الاولى ,التي هي جمع الاعداد

a=N+M; المعادلة المطلوبة

cout<<"the result is "<<a<<endl;

break;للخروج من ال switch function

case 2: الحالة الثانية , التي هي ضرب الاعداد

b=N*M; المعادلة المطلوبة

cout<<"the result is "<<a<<endl;

break; للخروج من ال switch function

}

return 0;

}

return 0;

}

#5

مثال 3

#include <iostream>

using namespace std;

void noequip();
void equip();

int main()
{
	char input;

	cout << "Do you need equipment?";
	cout << "Y/N:";

	int nobreak=1;
	while (nobreak) {
	cin>> input;

		switch (input) {
			case 'n':
			case 'N': {
				cout << "You have chosen no"<< endl;
				noequip();
				break;
			}
			case 'y':
			case 'Y': {
				cout << "You have chosen yes"<< endl;
				nobreak=0;
				equip();
				break;
			}
		}
	}

	return 0;
}

void noequip(void) {
	int numStudents;
	cout << "How many students do you have?\n";
	cin >> numStudents;

	if (numStudents <= 10) {
		cout << "class assigned to tiny classroom";
	}
	else if (numStudents > 10 && numStudents <=40)
	{
		cout << "class assignmed to small classroom";
	}
	else {
		cout << "no suitable classroom available";
	}
}

void equip(void) {
	int numStudents;
	cout << "How many students do you have?\n";
	cin >> numStudents;

	if (numStudents <= 100 && numStudents > 40) {
		cout << "class assigned to medium classroom";
	}
	else if (numStudents > 100 && numStudents <= 1000)
	{
		cout << "class assignmed to large classroom";
	}
	else {
		cout << "no suitable classroom available";
	}
}
#6
miss totah كتب:
Write and run a complete C++ program that takes two integers from the user then display a menu to add or subtract or multiply or divide or print the max

( طبعا هذا بالسي بلس بلس ماادري عن السي )

هذا سؤال يقول طلع لليوزر menu

اذا كان يبغى يجمع او يطرح او يضرب او يقسم او يطبع العدد الاكبر

راح تكتب برنامج عادي وتكتب الmenu

1 \ جمع

2\ طرح

وهكذا

وتطلب من اليوزر انه يدخل رقم الخيار اللي يبغاه

مثلا هو دخل رقم 1

يعني يبغى يجمع <<<مثلا

فراح تطلع له نتيجة الجمع

وهكذا

فاستخدم الـswitch

وهذا البرنامج كامل

يمكن شرحي مو واااضح فياليت احد يوضح اكثر

او ان شاء الله بالبرنامج يوضح

#include <iostream>
 using namespace std;

 int main ()
 {

	 int num1, num2, result, choice;

	 cout << "Enter first number:  ";
	 cin >> num1;
	 cout << "Enter second number:  ";
	 cin >> num2;

	 cout <<"\n``````````````````Menu``````````````````````\n";
	 cout << " 1. Add the numbers\n";
	 cout << " 2. Subtract the numbers\n";
	 cout << " 3. Multiply the numbers\n";
	 cout << " 4. Divide  the numbers\n";
	 cout << " 5. Print the Max\n";


	 cout << "Enteer your choice; ";
	 cin >> choice;

	 switch (choice)
	 {
		 case 1:		cout<<"The result is :"<<num1 + num2;
			 break;
		 case 2:		cout<<"The result is :"<<num1 - num2;
			 break;
		 case 3:		cout<<"The result is :"<<num1 * num2;
			 break;
		 case 4:		cout<<"The result is :"<<num1 / num2;
			 break;
		 case 5:		if (num1> num2)
					 cout<<"The Max is "<<num1;
				 else
					 cout<<"The Max is "<<num2;
	 }

	 return 0;
 }

وممكن نضيف بعد

case 5

defult

اذا كان اليوزر دخل رقم غير المذكورة يعني مثلا دخل 6 او 7

ونكتب داخلها اي شئ ( بس قبل مانحط default

نحط break

مثلا

default :
					 cout<<"no operation";

ان شاء الله يكون واضح واذا كان مو واضح ياليت احد يضيف شئ

وغير كذا هاالبرنامج تقدر تسويه بال if

ونقدر نضيف while

مثال رااائع وواضح اخوي العزيز

الله يطول بعمرك على التوضيح الكبير

cout << اول مره اشوفها هذي حنا ما اخذنا الا printf و scanf

وش معناها هذي cout او انها تقوم بدور وحده منها :happy:

تم تعديل هذه المشاركة بواسطة Error99 في 22 مايو 2009 في 14:11

#7

انا ماخذت لغة السي

بس بالسي بلس بلس

معنى

cout

يعني كأنك تقول له اطبع النتيجة او اخرجها

اتوقع ومو متأكدة انها نفس

print

ياليت احد فاهم بالسي يوضح

تم تعديل هذه المشاركة بواسطة miss totah في 22 مايو 2009 في 15:28

#8
miss totah كتب:
انا ماخذت لغة السي

بس بالسي بلس بلس

معنى

cout

يعني كأنك تقول له اطبع النتيجة او اخرجها

اتوقع ومو متأكدة انها نفس

print

ياليت احد فاهم بالسي يوضح

اي دامها اطبع اجل نفسها

الله يعطيك الف عافيه اختي والله ما قصرتي

#9
213 كتب:
الكود التالي بwhile

int x = 1;
 while (x <= 10)
 {
	cout << "Hello\n";
	x = x + 1;
 }

نفس الكود بfor

int x;
 for (x = 1; x <= 10; x++)
	cout << "Hello\n";

مثال 2

#include <iostream.h>



 int main(void) {

	   int x = 0;

	   int y = 0;



	   cout << "Please enter an integer between 1 and 10: ";

	   cin >> x;

	   cout << "You entered: " << x << endl << endl; 



	   while ((x < 1) || (x > 10)) {

			 cout << "Please enter an integer between 1 and 10: ";

			 cin >> x;

			 cout << "You entered: " << x << endl << endl; 



			 if ((x < 1) || (x > 10)) {

				   cout << "Your value for x is not between 1 and 10!" 

					<< endl;

				   cout << "Please re-enter the number!" << endl << endl;

			 }



	   }



	   cout << "Thank you for entering a valid number!" << endl;



	   return 0;

 }

الله يعطيك الف عافيه اخوي

لكن هالكود انا ما فهمته او انه ناقص

او انك تعمدت ذلك ليكون المثال مباشر

int x = 1;
 while (x <= 10)
 {
	cout << "Hello\n";
	x = x + 1;
 }

الـx = واحد

عندما اكس اصغر من او تساوي العشره اطبع هلو

وتزود في كل مره واحد

طيب اذا زادت عن العشره ماذا يفعل البرنامج

هنا ايضا لدي مشكله لم استطع استيعابها :wub:

كود for صراحه صعب شوي ما فهمته

لكن while تفي بالغرض صحيح ؟

المثال الثاني اوضح بكثير

تسسسسسسسلم يدك والله يالغالي

والله يعطيك الف عافيه

#10
aibrahem كتب:
السلام عليكم و رحمة الله و بركاته

اخي Error 99 , انا طالب هندسة كمبيوتر و قد انا حاليا ادرس لغة C++ as a programming language , و لدي بعض الخبرة في control statments مثل while و if و switch . . . . . . .

اما ال while فهي تستخدم في التحكم بعمل البرنامج , لذا اذا اردت ان يتكرر العملية اكثر من مرة تستخدم ال while , مثال

#include<iostream.h>

int main()

{

int N,i=0,a;

cout<<"enter your integer";

cin>>N;

while(i>8) الشرط هنا ان تتكرر العملية ثمان مرات , لذا تجد ان هذا الكود استخدم في النحكم بالعملية

{

a=N/2

cout<<"the result is "<<a<<endl

}

_____________________________________________________

اما ال if فهذه سهلة جدا

include<iostream.h>

int main()

{

int N,i=0,a;

cout<<"enter your integer";

cin>>N;

if(N>20)

{a=N*2;

cout<<"the result is "<<a<<endl;

}

else

cout<<"sorry it is less than 20";

_______________________________________________________________________________

switch

اما هذه فستستخدم في الحالات المتعددة ,الحالة الاولى ,الحالة الثانية ,.. .. .. الخ و يكون لكل حالة معادلاتها الخاصة . . . مثال

#include<iostream.h>

#include<iomanip.h>

#include<cmath>

int main()

{

int a,b,N,M;

cout<<"enter two integers";

cin>>N,M; ادخال الارقام

cout<<"please choose an operation";

cout<<"add the two integers "; لجمع الاعداد

cout<<"multiply the two integers "; لضرب الاعداد

cin>>choice; هذه للاختيار اي عملية حسابية يريد

switch(choice) هذه switch function للحالات المتعددة

{

case 1: الحالة الاولى ,التي هي جمع الاعداد

a=N+M; المعادلة المطلوبة

cout<<"the result is "<<a<<endl;

break;للخروج من ال switch function

case 2: الحالة الثانية , التي هي ضرب الاعداد

b=N*M; المعادلة المطلوبة

cout<<"the result is "<<a<<endl;

break; للخروج من ال switch function

}

return 0;

}

return 0;

}

الله يعطيك الف عافيه امثلتك واضحه جداً

وبالتوفيق ان شاء الله بدراستك

ألا يوجد قسم للمبتدئين بالسي ؟

#11
213 كتب:
مثال 3

#include <iostream>

 using namespace std;

 void noequip();
 void equip();

 int main()
 {
	 char input;

	 cout << "Do you need equipment?";
	 cout << "Y/N:";

	 int nobreak=1;
	 while (nobreak) {
	 cin>> input;

		 switch (input) {
			 case 'n':
			 case 'N': {
				 cout << "You have chosen no"<< endl;
				 noequip();
				 break;
			 }
			 case 'y':
			 case 'Y': {
				 cout << "You have chosen yes"<< endl;
				 nobreak=0;
				 equip();
				 break;
			 }
		 }
	 }

	 return 0;
 }

 void noequip(void) {
	 int numStudents;
	 cout << "How many students do you have?\n";
	 cin >> numStudents;

	 if (numStudents <= 10) {
		 cout << "class assigned to tiny classroom";
	 }
	 else if (numStudents > 10 && numStudents <=40)
	 {
		 cout << "class assignmed to small classroom";
	 }
	 else {
		 cout << "no suitable classroom available";
	 }
 }

 void equip(void) {
	 int numStudents;
	 cout << "How many students do you have?\n";
	 cin >> numStudents;

	 if (numStudents <= 100 && numStudents > 40) {
		 cout << "class assigned to medium classroom";
	 }
	 else if (numStudents > 100 && numStudents <= 1000)
	 {
		 cout << "class assignmed to large classroom";
	 }
	 else {
		 cout << "no suitable classroom available";
	 }
 }

أها

يعني ان switsh تعطيك خيارات

اذا اخترت هذا ماذا يفعل البرنامج واذا اخترت الخيار الثاني ماذا يفعل وهكذا

الله يعطيك الف عافيه ويطول بعمرك

الف شكر لكم جميعا

منتدى رااائع وما احلى ان تجد اخوانك يقدمون لك ما تحتاجه من توضيح

#12

السلام عليكــم ورحمـة الله وبركاتــه ،،

اتفضل اخي(كاتبة مشاركة بقسم آخر لإحدى الأخوات حول switch.

here...

و لم أقرأ مشاركاتكم هنا...

إذا كنت مش فاهم أي شيء حول الهياكل المطلوبة بسؤالك الكريم نبهني بذلك بالموضوع و سأكون متابعة للموضوع

إن شاء الله...

موفقين يارب...

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#13

رغد استفدت كثيراً من مشاركتك

واذا كان هناك المزيد من الدروس لك

اتمنى تزودينا بالرابط

شرحك واضح كما هو شرح الاخوان سابقا

واي واحد منهم لديه شرح يزودنا فيه

ويكسب اجر

#14
Error99 كتب:
رغد استفدت كثيراً من مشاركتك

واذا كان هناك المزيد من الدروس لك

اتمنى تزودينا بالرابط

شرحك واضح كما هو شرح الاخوان سابقا

واي واحد منهم لديه شرح يزودنا فيه

ويكسب اجر

دروس بمعنى دروس!! آسفة لأ

و لكنها مواضيع مكملة لبعض المواضيع التانية او مواضيع في فلسفة و آلية اللغة...

ولكن بإمكانك إلقاء نظرة على المواضيع المهمة (المثبتة) بالقسم هناك مواضيع تحتوي على روابط لدروس ابتدائية و متقدمة و متوسطة و مواضيع اخرى

موفق يارب...

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#15
Error99 كتب:
يعني ان switsh تعطيك خيارات 

اذا اخترت هذا ماذا يفعل البرنامج واذا اخترت الخيار الثاني ماذا يفعل وهكذا

الله يعطيك الف عافيه ويطول بعمرك

تماما

بارك الله فيك

Error99 كتب:
كود for صراحه صعب شوي ما فهمته 

لكن while تفي بالغرض صحيح ؟

صحيح

المثالين يعطيين نفس النتيجة 100%

تحياتي

#16
رغـد كتب:
دروس بمعنى دروس!! آسفة لأ

و لكنها مواضيع مكملة لبعض المواضيع التانية او مواضيع في فلسفة و آلية اللغة...

ولكن بإمكانك إلقاء نظرة على المواضيع المهمة (المثبتة) بالقسم هناك مواضيع تحتوي على روابط لدروس ابتدائية و متقدمة و متوسطة و مواضيع اخرى

موفق يارب...

جزاك الله خير اختي رغد

213 كتب:
تماما

بارك الله فيك

صحيح

المثالين يعطيين نفس النتيجة 100%

تحياتي

نخدمك بالافراح اخوي

والله يجزاك كل خير

#17
int x = 1;
while (x <= 10)
{
	cout << "Hello\n";
	x = x + 1;
}

الـx = واحد

عندما اكس اصغر من او تساوي العشره اطبع هلو

وتزود في كل مره واحد

طيب اذا زادت عن العشره ماذا يفعل البرنامج

هنا ايضا لدي مشكله لم استطع استيعابها :wub:

في هذا المثال

هنا في هذه النقطة

هو كل مرة يزود 1 لحد مايوصل عشرة اذا وصل 11 خلاص يوقف

البرنامج

ويصير الاوت بوت كلمة

hello

10

مرات

اتمنى من الاخرين الاجابة عن الاستفسارات الباقية

#18

مرحبتين اختي توتة...

بتسألي عن الشيفرة التالية:

  1.  
  2. int x = 1;
  3. while(x <= 10)
  4. {
  5. cout << "Hellon";
  6. x = x + 1;
  7. }
  8.  

و البرنامج سيطبع التالي:

Hello

Hello

Hello

Hello

Hello

Hello

Hello

Hello

Hello

Hello

Press any key to continue . . .

افضل شيء نقرأ كلمة او جلمة while بكلمة (بينما) او (طالما) فطالما هذا الشرط (بين القوسين) متحقق افعل كذا و كذا. افضل من قرأتها (عندما) لأن عندما لغوياً يعني تلك اللحظة فقط.

و هنا في المسال السابق ستستمر جملة while التكرارية إلى أن يصبح الشرط false. هذا يعني أنها ستكون false إذا زادت x عن عشرة. لنقول مثلاً صارت 11. إذاً إداعش ليست اصغر و لا تساوي عشرة. و بهذا سيخرج البرنامج من جملة while مباشرة لعدم تحقق و استمرارية الشرط.

جملة while قد تسبب مشكلة برمجية تُسمى التكرار اللامتناهي infinit loop. و هذه المشكلة بتصير عندما يكون شرط هذه الجملة دائماً true. فيبتعمد المبرمجون لكتابة الأمر break للخروج و لكسر هذه الحلقة عند شرط معين قد يكون مفاجيء. هذا كل شي عن جملة while.

ملاحظة:

اخوتي الكرام... آسفة جداً تذكرت درس إلي بالمنتدى عن continue و طريقة عملها داخل جُمل التكرار.

هون

و ايضاً دروس موجودة ابتدائية عن جُمل التكرار

هون

وطبعاً اتفضلوا بالتساؤلات هون بالموضوع...

موفقين يارب...

تم تعديل هذه المشاركة بواسطة رغـد في 25 مايو 2009 في 04:58

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

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