您的位置:首页 > 其它

题目1087:约数的个数

2013-09-24 21:18 281 查看
题目描述:输入n个整数,依次输出每个数的约数的个数输入:输入的第一行为N,即数组的个数(N<=1000)接下来的1行包括N个整数,其中每个数的范围为(1<=Num<=1000000000)当N=0时输入结束。输出:可能有多组输入数据,对于每组输入数据,输出N行,其中每一行对应上面的一个数的约数的个数。样例输入:
5
1 3 4 6 12
样例输出:
1
2
3
4
6
约数定理
#include<iostream>#include<ctime>using namespace std;typedef struct node{bool f;char a[100];char sex[10];int y;}node,Node;int cmp(const void *p1,const void *p2){return *(char *)p1-*(char *)p2;}int faci(int n){if(n==0)return 0;else if(n==1)return 1;else{int s=faci(n-2)+faci(n-1);return s;}}int main(){int n;while(cin>>n){int *a=new int;for(int i=0;i<n;i++)cin>>a[i];for(int i=0;i<n;i++){int c=0;int sum=1;for(int j=2;j<=a[i];j++){c=0;while(a[i]>=j){if(a[i]%j==0){c++;a[i]/=j;}elsebreak;}if(c!=0)sum*=(c+1);}cout<<sum<<"\n";}}}
[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: