C#编程—第五天--循环语句for
for穷举法、迭代法
穷举法练习:
- //穷举法:
- //1、找100以内的与7有关的数
- //2、小明单位发了一百元的购物卡,他到超市买洗化用品,一是洗发水(15元),二是香皂(2元),三是牙刷(5元)怎么可以正好把一百元花完。
- //3、公鸡两文钱一只,母鸡一文钱一只,小鸡半文钱一只,花100文钱买100只鸡,该如何购买?
- //4、大马驮2石粮食,中马驮1石粮食,两头小马驮一旦粮食,要用100匹马,驮100石粮食,该如何调配
- //5、有一分钱、两分钱、五分钱硬币,要组合出两角有哪些组合方法。
- //6、某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件:
- //A和B两人中至少去一人; a+b>=1
- //A和D不能一起去; a+d<=1
- //A、E和F三人中要派两人去; a+e+f==2
- //B和C都去或都不去; 注释: b+c!=1
- //C和D两人中去一个; c+d==1
- //若D不去,则E也不去。 d+e==0||d==1
- //问应当让哪几个人去?
- //7、123()45()67()8()9=100;要求在()里面填写+或-使等式成立。
- //2、小明单位发了一百元的购物卡,他到超市买洗化用品,一是洗发水(15元),二是香皂(2元),三是牙刷(5元)怎么可以正好把一百元花完。
- for (int i = ; i <= ; i++)//i:单独买洗发水最多可以买6
- {
- for (int j = ; j <= ; j++)//j:香皂单独买最多50
- {
- for (int n = ; n <= ; n++)//n:牙刷单独买最多20
- {
- if ( * i + * j + * n == )//判断什么情况可以把一百元花光
- {
- Console.WriteLine("{0}瓶洗发水和{1}块香皂和{2}个牙刷一共一百元", j, j, n);
- }
- }
- }
- }
- //3、公鸡两文钱一只,母鸡一文钱一只,小鸡半文钱一只,花100文钱买100只鸡,该如何购买?
- for (int i = ; i < ; i++)//i:公鸡两文钱一只
- {
- for (int j = ; j < ; j++)
- {
- for (int n = ; n < ; n++)
- {
- if ( * i + j + 0.5 * n == && i + j + n == )
- {
- Console.WriteLine("满足条件需要公鸡{0}只,母鸡{1},小鸡{2}。", i, j, n);
- }
- }
- }
- }
- //4、大马驮2石粮食,中马驮1石粮食,两头小马驮一旦粮食,要用100匹马,驮100石粮食,该如何调配
- for (int i = ; i <= ; i++)
- {
- for (int j = ; j <= ; j++)
- {
- for (int n = ; n <= ; n++)
- {
- if ( * i + j + 0.5 * n == && i + j + n == )
- {
- Console.WriteLine("满足条件需要大马{0}只,中马{1},小马{2}。", i, j, n);
- }
- }
- }
- }
- //某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件:
- //A和B两人中至少去一人; a+b>=1
- //A和D不能一起去; a+d<=1
- //A、E和F三人中要派两人去; a+e+f==2
- //B和C都去或都不去; 注释: b+c!=1
- //C和D两人中去一个; c+d==1
- //若D不去,则E也不去。 d+e==0||d==1
- //问应当让哪几个人去?
- for (int a = ; a <= ; a++)
- {
- for (int b = ; b <= ; b++)
- {
- for (int c = ; c <= ; c++)
- {
- for (int d = ; d <= ; d++)
- {
- for (int e = ; e <= ; e++)
- {
- for (int f = ; f <= ; f++)
- {
- if (a + b >= && a + d <= && a + e + f == && b + c != && c + d <= && (d + e == || d == ))
- {
- Console.WriteLine("A:{0}\nB:{1}\nC:{2}\nD:{3}\nE:{4}\nF:{5}", a, b, c, d, e, f);
- }
- }
- }
- }
- }
- }
- }
- //7、123()45()67()8()9=100;要求在()里面填写+或-使等式成立。
- //string a, b;
- //a = "+";
- //b = "-";
- for (int i = -; i <= ; i += )// 初始值-1 判断条件限定i只能是-1 或者+1 i+=2 ==> i=i+2
- {
- for (int j = -; j <= ; j += )
- {
- for (int n = -; n <= ; n += )
- {
- for (int m = -; m <= ; m += )
- {
- if ( + i * + j * + n * + m * == )
- {
- //if (i==1||i == -1||j==1||j == -1||n==1||n == -1||n==1||m == -1)
- //{
- //}
- Console.WriteLine("123+({0}*45)+({1}*67)+({2}*8)+({3}*9)=100", i, j, n, m);
- }
- }
- }
- }
- }
迭代法练习:
- //求阶乘(6的阶乘)
- int jc = ;
- for (int i = ; i >= ; i--)
- {
- jc = i * jc;
- }
- Console.WriteLine("6的阶乘是:" + jc);
- //或者
- int jc = ;
- for (int i = ; i < ; i++)
- {
- jc = jc * i;
- }
- Console.WriteLine(jc);
- //求年龄。(有6个小孩子排在一起,问第一个多大年龄,她说:比第二个小2岁,问第二个多大年龄,她说:比第三个小2岁,以此类推,问第六个多大年龄,她说:自己16岁,问第一个小孩子几岁?)
- int age = ;
- for (int i = ; i >= ; i--)//i为第二个小孩岁数
- {
- age -= ;
- }
- Console.WriteLine("第一个小孩的年龄是:" + age + "岁");
- //一张纸的厚度是:0.15mm,假设这张纸足够大可以无限次对折,问:折26次的高度是多少?
- double a = 0.00015;
- for (int i = ; i <= ; i++)
- {
- a *= ;
- }
- Console.WriteLine("当纸折叠26次时,厚度为:" + a + "米");
- //假设一张纸厚度....珠峰高度:8848
- decimal h = 0.00007m;
- for (int i = ; i < ; i++)
- {
- h *= ;//h=h*2
- if (h > 8848m)
- {
- Console.WriteLine("对折次数:" + i);
- break;
- }
- }
- //另一种方式:
- int n = ;
- for (double i = 0.00007; i <= ; i = i * )
- {
- n++;
- }
- Console.WriteLine(n);
- //棋盘放粮食(请在第一个格子放1粒粮食,第二个格子放2粒,第三个格子放四粒,以此类推,
- //每个格子放的粮食都是前一个格子里粮食的2倍,直到放到第64个格子,请问第64个格子需要多少粮食?
- //假如1粒粮食重量0.02克,那么棋盘64个格子的粮食一共重多少千克?
- decimal sum = , num = ;
- for (int i = ; i <= ; i++)
- {
- num = num * ;
- sum = num + i;
- }
- Console.WriteLine("第64个格子需要粮食:{0}", sum);
- decimal w = (decimal)0.00002;
- decimal sw = w * sum;
- Console.WriteLine("棋盘所有64个格子 上面粮食总重:{0}", sw);
- //公园里有一只猴子和一堆桃子,猴子每天吃掉桃子数量的一半,
- //把剩下的一半数量中扔掉一个坏的,到了第七天,
- //猴子睁开眼发现只剩下一个桃子了,问公园原来有多少桃子?
- int count = ;
- for (int i = ; i >= ; i--)
- {
- count = (count + ) * ;
- }
- Console.WriteLine("原来桃子数:{0}", count);
迭代法练习
C#编程—第五天--循环语句for的更多相关文章
- 【shell】shell编程(四)-循环语句
上篇我们学习了shell中条件选择语句的用法.接下来本篇就来学习循环语句.在shell中,循环是通过for, while, until命令来实现的.下面就分别来看看吧. for for循环有两种形式: ...
- Shell编程-08-Shell中的循环语句
目录 while语句 until语句 for语句 select语句 循环中断控制 循环语句总结 循环语句常用于重复执行一条命令或一组命令等,直到达到结束条件后,则终止执行.在Shell中常见的 ...
- Java编程基础-选择和循环语句
一.选择结构语句 选择结构:也被称为分支结构.选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码. Java语言提供了两种选择 ...
- shell编程基础(二): shell脚本语法之分支语句和循环语句
一.分支语句 1.条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Status为1(注意与 ...
- python编程:从入门到实践----第五章>if 语句
一.一个简单示例 假设有一个汽车列表,并想将其每辆汽车的名称打印出来.遇到汽车名‘bmw’,以全大写打印:其他汽车名,首字母大写 cars=['audi','bmw','subaru','toyota ...
- bash编程之多分支if 语句及for循环
第十七章.bash编程之多分支if 语句及for循环 if语句三种格式 多分支if语句练习 for循环 17.1.if语句的三种格式 单分支if语句 if condition;then 条件为真执行的 ...
- SQL基本编程,分支语句,循环语句,存储过程,触发器
基本编程: 定义变量 declare @变量名 数据类型 赋值 set @变量名 = 值 select @变量名 = 值 取值打印 select @变量名 print @变量名 映射到结果集 打印到消 ...
- Python编程基础[条件语句if 循环语句 for,while](二)
ython条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 判断条件: 执行语句……else: 执行语句…… x= ...
- “全栈2019”Java第二十五章:流程控制语句中循环语句while
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
随机推荐
- python2和python3的编码encode解码decode函数
python比较坑的一个点:意义完全变了的两个函数 首先 常用的编码方式有3种,utf-8: 常用的传输和存储格式,Unicode的一种简化 Unicode:包括了所有可能字符的国际统一编码 GBK ...
- python 图像处理中二值化方法归纳总结
python图像处理二值化方法 1. opencv 简单阈值 cv2.threshold 2. opencv 自适应阈值 cv2.adaptiveThreshold 3. Otsu's 二值化 例子: ...
- 在windows的文件添加右键"命令提示符"菜单
1\把以下内容保存为reg文件,然后导入 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\she ...
- kd树解平面最近点对
早上起来头有点疼,突然就想到能不能用kd树解平面最近点对问题,就找了道题试了一下,结果可以,虽然效率不高,但还是AC了~ 题目链接:http://acm.hdu.edu.cn/showproblem. ...
- nyoj 253:LK的旅行 【旋转卡壳入门】
题目链接 求平面最大点对. 找凸包 -> 根据凸包运用旋转卡壳算法求最大点对(套用kuang巨模板) 关于旋转卡壳算法 #include<bits/stdc++.h> using n ...
- Vue学习笔记-插槽基本使用
为了让我们的组件更加具有扩展性,可以使用插槽 <div id="app"> <cpn> <span>返回</span> <in ...
- 一次服务器CPU占用100%的问题排查
今天写了一段垃圾代码,然后上服务器上运行,cpu瞬间飙到了100%,现记录一下问题排除过程~ 1. 问题代码 package qinfeng.zheng.mockmvcdemo; import org ...
- 对于vue绑定的model值里边get和set的小动作
先看下例子: template里边内容: <el-form-item label="导航条类型"> <el-radio-group v-model="n ...
- centos7.4 搭建lnmp
系统:阿里云 centos7.4 Php:PHP 7.1.13 (cli) Mysql:mysql5.7 Nginx:nginx/1.12.2 一.更新centos7 yum源 cp /etc/yum ...
- jmeter添加自定义扩展函数之小写转换大写
1,打开eclipse,新建maven工程,在pom中引用jmeter核心jar包,具体请看---https://www.cnblogs.com/guanyf/p/10863033.html---,这 ...