求各位大佬教一下,我是新手,現在在編程式做一道數學題,遇到了一個困難。
有興趣的也可以看看這個題目
uj5u.com熱心網友回復:
這個題目和提問不相干uj5u.com熱心網友回復:
我寫的解決這個問題的程式需要判斷是否是整數
uj5u.com熱心網友回復:
你告訴我如何判斷是不是整數就可以了
uj5u.com熱心網友回復:
題目的意思是給你一堆正整數,找出符合條件【既不是平方數也不是立方數】的數列的第500項,你一個一個開方效率是很低的,那1可以得到2個數1,1,那2可以得到兩個數4,8,4和8又分別能得到兩個數,這樣能找出這個數列uj5u.com熱心網友回復:
知道強轉嘛,你可以把一個數賦值給一個int變數,如果是小數的話,會被強轉成為整數,然后用呢個int變數和這個變數做對比,如果相等了,這個值就是整數,否則就是小數,不知道我說的夠不夠清楚?uj5u.com熱心網友回復:
C語言沒有準確的方法判斷是否是整數,只能通過abs((double)a - (int)a) < 1e-9來判斷uj5u.com熱心網友回復:
#include <stdio.h>
#include <string.h>
#define N 500
int main(void)
{
int arr[N * 2] = {0};
int count = 0;
int i;
for (i = 1; i * i < N * 2; i++)
arr[i * i] = 1;
for (i = 1; i * i * i < N * 2; i++)
arr[i * i * i] = 1;
for (i = 1; i < N * 2; i++)
{
if (arr[i] == 0)
{
count++;
if (count == 500)
{
printf("%d\n", i);
break;
}
}
}
return 0;
}
uj5u.com熱心網友回復:
這個問題很有意思c/c++都是強語法檢查,你定義變數的時候就知道了它的資料型別,不需要做檢查
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/119975.html
標籤:新手樂園
上一篇:自學小白求救
下一篇:演算法內容,求各位大佬幫幫孩子吧
