From 02c1b6a85f03ed9195c36a79bdf6dc897a9b5919 Mon Sep 17 00:00:00 2001 From: superdimensional Date: Mon, 19 Apr 2021 16:19:09 -0400 Subject: [PATCH] rewrote exponent function --- formulas.h | 19 +++++++++++-------- main.c | 26 +++++++++++++++++++++----- 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/formulas.h b/formulas.h index f4ab27e..6d60bad 100644 --- a/formulas.h +++ b/formulas.h @@ -1,19 +1,22 @@ #include #include -double exponent(double par) +double exponent(double base, int exp) { - double raisedNum; - raisedNum = par * par; + double num; + for (int i = 0; i < exp; i++) + { + double num = base * base; + }; - return raisedNum; + return num; }; double hypotenuse(double par, double par2) { double sideC; - sideC = sqrt(exponent(par) + exponent(par2)); + sideC = sqrt(exponent(par, 2) + exponent(par2, 2)); return sideC; }; @@ -21,9 +24,9 @@ double hypotenuse(double par, double par2) void quadratic(double numA, double numB, double numC, double *awn1ptr, double *awn2ptr) { - double awn1 = (-numB) + sqrt(exponent(numB) - 4 * numA * numC); + double awn1 = (-numB) + sqrt(exponent(numB, 2) - 4 * numA * numC); double awn1F = awn1 / (2 * numA); - double awn2 = (-numB) - sqrt(exponent(numB) - 4 * numA * numC); + double awn2 = (-numB) - sqrt(exponent(numB, 2) - 4 * numA * numC); double awn2F = awn2 / (2 * numA); *awn1ptr = awn1F; @@ -34,7 +37,7 @@ double areaOfCircle(double radius) { double area; - area = acos(-1) * exponent(radius); + area = acos(-1) * exponent(radius, 2); return area; } \ No newline at end of file diff --git a/main.c b/main.c index e610dd1..55506d6 100644 --- a/main.c +++ b/main.c @@ -17,6 +17,8 @@ int main() printf("\n 5. Matrix addition"); printf("\n 6. * Matrix multiplication *"); printf("\n 7. Scalar matrix multiplication"); + printf("\n 8. Exponent"); + printf("\n\n * Stared entries are not fully programmed."); printf("\n Enter your choice here:_____"); printf("\033[D"); @@ -39,14 +41,14 @@ int main() printf(" /_____|\n\n"); printf(" b\n"); - printf("\nPlease type the length of the triangle below:\n"); + printf("\nPlease type the length of the triangle:\n"); double sideA; scanf("%lf", &sideA); printf("\nPlease type the width of the triangle:\n"); double sideB; scanf("%lf", &sideB); - printf("The Hypotnuse is equal to %f.\n", hypotenuse(sideA, sideB)); + printf("The Hypotnuse is equal to %lf.\n", hypotenuse(sideA, sideB)); break; case 2: @@ -66,7 +68,7 @@ int main() double awn1ptr, awn2ptr; quadratic(numA, numB, numC, &awn1ptr, &awn2ptr); - printf("The zeros are: %f and %f!\n", awn1ptr, awn2ptr); + printf("The zeros are: %f and %f.\n", awn1ptr, awn2ptr); break; case 3: @@ -77,7 +79,7 @@ int main() double radius; scanf("%lf", &radius); - printf("The area is %f!\n", areaOfCircle(radius)); + printf("The area is %f.\n", areaOfCircle(radius)); break; case 4: @@ -86,7 +88,7 @@ int main() printf("\n ~~ 2*2 Matrix determinant ~~\n\n"); int det; det = determinant(); - printf("\nThe determinant is %d!\n",det); + printf("\nThe determinant is %d.\n", det); break; case 5: @@ -126,6 +128,20 @@ int main() scalarMultiplication(numRows, numColumns, scalar); + break; + case 8: + + system("clear"); + printf("\n ~~ Exponenet ~~\n\n"); + double base; + double exp; + printf("\nPlease enter the base: "); + scanf("%lf", &base); + printf("\nPlease enter the exponent: "); + scanf("%lf", &exp); + double num = exponent(base, exp); + printf("%lf to the power of %lf is equal to %lf.\n", base, exp, num); + break; default: