rewrote exponent function

This commit is contained in:
superdimensional 2021-04-19 16:19:09 -04:00
parent b6ff4acd78
commit 02c1b6a85f
2 changed files with 32 additions and 13 deletions

View file

@ -1,19 +1,22 @@
#include <stdio.h> #include <stdio.h>
#include <math.h> #include <math.h>
double exponent(double par) double exponent(double base, int exp)
{ {
double raisedNum; double num;
raisedNum = par * par; for (int i = 0; i < exp; i++)
{
double num = base * base;
};
return raisedNum; return num;
}; };
double hypotenuse(double par, double par2) double hypotenuse(double par, double par2)
{ {
double sideC; double sideC;
sideC = sqrt(exponent(par) + exponent(par2)); sideC = sqrt(exponent(par, 2) + exponent(par2, 2));
return sideC; return sideC;
}; };
@ -21,9 +24,9 @@ double hypotenuse(double par, double par2)
void quadratic(double numA, double numB, double numC, double *awn1ptr, double *awn2ptr) 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 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); double awn2F = awn2 / (2 * numA);
*awn1ptr = awn1F; *awn1ptr = awn1F;
@ -34,7 +37,7 @@ double areaOfCircle(double radius)
{ {
double area; double area;
area = acos(-1) * exponent(radius); area = acos(-1) * exponent(radius, 2);
return area; return area;
} }

26
main.c
View file

@ -17,6 +17,8 @@ int main()
printf("\n 5. Matrix addition"); printf("\n 5. Matrix addition");
printf("\n 6. * Matrix multiplication *"); printf("\n 6. * Matrix multiplication *");
printf("\n 7. Scalar matrix multiplication"); printf("\n 7. Scalar matrix multiplication");
printf("\n 8. Exponent");
printf("\n\n * Stared entries are not fully programmed."); printf("\n\n * Stared entries are not fully programmed.");
printf("\n Enter your choice here:_____"); printf("\n Enter your choice here:_____");
printf("\033[D"); printf("\033[D");
@ -39,14 +41,14 @@ int main()
printf(" /_____|\n\n"); printf(" /_____|\n\n");
printf(" b\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; double sideA;
scanf("%lf", &sideA); scanf("%lf", &sideA);
printf("\nPlease type the width of the triangle:\n"); printf("\nPlease type the width of the triangle:\n");
double sideB; double sideB;
scanf("%lf", &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; break;
case 2: case 2:
@ -66,7 +68,7 @@ int main()
double awn1ptr, awn2ptr; double awn1ptr, awn2ptr;
quadratic(numA, numB, numC, &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; break;
case 3: case 3:
@ -77,7 +79,7 @@ int main()
double radius; double radius;
scanf("%lf", &radius); scanf("%lf", &radius);
printf("The area is %f!\n", areaOfCircle(radius)); printf("The area is %f.\n", areaOfCircle(radius));
break; break;
case 4: case 4:
@ -86,7 +88,7 @@ int main()
printf("\n ~~ 2*2 Matrix determinant ~~\n\n"); printf("\n ~~ 2*2 Matrix determinant ~~\n\n");
int det; int det;
det = determinant(); det = determinant();
printf("\nThe determinant is %d!\n",det); printf("\nThe determinant is %d.\n", det);
break; break;
case 5: case 5:
@ -126,6 +128,20 @@ int main()
scalarMultiplication(numRows, numColumns, scalar); 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; break;
default: default: