找回密码
 欢迎注册
查看: 6133|回复: 5

[悬赏] 求c代码:输入一个n,输出一个二维数组。。。

[复制链接]
发表于 2012-8-17 23:34:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
求c代码:输入一个n,输出一个二维数组
输入一个偶数n,6<n<19680;
输出二维数组a[9][9]

比如n=42
则输出
8 3 0 0 0 0 0 0 0
3 3 1 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0

其中
a[1][1]=8     (因为42等于8组 素数+素数 :42=5+37         42=11+31   42=13+29   42=19+23
42=23+19  42=29+11   42=31+11   42=37+5)
a[1][2]=3     (因为42等于3组 素数+质因数数量为2的数 :42=3+39  42=7+35  42=17+25)
a[2][1]=3     (因为42等于3组 质因数数量为2的数+素数 :42=39+3  42=35+7  42=25+17)
a[2][2]=3    (因为42等于3组 质因数数量为2的数+质因数数量为2的数 :42=9+33   42=21+21  42=33+9)
a[2][3]=1    (因为42等于1组 素数+质因数数量为3的数 :42=15+27)
a[3][1]=1    (因为42等于1组 质因数数量为3的数+素数 :42=27+15)
其他为0

就是把n分拆成为2个奇数,其中n=1+(n-1)和n=(n-1)+1这两个情况不考虑。
把分成的这两个奇数,分别求质因数数量
如3,  5  ,  7   ,11这些素数,就是质因数数量为1的数
如65=5*13  ,  49=7*7 ,  93=3*31 这些就是质因数数量为2的数
余此类推。
n<19682是因为3^9=19683,如果大于此数,则需要a[10][10]的数组了。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2012-8-18 13:00:44 | 显示全部楼层
程序前面是
  1. #include   <stdio.h>

  2. int   main()
  3. {
  4. int   a[9][9]   =   {0};
  5. int   i,   j;
  6. int n;
  7. printf("请输入一个大于6的偶数:\n");
  8. scanf("%ld", &n);
  9. printf("%d[]=:\n",n);
复制代码
后面是
  1. for   (i=0;   i <9;   i++)
  2. {
  3. for   (j=0;   j <9;   j++)
  4. printf( "%2d ",   a[i][j]);
  5. printf( "\n ");
  6. }

  7. }
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2012-8-18 19:55:49 | 显示全部楼层
附上求n的质因子数的函数pn(n)
  1. int pn(int n)
  2. {
  3. int i,t=1;
  4. for(i=2;i<=n;i++)
  5. {
  6. while(n!=i)
  7. {
  8. if(n%i==0)  
  9. {
  10. n/=i;t++;
  11. }
  12. else
  13. break;
  14. }
  15. }
  16. return (t);
  17. }
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2012-8-18 21:09:12 | 显示全部楼层
2楼和3楼只是我编程时的一些代码,各位不一定按照这个来,用自己的方法,能得到正确答案就行。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2012-8-23 16:10:10 | 显示全部楼层
背景背景,问题的背景很重要!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2012-8-27 16:06:41 | 显示全部楼层
问题的背景:
a[1][1]=是哥德巴赫分拆数
从将偶数分拆为2个奇数,看看这些奇数对的内部规律。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-20 23:46 , Processed in 0.042300 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表