Lỗi đưa ra kết quả khi dùng kiểu float

mọi người ơi cho mình hỏi là kiểu số thực của C có chứa giá trị âm không ạ ?, tại sao chương trình này mình cho x=-1.5 vào thì nó ko ra kết quả ạ ?

#include <stdio.h>
#include<math.h> 
int main()
{
	float x, y; 
	printf(" Nhap x : ");
	scanf("%f", &x);
	y = pow((x+1),1/3.0); 
    printf("%f", y);
    getch(); 
    return 0; 
}

khi nhập x = -1.5 nó cho ra hết quả -1.#INDOO là sao ạ, mong mọi người giúp đỡ ạ

Vấn đề là cơ số phải là số dương :smiley: khi số mũ là số thực (số hữu tỉ là dính rồi), nên pow buộc cơ số phải dương.

4 Likes

em muốn lấy căn bậc 3 của số âm thì xài cbrt (cube root), đừng xài pow

6 Likes

dạ em cảm ơn ạ <3 <3

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?