C#跳转语句 迭代法 穷举法

时间:2021-12-28 00:51:40

一、跳转语句 break & continue

break:跳出循环,终止此循环,不管下面还有多少次,全部跳过。

string a=" ", for (int i=1;i<=10;I++) { if(i==5) { break; }
     
a += i +","; } Console.WriteLine(a);

输出结果为 1,2,3,4,5

continue:终止此次循环,直接开始下次循环。

string a=" ", for (int i=1;i<=10;I++) { if(i==5) { continue; }      a += i +","; } Console.WriteLine(a);

输出结果为 1,2,3,4,6,7,8

二、迭代法

迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。

//程序里的迭代:
int
a = 0; for(int i = 1; i<=10;i++) { a++; }

三、穷举法

穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。穷举法也称为枚举法。

代表题目:百鸡百钱:有100文钱,,小鸡0.5文,公鸡1文钱,母鸡2文钱。问100文钱全买鸡,每种鸡至少一只,所有鸡总共100只,求有多少种可能并列出每种可能。

int cont = 0;
for
(int xj = 1; i<=200;i++)
{
  for(int gj = 1;gj<=100;gj++)
  {
    for(int mj = 1;mj< = 50; mj++)
    {
      if((xj*0.5) + (gj*1) + (mj*2) == 100 && xj+gj+mj == 100)
      {
        Console.WriteLine("小鸡"+xj+"只,共"+xj*0.5"元;"公鸡"+gj+"只,共"+gj+"元;"母鸡"+mj+"共"+mj*2+"只,"元";
        count++;
      }
    }
  }
}
Console.WriteLine("总共有 "+count+" 种可能性。");