1、亲密数:假设有 a、b 两个数,若 a 的所有因子之和等于 b,b 的所有因子之和等于 a,并
且 a 不等于 b,则称 a 和 b 是一对亲密数。如 284 和 220 就是一对亲密数。
#include<stdio.h>
int main()
{
int a,b,i,n;
for(a=1;a<=10000;a++)
{
for(b=0,i=1;i<=a/2;i++)
if(a%i==0)
b+=i;
for(n=0,i=1;i<=b/2;i++)
if(b%i==0)
n+=i;
if(n==a&&a!=b&&a<b)
printf("%d-%d\n",a,b);
}
return 0;
}
2、世纪末的星期: 曾有邪教称 1999 年 12 月 31 日是世界末日。当然该谣言已经不攻自破。
还有人称今后的某个世纪末的
12
月
31
日䊵如果是星期一则会
....
有趣的是 任何一个世纪末的年份的 12 月 31 日都不可能是星期一!!
于是 “谣言制造商”又修改为星期日......
1999 年的 12 月 31 日是星期五,请问,未来哪一个离我们最近的一个世纪末年即 xx99
年的 12 月 31 日正好是星期天,即星期日
请回答该年份,只写这个 4 位整数,不要写 12 月 31 等多余信息
#include<stdio.h>
int main()
{
long days = 5;
/*1999 年的最后一天为周 5,把下一年加上 5 天对 7 取余为 0 的,则是周日*/
int i = 2000;
for(;;) /*无循环终止条件,可以利用 break 语句终止循环*/
{
if(i%4==0&&i%100!=0||i%400==0)
{
days = days%7+366;
}
else
{
days = days%7+365;
}