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

هل يمكن الرجوع بالبرنامج إلى الخلف لتنفيذ نفس الخطوات مرة أخرى

بدأه ringawy في 10 مارس 2011 · 8 رد · 610 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

قمت بكتابة برنامج ألة حاسبة بسيطة وصغيرة

والكود بالأسفل

خطوات سير البرنامج هى بإعطاء 3 خيارت وهى

1 - الدخول لبرنامج الألة الحاسبة

2 -إستعراض معلومات عنى

3 -الخروج من البرنامج

وسؤالى هو هل يمكن بعد أن يختار المستخدم بند معلومات عنى يتم ظهور المعلومات ومن ثم يرجع البرنامج إلى الخيارات الثلاثة الأولى مرة أخرى ولكم جزيل الشكر

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int a;
    float b,c;
    char d;
    cout<<"                                     Hello"<<endl<<endl<<"                                 Easy Calculator"<<endl<<endl;
    cout<<"press (1) if you want join calculator"<<endl;
    cout<<"press (2) if you want know about me"<<endl;
    cout<<"press (3) if you wana getout and close program"<<endl;
    cout<<"your choice =";
    cin>>a;
    if(cin.fail()==true)
    cout<<"Wrong you can chosen betwen(1,2,3)";
    else
   switch (a)
   {
   case 1:
    cout<<"Please Enter Frist Number =";
    cin>>b;
    cout<<"Please Enter Scond Number =";
    cin>>c;
    cout<<"Please Enter your Choic"<<endl;
    cout<<"you can use + for addition"<<endl;
    cout<<"you can use - for subtraction"<<endl;
    cout<<"you can use * for multiplication"<<endl;
    cout<<"you can use / for division"<<endl;
    cout<<"input your choice =";
    cin>>d;
    switch (d)
    {
           case '+':cout<<b+c<<endl;break;
           case '-':cout<<b-c<<endl;break;
           case '*':cout<<b*c<<endl;break;
           case '/':
           if (c<=0)
           cout<<"sry ErrOr"<<b<<"/0 it's impossible"<<endl;
           else
           cout<<b/c<<endl;break;
           default:cout<<"it's Wrong Choic you can chose betwen (+,-,*,/)"<<endl;

           }
   ;break;
   /*-------------------------------------------------------------------------*/
   case 2:cout<<"Myname:- Mohamed Elhabashy"<<endl<<"Myage:- 24 year's old"<<endl<<"From Where:- i'm from Egypt (Country Of Freadom)"<<endl;break;
   case 3:cout<<"bye bye See you later"<<endl;break;
   }
    system("PAUSE");
    return EXIT_SUCCESS;
}
#2

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

ممكن طبعاً بضم خطوات البرنامج بالعبارة while

وهي فائدة جمل التحكم بسير البرنامج متل while

آسفة بطريقة استهلالية طبعاً

لم أنظر إلى تفاصيل البرنامج ولكن بالإمكان عمل هيك اشي باستخدام جملة التكرار while

إن شاء الله

أطيب المُنى

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#3

شكرا لك أختى حورية

كنت أتمنى تشرحى أكثر من ذلك ولكن شكرا لك على ردك الذى ساعدنى فى الحل

أعذرونى لأنى مبتدأ

وهذا هو الكود بعد التعديل البسيط

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int a;
    float b,c;
    char d;
    cout<<"                                     Hello"<<endl<<endl<<"                                 Easy Calculator"<<endl<<endl;
    while(a==1||a==2)
    {
    cout<<"press (1) if you want join calculator"<<endl;
    cout<<"press (2) if you want know about me"<<endl;
    cout<<"press (3) if you wana getout and close program"<<endl;
    cout<<"your choice =";
    cin>>a;
    if(cin.fail()==true)
    cout<<"Wrong you can chosen betwen(1,2,3)";
    else
   switch (a)
   {
   case 1:
    cout<<"Please Enter Frist Number =";
    cin>>b;
    cout<<"Please Enter Scond Number =";
    cin>>c;
    cout<<"Please Enter your Choic"<<endl;
    cout<<"you can use + for addition"<<endl;
    cout<<"you can use - for subtraction"<<endl;
    cout<<"you can use * for multiplication"<<endl;
    cout<<"you can use / for division"<<endl;
    cout<<"input your choice =";
    cin>>d;
    switch (d)
    {
           case '+':cout<<b+c<<endl;break;
           case '-':cout<<b-c<<endl;break;
           case '*':cout<<b*c<<endl;break;
           case '/':
           if (c<=0)
           cout<<"sry ErrOr"<<b<<"/0 it's impossible"<<endl;
           else
           cout<<b/c<<endl;break;
           default:cout<<"it's Wrong Choic you can chose betwen (+,-,*,/)"<<endl;

           }
   ;break;
   /*-------------------------------------------------------------------------*/
   case 2:cout<<"Myname:- Mohamed Elhabashy"<<endl<<"Myage:- 24 year's old"<<endl<<"From Where:- i'm from Egypt (Country Of Freadom)"<<endl<<endl<<endl;break;
   case 3:cout<<"bye bye See you later"<<endl;break;
   default:cout<<"it's Wrong Choic you can chose betwen (1,2,3)"<<endl;
}
}
    system("PAUSE");
    return EXIT_SUCCESS;
}
#4
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int a;
    float b,c;
    char d;
    cout<<"                                     Hello"<<endl<<endl<<"                                 Easy Calculator"<<endl<<endl;
	do{
	cout<<"press (1) if you want join calculator"<<endl;
    cout<<"press (2) if you want know about me"<<endl;
    cout<<"press (3) if you wana getout and close program"<<endl;
    cout<<"your choice =";
    cin>>a;
    if(cin.fail()==true)
    cout<<"Wrong you can chosen betwen(1,2,3)";
    else
   switch (a)
   {
   case 1:
    cout<<"Please Enter Frist Number =";
    cin>>b;
    cout<<"Please Enter Scond Number =";
    cin>>c;
    cout<<"Please Enter your Choic"<<endl;
    cout<<"you can use + for addition"<<endl;
    cout<<"you can use - for subtraction"<<endl;
    cout<<"you can use * for multiplication"<<endl;
    cout<<"you can use / for division"<<endl;
    cout<<"input your choice =";
    cin>>d;
    switch (d)
    {
           case '+':cout<<b+c<<endl;break;
           case '-':cout<<b-c<<endl;break;
           case '*':cout<<b*c<<endl;break;
           case '/':
           if (c<=0)
           cout<<"sry ErrOr"<<b<<"/0 it's impossible"<<endl;
           else
           cout<<b/c<<endl;break;
           default:cout<<"it's Wrong Choic you can chose betwen (+,-,*,/)"<<endl;

           }
   ;break;
   /*-------------------------------------------------------------------------*/
   case 2:cout<<"Myname:- Mohamed Elhabashy"<<endl<<"Myage:- 24 year's old"<<endl<<"From Where:- i'm from Egypt (Country Of Freadom)"<<endl;break;
   case 3:cout<<"bye bye See you later"<<endl;break;
   }
	}while(a!=3);
    system("PAUSE");
    return EXIT_SUCCESS;
}

سبحآن الله وبحمده .. سبحآن الله العظيم .. ,

#5
ringawy كتب:

شكرا لك أختى حورية

كنت أتمنى تشرحى أكثر من ذلك ولكن شكرا لك على ردك الذى ساعدنى فى الحل

أعذرونى لأنى مبتدأ

وهذا هو الكود بعد التعديل البسيط

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int a;
    float b,c;
    char d;
    cout<<"                                 	Hello"<<endl<<endl<<"                             	Easy Calculator"<<endl<<endl;
    while(a==1||a==2)
    {
    cout<<"press (1) if you want join calculator"<<endl;
    cout<<"press (2) if you want know about me"<<endl;
    cout<<"press (3) if you wana getout and close program"<<endl;
    cout<<"your choice =";
    cin>>a;
    if(cin.fail()==true)
    cout<<"Wrong you can chosen betwen(1,2,3)";
    else
   switch (a)
   {
   case 1:
    cout<<"Please Enter Frist Number =";
    cin>>b;
    cout<<"Please Enter Scond Number =";
    cin>>c;
    cout<<"Please Enter your Choic"<<endl;
    cout<<"you can use + for addition"<<endl;
    cout<<"you can use - for subtraction"<<endl;
    cout<<"you can use * for multiplication"<<endl;
    cout<<"you can use / for division"<<endl;
    cout<<"input your choice =";
    cin>>d;
    switch (d)
    {
       	case '+':cout<<b+c<<endl;break;
       	case '-':cout<<b-c<<endl;break;
       	case '*':cout<<b*c<<endl;break;
       	case '/':
       	if (c<=0)
       	cout<<"sry ErrOr"<<b<<"/0 it's impossible"<<endl;
       	else
       	cout<<b/c<<endl;break;
       	default:cout<<"it's Wrong Choic you can chose betwen (+,-,*,/)"<<endl;

       	}
   ;break;
   /*-------------------------------------------------------------------------*/
   case 2:cout<<"Myname:- Mohamed Elhabashy"<<endl<<"Myage:- 24 year's old"<<endl<<"From Where:- i'm from Egypt (Country Of Freadom)"<<endl<<endl<<endl;break;
   case 3:cout<<"bye bye See you later"<<endl;break;
   default:cout<<"it's Wrong Choic you can chose betwen (1,2,3)"<<endl;
}
}
    system("PAUSE");
    return EXIT_SUCCESS;
}

أبداً مو قاصدة التخلي عن الموضوع وإنما استهلالياً وتدريجاً إلى أن نصل إلى الحل المناسب والمُراد happy.gif

عموماً اكتشفت خطأ بمناسبة الإستهلالية

أين إدخال القيم للمتغيرات بواسطة cin ببداية البرنامج قبل التحقق الشرطي بجملة while؟

وجملة while بتكون بس للتحقق من الخروج من البرنامج بشكل نهائي أو العودة إلى القائمة الرئيسية

هيك بطريقة منطقية بس

موفق يارب

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#6

شكرا لكم أختى ( إشراقة فجر --- ♥ حُوريّة ♥) على المساعدة ووصلت المعلومة تمام

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

#7

تستطيع الذهاب إلى أي سطر من البرنامج حتى إن كان في الأمام و ليس الخلف بالطريقة التالية

أولا تضع عنوان في المكان المطلوب و ليكن start >>>> تستطيع إختيار أي إسم تريده

تتم كتابته بالطريقة التالية بدون ";"

start:

و بعدها تستطيع إستخدام الأمر التالي من أي موقع في البرنامج للذهاب إلى هذا الموقع من البرنامج

goto start;

بالتوفيق ..

تم تعديل هذه المشاركة بواسطة TheUnknown في 10 مارس 2011 في 05:57

كلما أدبني الدهر ... أراني نقص عقلي

كلما أزددت علما ... زادني علما بجهلي

#8
TheUnknown كتب:

تستطيع الذهاب إلى أي سطر من البرنامج حتى إن كان في الأمام و ليس الخلف بالطريقة التالية

أولا تضع عنوان في المكان المطلوب و ليكن start >>>> تستطيع إختيار أي إسم تريده

تتم كتابته بالطريقة التالية بدون ";"

start:

و بعدها تستطيع إستخدام الأمر التالي من أي موقع في البرنامج للذهاب إلى هذا الموقع من البرنامج

goto start;

بالتوفيق ..

رائعة goto هنا ولكنها بدون شرط ولا قيد

وقد تؤدي إلى ما يُعرف بالمعكرونة الإسبجتي تقنياً

while أو do...while ممتازة

وهاد تلميحي بمشاركتي الأولى كحل للمشكلة طبعاً بدون التفاصيل

موفقين يارب

[وسط]

♥ Countess ♥

57899411.gif

♥

[/وسط]

#9

شكرا لك أحى TheUnknown

طريقة جيدة وتعمل جيدا ولكن فعلا While أفضل

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

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

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

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

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

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