المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : مطلوب حل برنامج مستعجل؟؟؟؟



blue_eyes
24-11-2006, 04:38 PM
السؤال هو التالي:
لديك موقف للسيارات دخل عليك 50 زبون وتريد ان تحسب الارباح من خلال ما يلي:
3 ساعات واقل تاخذ 2 $
اكثر من 3 ساعات تاخذ منه من كل ساعة زيادة نصف دولار عن كل ساعة زيادة مع حساب اول 3 ساعات الاصلية
اكثر مبلغ ممكن ان تاخذه من الزبون 10$
واكثر مدة مسموحة للوقوف هي 24 ساعة
المطلوب طباعة كم يستحق مبلغ على كل شخص ومجموع الذين دخلو ومجموع الارباح
:33:

RAAAAD
25-11-2006, 08:12 AM
أخي هكذا لن تستفيد ..

أرينا محاولاتك للحل .. ونحن نساعدك بالباقي .. :)

blue_eyes
25-11-2006, 01:58 PM
طبعا نسيت احكي انو بلغة C++
#include <iostream.h>
int main()
{
int users=0;int houres=0;int fees=0;int sumfees=0;
for(;users<=50;users++)
cout<<"Enter the number of houres";
cin>>houres;
while(houres!=-1)
{
if(houres<=3)
cout<<"fees=2$"<<endl;
if(houres>3)
cout<<"fees="<<0.5*houres+fees<<endl;
}
users++;
sumfees=users*houres;
cout<<"sum fees="<<sumfees<<endl;
return 0;
}

RAAAAD
25-11-2006, 07:30 PM
لكي تستفيد أكثر ..

سوف أعطيك الفكرة وأنت أكمل :D ..




#include <iostream.h>
#include <math.h>
int main()
{
int users, fees,sumfees = 0;
int houres[11]= {0};
for(users = 1;users <= 10;users++)
{
cout<< "["<< users<<"]"<<" Enter the number of houres: ";
cin>>houres[users];
}
cout << "========================================" << endl;
for(users = 1;users <= 10;users++)
{
if ( houres[users] <= 3)
{
fees = 2 * houres[users];
cout<< "["<< users<<"] The Fees = " <<fees << endl;
sumfees += fees;
}
}
cout << "The Total of Fess Is = " << sumfees;
cout << endl;
return 0;
}


بالتوفيق

blue_eyes
26-11-2006, 10:32 AM
صراحة مشكور جدا وفكرتك حلوة
بس ضلت مشكلة انو sumfees ما بيطلع صح
وكمان عدد user مرتبط بجملة for اذا ادخلنا جملة while(user!=0)
بكون صح ولا لأ:أفكر:

H4 ZeQart
29-11-2006, 10:33 PM
السلام عليكم..

أرجو أن أكون قد فهمت السؤال:
الآن كل ساعة زيادة بعد الثلاث ساعات يضاف نصف دولار والساعة التي بعدها ربع دولار وهكذا...
عند إدخال رقم أكبر من 24 ساعة يتم إعادة الإدخال مرة أخرى وهكذا..
بالنسبة ل 10 دولار كرقم أعلى فإن هذا تمويه، لأنه من المستحيل إن يصب المجموع إلى 10 دولار حسب طريقة حلي هذه..




#include <iostream.h>
#include <math.h>
float calc_fees(float hours){
int hrs = int(floor (hours));
float fees = 2.0f;
float hour_factor = 0.5f;
// --
for (int i = 3; i<hrs;i++)
{
float fee_hour_factor = float(hour_factor) / (i-2);
fees = fees + fee_hour_factor;
}
return fees;
}
int main(){
int persons = 5;
float hours;
float fees, sumfees = 0;
// -- Main Loop
for (int client = 1; client <= persons; client++)
{
cout << "Please, Enter the booking hours:";
cin >> hours;
// -- Check for hours input
while ((hours > 24) || (hours <= 0))
{
cin >> hours;
}
// --
fees = calc_fees(hours);
cout << fees << endl;
// --
sumfees += fees;
}
// --
cout << "The total paid fees =" << sumfees << endl;
// --
return 0;
}



انتظر الرد...

blue_eyes
02-12-2006, 11:28 AM
كل ساعة بعد الثلاث ساعات سيتم حساب قيمة اضافية وهي:
0.5 دولار/ساعة تزيد عن الثلاث ساعات مع اضافة 2 دولار وهي قيمة الثلاث ساعات