1樓:康小神
逐個列舉 每一次都判斷是否是這個自然數的因子c++**如下。
for(int i=1;i<=n;i++)if(!(n%i))cout《如果需要更高效的演算法 再聯絡我。
c語言:編寫一個函式,求出一個給定數字的所有因子。
2樓:匿名使用者
1.對1~本身的各個數取餘,為零的即為其因子。
#include
void factor(int n)
printf(""
}int main()
3樓:網友
#include
#include
using namespace std;
int main()
}cout<<"就是以上結果";
system("pause");
}執行過了。
用c語言求一個數的所有因子
4樓:愛路路是我
#include
void main()
int a,i=1; /先定義兩個變數a和i,i的初值為1(因為一個數的因子包括1)*/
scanf("%d",&a); 輸入想求的數*/while(iif(a%i==0) /當i可以被a整除時輸出i(這時輸出的i即為a的因子)*/
printf("%d,",i);
i++;變數i的值加1*/printf(""
include
void main()
{int num,i;
scanf("%d",&num);
for (i=1;iif (num%i==0)printf("%d ",i);
num為你要求的數,num如果能被i整除,那麼輸出i
5樓:網友
#include
void main()
num為你要求的數,num如果能被i整除,那麼輸出i
6樓:匿名使用者
首先說一下,一、二樓的方向是正確的。但是有個明顯的缺陷,程式做了很多無用功。當輸入的資料非常之大時,就明顯了。
舉個例子,對10000求解。我寫的程式只需要計算100次,而他們的則要計算10000次!!!
#include
#include
void main()
i++;printf(""
設計一個演算法求出500的所有因數。
c語言求一個數的因子
7樓:ok洛陽水席
#include
int m;
void num(int n,int b)for(i=0;i
要寫成動態的可以這樣:
#include
int m;
for(i=0;i
將a陣列作為形式引數,把a中的資料傳遞給主調函式中的實引數組b。實引數組b的大小要保證能夠存放整數m的因子。
這句話好神奇……
這句話似乎想要這樣:
#include
int m;
void nstrcpy(int a,int b){int i;
for(i=0;i
8樓:匿名使用者
struct factorstable
factorstable* getfactors(int num)..
}建議這麼寫,這樣就可以解決陣列返回指標頭,不能返回陣列長度問題。
9樓:曖昧
這個要你自己的理解 邏輯思維這些滴。
如何用數學公式求出一個數的所有因子數。
10樓:網友
沒有相應的公式,可以藉助短除法。短除法,就是用質數(2,3,5……)分別作為除數,一直除到結果為質數。
比如60,可以寫成60=2*2*3*5,2、3、5即為60的因子。不要忘記1
對於較小的數才能用此法,較大的數需要藉助計算機程式設計,遍歷小於這個數的所有質數,分別驗證(窮舉)。
拓展資料
質數:又稱為素數,即除了1和它本身沒有其他的因數。否則稱為合數。最小的質數為2。正整數內,1既不是質數,也不是合數。
因子數:除去本身外,能被這個數整除的數。1是容易忽略的因子數。
短除法:開始時用觀察等方法,寫出因數,逐漸縮小被除數,直到為質數。
11樓:一定手留餘香
沒有公式。
比如:28,因為1x28=28,2x14=28,4x7=28所以,28的因子分別是:1,2,14,4,7共5個因子。
12樓:數學好玩啊
必須先分解n=a1^t1*a2^t2……am^tm(a1,a2,……am為不同素數)則n的所有因子數(正因子)為(t1+1)(t2+1)……tm+1)
13樓:本報北京不能
無限不迴圈小數和開根開不盡的數叫無理數。
整數和分數統稱為有理數。
數學上,有理數是兩個整數的比,通常寫作 a/b,這裡 b 不為零。分數是有理數的通常表達方法,而整數是分母為1的分數,當然亦是有理數。
數學上,有理數是一個整數 a 和一個非零整數 b 的比(ratio),通常寫作 a/b,故又稱作分數。希臘文稱為 λο原意為「成比例的數」(rational number),但中文翻譯不恰當,逐漸變成「有道理的數」。不是有理數的實數遂稱為無理數。
所有有理數的集合表示為 q,有理數的小數部分有限或為迴圈。
【c++】求一個正整數的所有因子
14樓:物理公司的
#include
#include
#define max_len 200
void main()
{int num1[max_len]; 存放測試用例int num_test=0;//測試用例個數//初始化數字陣列num1[max_len]for (int i=0;i
c語言程式設計:求一個數的質因子
15樓:網友
#include
int main()
}printf("%d=%d", y, a[0]);輸出原數、等號、第一個質因數。
for(i = 1; i < j; i++)printf("×d", a[i]);如果存在第二個質因數,則繼續輸出。
return 0;}
16樓:網友
#include
int main()
{int i,j=0,x;
printf("請輸入一個整數:")
scanf("%d",&x);
printf("該數的質因子為:")
for(i=2;i<=x;i++)此迴圈用來尋找因子{if(x%i==0)
{for(j=2;j
求一個數的因子c/c++演算法
17樓:視覺籃球
c++寫的,你看一下吧,我儘量詳細的註釋了一下,不懂就追問;
#include
using namespace std;
int main()
}return 0;}
18樓:納威的吶喊
我把上面的那位的稍微改一下就稍微有效率了#includeusing namespace std;
int main()
}cout 19樓:化敏博 只需比較 sqrt(n)次;假如n==10000,只需比較100次#include #include int main() include include using namespace std int main return 0 編寫程式,求出所有小於或等於100的自然數對。自然數對是指兩個數的和與兩個數的差都是平方數。這個程 a sqrt m n a sqrt m n 放到for n 1 n 100 n 中,和下面一... 你好,bai我來du 為你zhi解dao答 版private sub mand1 click dim i j m 權,n for i 1 to 100 for j i 1 to 100 m sqr i j n sqr j i if fix m m and fix n n then print i,j... 千位數字和 1 百位數字和 5 6 7 8 9 100 3500十位數字和 1 2 3 9 500 10 2250個位數字和 1 2 3 9 500 10 2250全部數字和 1 3500 2250 2250 8001 11 0 1 2 3 4 5 6 7 8 9 5 100 5 6 7 8 9 1...求出所有小於或等於100的自然數對c
求vb程式設計100以內的所有自然數對自然數對指其和與
求500到1000所有連續自然數的全部數字和是多少