المساعدة - البحث - قائمة الأعضاء - التقويم
نسخة كاملة: تصحيح برامج..فقط تعديل
برمجة - شبكات - كمبيوتر - منتديات الفريق العربي للبرمجة > منتديات لغات البرمجة العام > منتدى مبرمجي C و ++C و C++.NET
شعاع الأمل


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




أخوتي طلب مني كتابة برامج وكتبتها لكن لم يخرج الرن كما أريد

أتمنى أن توضحوا لي العله اذا سمحتم....


البرنامج الأول: هو برنامج يحول الحروف الصغيره لكبيره والكبيره لصغيره...

استخدمت طريقة ال switch لكنها مطوووله جدا فهل من طريقة أخرى..


#include<iostream>
using namespace std;
int main()
{
char a;
cout<<"enter yore letter"<<endl;
cin>>a;
switch(a)
{
case 'a':cout<<"A"<<endl;break;
case 'b':cout<<"B"<<endl;break;
case 'c': cout<<"C"<<endl;break;
//??? ?? ?????? ?? ??????
defult:cout<<"ther is not thes leter";break;
}
return 0;
}


البرنامج الثاني هو برنامج يقارن بين اعمار شخصين بحيث ان تكون اعمارهم لا تتعدى العشرين واذا تعدتها يطلب البرنامج منهم او من احدهم ان يضع عمرا اخر ثم يقارن البرنامج بين اعمارهم

مشكلتي: انه عندما يطلب البرنامج من احدهما ادخال عمر يوافق الشرط فانه لا يحسب العمر الموافق للشرط بل يبقى على الاول


#include <iostream>
using namespace std;
int main()
{
int a,b;

cout<<"Ali enter your age"<<endl;
cin>>a;

while(a>20)
{
cout<<"entr your valid age"<<endl;
cin>>a;
}

cout<<"Ahmad enter your age"<<endl;
cin>>b;

while(b>20)
{
cout<<"entr your valid age "<<endl;
cin>>b;
}

if(a>b)
cout<<"Ahmad older than ali"<<endl;

else

cout<<"ali oldar than ahmad"<<endl;

return 0;

}



البرنامج الثالث: مشكلتي في الكيس الاول ماعرفت أسوي كشف حساب صح!!


#include<iostream>
#include<string>
using namespace std;
int main()
{

int account;
int amount;
int balance;
int choice;
int securitynunber;


cout<<"enter your balance:"<<endl;
cin>>balance;

while(balance!=0)


{


cout<<"What do you want to do :"<<endl;

cout<<"\t 1.Check your account"<<endl;

cout<<" \t 2. Withdraw from your account"<<endl;

cout<<" \t 3. Deposit into your account"<<endl;

cout<<" \t 4. Exit from the program"<<endl;

cout<<" Enter Your Choice"<<endl;
cin>>choice;


switch (choice)
{


case 1:cout<<"enter your security number"<<endl;
cin>>securitynunber;
cout<<"your account is"<<balance;

break;

case 2:{ cout<<"enter amount that you want to withdraw:"<<endl;
cin>>amount;
balance=balance-amount;
cout<<"Your balance now is :"<< balance<<"SR"<<endl;
}
break;

case 3:cout<<"enter your account"<<endl;
cin>>account;
account=account+balance;
cout<<"Your balance now is :"<< balance<<"SR"<<endl;
break;

case 4: cout<<"enter 0 if you want to quit";
cin>>balance;
break;


defeult: cout<<"wrong entry";

}

cin>>choice;


}
return 0 ;

}















فهدالشلوي
بالنسبة للسؤال الاول:
انسخ الكود
  1.  
  2. #include<iostream>
  3. using namespace std;
  4. int main()
  5. {
  6. char a;
  7. cout<<"enter yore letter"<<endl;
  8. cin>>a;
  9. if(int(a)>=97 && int(a)<=122)
  10. cout<<char(int(a)-32)<<endl;
  11. else
  12. cout<<"ther is not thes leter";
  13.  
  14. return 0;
  15. }
  16.  
  17.  
  18.  


بالنسبة للثاني لا يوجد مشكله فقط غير
انسخ الكود
  1.  
  2. if(a>b)
  3.  
  4. if(a<b)
  5.  
  6.  
  7.  
  8.  
  9.  


بالنسبة للثالث غير واضح المطلوب؟
time1
طبعا البرنامج الاول يوجد مجموعة من الطرق الافضل اداءا ً , لكن تصحيحا لبرنامجك السابق فقط كان هناك خطأ في الكلمة default
كود
#include<iostream>

using namespace std;
int main()
{
char a;
cout<<"enter yore letter"<<endl;
cin>>a;
switch(a)
{
case 'a':cout<<"A"<<endl;break;
case 'b':cout<<"B"<<endl;break;
case 'c': cout<<"C"<<endl;break;
default:cout<<"ther is not thes leter";break;
}
return 0;
}


هناك طرق اخرى , مثلا للتحويل من صغير لكبير والعكس نستخدم الدوال tolower & toupper الموجودة بالمكتبة cctype

لتحويل الاحرف الصغيرة إلى كبيرة نستخدم الدالة toupper

كود
#include<iostream>
using namespace std;
#include<cctype>
int main()
{
char a;
cout<<"enter yore letter"<<endl;
cin>>a;
a=toupper(a);
cout<<a;
return 0;
}


وللتحويل من الكبير إلى الصغير

كود
#include<iostream>
using namespace std;
#include<cctype>
int main()
{
char a;
cout<<"enter yore letter"<<endl;
cin>>a;
a=tolower(a);
cout<<a;
return 0;
}


البرنامج الثاني ارى انه يسير وفق ماكتبتي فقط تحتاجي تعديل الشرط لانه اذا كان a>b سيكون علي اكبر من احمد وليس العكس
كود
if(a<b)




البرنامج الاخير استخدمي اقواس المجموعة {} لتنفيذ اسطر كل case
واعطي قيمة للـ blance وعدلي default

كود
#include<iostream>
#include<string>
using namespace std;
int main()
{

int account;
int amount;
int balance=0;
int choice;
int securitynunber;


cout<<"enter your balance:"<<endl;
cin>>balance;

while(balance!=0)


{


cout<<"What do you want to do :"<<endl;

cout<<"\t 1.Check your account"<<endl;

cout<<" \t 2. Withdraw from your account"<<endl;

cout<<" \t 3. Deposit into your account"<<endl;

cout<<" \t 4. Exit from the program"<<endl;

cout<<" Enter Your Choice"<<endl;
cin>>choice;


switch (choice)
{


case 1:
    {
        cout<<"enter your security number"<<endl;
cin>>securitynunber;
cout<<"your account is"<<balance;
    }
break;

case 2:{ cout<<"enter amount that you want to withdraw:"<<endl;
cin>>amount;
balance=balance-amount;
cout<<"Your balance now is :"<< balance<<"SR"<<endl;
}
break;

case 3:
    {cout<<"enter your account"<<endl;
cin>>account;
account=account+balance;
cout<<"Your balance now is :"<< balance<<"SR"<<endl;
    }
break;

case 4:
    {cout<<"enter 0 if you want to quit";
cin>>balance;
    }
break;


default: cout<<"wrong entry";

}

cin>>choice;


}
return 0;

}

شعاع الأمل
طيب هل ال case الأول صح علي؟؟

هل ال Account =balance
فهدالشلوي
الم تعطي قانون في المسالة لحسابها ؟
أعتقد ان بينهم فرق؟
time1
السلام عليكــم ورحمـة الله وبركاتــه
اخي الفاضل ...

يمنع طرح اكثر من سؤال في الموضوع الواحد تسهيلا لعملية البحث في المرات القادمة .

لذلك تم نقل السؤال الاخير والمشاركات المتعلقة به إلى موضوع اخر , من هنا .


تحياتي . .. .
هذه "نسخة - خفيفة" من محتويات الرئيسية للإستعراض الكامل مع المزيد من الصور والخيارات الرجاء إضغط هنا.
Invision Power Board © 2001-2009 Invision Power Services, Inc.