入力した数字が素数がどうか判定するためのプログラムで以下のコードを組んだところ、
/usr/bin/ld: /tmp/ccuDO85A.o: in function prime': 5.c:(.text+0x15): undefined reference to
sqrt'
collect2: error: ld returned 1 exit status
というエラーメッセージ?が表示されてしまいます。
どうしたらエラーが出ないようにできるのでしょうか。
c
1 2#include <stdio.h> 3#include <math.h> 4 5int prime(int x){ 6 int y = sqrt(x), i; 7 if(0 == x%2){ 8 return 0; 9 } 10 if(x<=1){ 11 return 0; 12 } 13 if(2==x){ 14 return 1; 15 } 16 else{ 17 for (i = 3; i < y; i += 2){ 18 if(x % i == 0) 19 return 0; 20 } 21 return 1; 22 } 23 24} 25 26int main(void){ 27 int n; 28 printf("Please enter a number:"); 29 scanf("%d", &n); 30 if(prime(n)){ 31 printf("%d is a prime number\n", n); 32 }else{ 33 printf("%d is not a prime number\n", n); 34 } 35 return 0; 36} 37
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/15 07:59
2020/10/15 08:25
2020/10/15 08:27
2020/10/15 08:40