Tôi đã viết một chương trình để tính toán gốc thứ n của một số tối đa 2 chữ số thập phân. ví dụ như gốc thứ 4 của 81 là 3., gốc thứ ba của 125 là 5.Its làm việc độc đáo ngoại trừ gốc thứ 2 của 4. Nó cho đầu ra 1.99 thay vì 2. Đây là mã.gốc thứ n của một số
#include<stdio.h>
int main(int argc, char **argv)
{
double root1(int,int);
int n;
int num1;
double root;
printf("\n\n-----------This is the programme to find the nth root of a number-----------\n\n");
printf("Enter a nuber greater then 1 : ");
scanf("%d",&num1);
if(num1>1)
{
printf("Enter the value for 'n'(the root to be calculated) : ");
scanf("%d",&n);
root = root1(num1,n);
printf("%d th Root of %d is %f\n\n", n,num1,root);
}
else
printf("wrong entry");
return 0;
}
double root1(int a, int b)
{
int j;
double i,k;
double incre = 0.01;
for(i=1; i<=a; i = i+incre)
{
for(j=0;j<b;j++)
{
k=k*i;
}
if(a<k)
{
return(i-incre);
break;
}
else
k=1;
}
}
Tôi đã thử nó hàng giờ nhưng không thể khắc phục được. ai có thể gỡ lỗi này? Tôi sẽ rất biết ơn.
Vui lòng sử dụng nút mã: nó giúp người khác đọc mã của bạn. –
Xin lỗi vì sự bất tiện này. Tôi là người mới ở đây. Lần tới tôi sẽ lo chuyện này. – narayanpatra
yêu cầu chỉnh sửa. thay vì 3, nó tối đa 2 chữ số thập phân. – narayanpatra