السلام عليكم ورحمة الله وبركاته
قد طلب مني تسليم هذا البرنامج الاسبوع الماضي ولكن لم اجد الحل بعد محاولات وتكرارات, سوف اقوم بتسليمه اليوم اذا وجدت المساعدة بخصم 20% من الدرجة النهائية ولكنها افضل من لا شيء
أرجو المساعدة , واذا وجد الوقت ارجو الشرح لإستخدام الدوال ليستفيد الجميع إن شاء الله,
البرنامج كالتالي:
قم بإنشاء برنامج يقوم بتنيفذ العمليات الحسابية التالية :
1- الأسس :
س إلى القوى ص
ييتيح للمستخدم س,ص
يجب على البرنامج التحقق من وجود اخطأ في الأسس الإيجابية
س يجب أن تكون عدد حقيقي (إيجابي أو سلبي)
ص يجب أن تكون صحيحا تاماً "integer"
لا تستخدم مكتبة سي (دوال(pow))
2-المضروب
ن! = 1 × 2 × 3 × 4 × ن... (ن لا تساوي 1×2×3×4×ن
ن يجب أن تكون عددا صحيحا موجبا (integer)
البرنامج يوفر للمستخدم ن
يجب على البرنامج التحقق من وجود القيمة الإيجابية لـ ن
3-نظرية فيثاغورس
مربع أ + مربع ب= مربع جc2 = a2 + b2)
البرنامج يوفر للمستخدم قيمة أوب ويقو البرنامج بحساب قيمة ج
يمكنك ان تستخدم ج مكتبة الجذر التربيعي دالة sqrt()
البرنامج يجب أن يبدأ بالقائمة :
* وينبغي للمستخدم ان يختارالعملية الرياضية المطلوبة -- أو لإنهاء (الخروج من البرنامج)-- من قائمة
* إذا المستخدم لم يختيار واحدة من ثلاث الاختيارات للعمليات الرياضية -- أو إنهاء (الخروج) -- يجب ان تعرض القائمة مرة أخرى حتى يتم الاختيارا الصحيح
البرنامج يجب أن يحتوي على الأقل 5 وظائف (50 ٪ من الدرجة) :
*القائة الرئيسية
الأسس *
* المضروب
نظرية فيثاغورس *
القائمة *
وهذه هي محاولاتي التي بائت بالفشل للأسف ولكل جواد كبوة (مبرمج مبتداء)
#include <iostream>
#include <stdio.h>
using std::cout;
using std::cin;
using std::endl;
int Exponentiation;
int Factorial;
int PythagoreanTheorem;
int main()
{
int menu ;
do{
cout << "Select one of the options\n";
cout << " 1 for Exponentiation\n";
cout << " 2 for Factorial\n";
cout << " 3 for Pythagorean Theorem\n";
cout << " or 4 to quit\n";
cin >> menu;
if( menu == 1 )
int pow
(int base, int power)
{
if (power == 0)
return 1;
if (power == 1)
return base;
if (power % 2 == 0)
return pow(base * base, power / 2);
if (power % 2 == 1)
return base * pow(base * base, power / 2);
}
else if ( menu == 2 )
const int n=10;
int a[n][n];
int main()
{
clrscr();
int x=1,i,j,dir=1;
i=j=0;
while(x<=n*n) {x++;
if(i+j == n-1 && i < (n+1)/2)dir=2;
if(i-1 == j && i < (n+1)/2)dir =1;
if(i+j == n-1 && i >= (n+1)/2)dir=4;
if(i==j && i >= (n+1)/2)dir=3;
switch(dir) {
case 1:a[++j]=x;break;
case 2:a[++i][j]=x;break;
case 3:a[--j]=x;break;
case 4:a[--i][j]=x;break;
}
if(x==n*n)break;
}
a[0][0]=1;
for(i=0;i<n;i++) {
for(j=0;j<n;j++) printf("%2d ",a[j]);
printf("\n");
}
}
else if (menu == 3)
float a;
float b;
float c;
float side1;
float side2;
int main()
{
cout < < "Enter the higher valued positive interger: /n";
cin > > a;
cout < < "Enter the lower valued positive interger: /n";
cin > > b;
side1 = ((a*a) + (b*b))
side2 = (2*a*b)
c = ((sqrt(pow(side1, 2.0))) + (pow(side2, 2.0)))
//display the results
cout < < "The value of a " < < side1 < < endl;
cout < < "The value of b " < < side2 < < endl;
cout < < "The value of the c is " < < hypotenuse < < endl;
cout < < "The Pythagorean Triple is " < < side1 < < ", " < < side2 < < ", " < < hypotenuse < < "." < < endl;
system("PAUSE");
return 0;
}
} while (menu!=4);
return 0;
}
وهذا السؤال باللغه الانجليزية
Create a program that performs the following mathematical operations:
·Exponentiation:
ox to the power of y
othe user provides x and y
§error check for a positive exponent
ox must be a real number (positive or negative)
oy must be a positive integer
odo not use the C library pow() function
·Factorial:
on! = 1 x 2 x 3 x 4 x … n
on must be a postive integer
othe user provides n
oerror check for a positive value of n
·Pythagorean Theorem
oc2 = a2 + b2
othe user provides a and b
othe program calculates c
oyou may use the C library sqrt() function
Your program must begin with a menu:
·The user should select the desired math operation – or to quit - from a single menu
·If the user does not select one of the three math operations - or quit - the menu should be displayed again until a valid choice is made
Your code must contain at least 5 functions (50% of the grade):
·main
·exponentiation
·factorial
·pythagorean
·menu