How to find cube root in C

2 Answers

0 votes
#include <stdio.h>

double cubeRoot(double n) {
   double i, precision = 0.000001;
   
   for (i = 1; (i*i*i) <= n; i++);        
   
   for (--i; (i*i*i) < n; i += precision);

   return i;
}

int main(void) {
    double n = 27;

    printf("%lf\n", cubeRoot(n));
    
    printf("%lf\n", cubeRoot(16));
}



/*
run:

3.000000
2.519843

*/

 



answered Aug 5, 2020 by avibootz
0 votes
#include <stdio.h>
#include <math.h>

double cubeRoot(double n) {
    if (n >= 0)
        return pow(n, (double) 1 / 3);
    else
        return -pow((-n), (double) 1 / 3);
}
 
int main(void) {
    double n = 27;
 
    printf("%lf\n", cubeRoot(n));
    printf("%lf\n", cubeRoot(16));
    printf("%lf\n", cubeRoot(-27));
    printf("%lf\n", cubeRoot(64));
}
 
 
 
/*
run:
 
3.000000
2.519842
-3.000000
4.000000
 
*/

 



answered Aug 5, 2020 by avibootz

Related questions

1 answer 147 views
1 answer 133 views
1 answer 130 views
130 views asked Aug 5, 2020 by avibootz
1 answer 116 views
116 views asked Sep 2, 2024 by avibootz
1 answer 121 views
121 views asked Sep 2, 2024 by avibootz
1 answer 105 views
105 views asked Nov 16, 2022 by avibootz
1 answer 102 views
102 views asked Nov 16, 2022 by avibootz
...