循环结构程序设计习题,韩信点兵,水仙花数

水仙花数

输出100~999之间 的所有水仙花数,若三位数ABC=A^3+ B^3+ C^3,则称ABC为水仙花数
这么简单为什么现在才开始做

#include 
int main()
{
 for (int i = 1; i < 10; i++)
 {
  for (int j = 0; j < 10; j++)
  {
   for (int k = 0; k < 10; k++)
   {
    int x = 0, y = 0;
    x = 100 * i + 10 * j + k;
    y = i * i*i + j * j*j + k * k*k;
    if (x == y)
     printf_s("%d\n", x);
    x = 0;
    y = 0;
   }
  }
 }
 return 0;
}

没什么技术含量完美解决

韩信点兵

相传韩信才智过人,从不数数。输入包含多组数据,每组数据包含三个非负整数abc,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值,或报告无解。已知总人数不小于10,不超过100,输入到文件结束为止。
EOF
提供两种思路,枚举法和数学解法

枚举法

//韩信点兵,枚举法
#include
int main()
{
 int a = 0, b = 0, c = 0;
 int n = 0;
 int kase =0;
 while (scanf_s("%d %d %d", &a, &b, &c) != EOF)
 //scanf_s("%d %d %d", &a, &b, &c);
 {
  for (n = 10;n < 100; n++)
  {
   if ((n - a) % 3 == 0 && (n - b) % 5 == 0 && (n - c) % 7 == 0)
   {
    printf_s("%d\n", n);
     kase += 1;
   }
  }
  if (kase ==0)
   printf_s("No answer\n");
  //return 0;
 }
 return 0;
}

这玩意小学奥数题啊
数论可做,中国剩余定理也可以做
**

你可能感兴趣的:(循环结构程序设计习题,韩信点兵,水仙花数)