本章目录

----------① 10以内的奇数偶数

----------② 输出乘法口诀表

----------③ 找出100以内与7相关的数

----------④累加求和

----------⑤求10的阶乘

----------⑥兔子题

----------⑦折纸达到珠峰高度

----------⑧200元买三种东西花光所有钱

----------⑨100文买鸡

----------⑩凑钱1,2,5凑20元钱有多少可能

----------⑪填写加减使等式成立

----------⑫棋盘芝麻

----------⑬篮球弹跳

----------⑭阶乘相加

----------⑮阶乘相加

----------⑯找闰年

一、找出十以内的奇数和偶数

//10以内奇数偶数//10以内,代表循环条件,奇数偶数是判断条件,偶数是除以2余0的数,而奇数是自然数中除偶数之外的所有数,不能被2整除的数for( var i=0;i<=10;i++){//定义循环的条件,从0开始判断,范围包括10以内,每次执行+1;if(i%2==0){//该判断的意义为,如果能够被2整除余数是0,则进入内部的数是偶数,然后输出document.write("偶数是:"+i+"<br />")}else{//那么除了偶数就是奇数document.write("奇数是:"+i)}}//十以内与7相关的数

输出结果:

二、输出乘法口诀表

所有的公式可以写为a*b=c的形式,那么口诀表的格式如下
1*1=1;
1*2=2;2*2=4;
1*3=3;2*3=6;3*3=9;
1*4=4;2*4=8;3*4=12;4*4=16;
我们发现,每一列的a是相同的数值,且从第一列开始每次+1
每一行的b是相同的数值,且从第二行开始每次+1;

    //可以先定义a的范围及a的运算形式,每次+1for(var a=1;a<10;a++){//然后定义b的范围,每次+1,并且使用b<=1,去重复的公式,避免出现1*1--1*9;2*1--2*9的重复for(var b=1;b<=a;b++){//定义ab的乘积var c = a*b;//输出因为a的每次+1换行,所以使b显示在前,a显示在后document.write(b+"*"+a+"="+c+";")}document.write("<br>");}

结果:

三、找出100以内与7相关的数

我们可以考虑所有与7相关的数,有下面几种情况

①  判断能被七整除的,

② 尾数是7的数,    除以10余7的,

③ 十位数是7的数字,  (除以10的整数部分)除以10等于7的,

    //首先定义循环,遍历每一个小于等于100的数字for(var seven=0;seven<101;seven++){//判断能被七整除的,除以10余7的(尾数是7的数),(除以10的整数部分)除以10余7的,这是十位数是7的数字if(seven%7==0 || seven%10==7 || parseInt(seven/10)==7){document.write(seven+"&nbsp");    }    }

输出结果:

四、累加求和,求0-100之间的和,

0+1+2+3+4+5...+100,

每次总数等于之前的和加当前的数,而当前的数是递加1

var sum = 0;//定义变量盛放总数,0+任何数都等于原来的数//循环,从0开始加到100for(var i=0;i<101;i++){//因为i从0开始,i每次加1.所以总数=上一次的总数+i当前的数sum = sum+i;  //0  1 3    6}document.write(sum);

输出结果:

五、求10的阶乘

数学表达方式1*2*3*4*5....*10

//首先想到的是规定范围,从1开始(排除0,因为0乘以任何数为0),最高循环到10var factorial =1;//因为是乘法,所以默认值是1,1乘以任何数为原来的数for(var i=1;i<11;i++){//阶乘等于上一个得出来的积再乘以当前数factorial = factorial*i;}document.write(factorial);

输出结果:

六、兔子题

题目:有一对幼兔,幼兔1个月后长成小兔,小兔1个月后长成成兔并生下一对幼兔,问8个月后有多少对兔子,幼兔、小兔、成兔对数分别是多少。

题目解析

月份  0   1   2   3   4   5   6   7   8
幼兔  1   0   1   1   2   3   5   8   13
小兔  0   1   0   1   1   2   3   5   8
成兔  0   0   1   1   2   3   5   8   13
从第一个月开始看,规律是
小兔初始值为1;每个月的小兔等于上个月的幼兔
成兔初始值为0,每个月的成兔等于上个月的成兔+上个月的小兔
幼兔初始值为0,每个月的幼兔等于上个月的小兔+上个月的额成兔

var yt =1;var xt =0;var ct =0;for(var month=1;month<9;month++){//成兔等于上个月的成兔+上个月的小兔ct = ct + xt;//小兔等于上个月的幼兔xt = yt; //yt = xt + ct因为xt已经赋值,所以会出现yt等于之前的和,所以找到新规律,当前月的小兔等于当前月的成兔yt = ct; }alert(ct+yt+xt)

输出结果:

七、折纸达到珠峰高度

题目:折多少次和珠穆朗玛峰一样高,一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米

定义纸的厚度,每次运行对折一次,即为原来的二倍厚度,判断厚度大于8848的时候记录循环次数并跳出

var h = 0.0001;//从第一次对折开始for(var i=1;i>=0;i++){//每次对折当前高度等于上次高度*2倍h = h*2;  //判断如果h的厚度大于8848的时候,输出i的对折次数if(h>8848){alert(i);break;    //该处执行一次并跳出,否则继续运行}    }

输出结果:

 八、200元买三种东西花光所有钱

题目:羽毛球拍15元,球3元,水2元。200元每种至少一个,有多少可能

羽毛球拍x最多买13个 球y最多买66个 水z最多买100个   以及  15x+3y+2z=200

var sum = 0;//容器存放次数//x的可能最少1次,所以循环范围最多的次数-1for(var x=1;x<15;x++){//y的可能最少1次,所以循环范围最多的次数-1for(var y=1;y<66;y++){//z的可能最少1次,所以循环范围最多的次数-1for(var z=1;z<100;z++){//判断三种物品的价格相加等于200的可能再次运行if(x*15+y*3+z*2==200){    sum++;//每次符合条件,计数器+1}    }    }    }alert(sum);

输出结果:

九、100文买鸡

题目:公鸡2文,母鸡1文,小鸡半文,每种至少一只,100文买100只鸡有多少可能性

  公x最多可能50种可能 母y最多可能100种可能  小z最多200种可能   以及  2x+y+0.5z=100

var sum = 0;//容器存放次数//x的可能最少1次,所以循环范围最多的次数-1for(var x=1;x<51;x++){//y的可能最少1次,所以循环范围最多的次数-1for(var y=1;y<101;y++){//z的可能最少1次,所以循环范围最多的次数-1for(var z=1;z<201;z++){//判断三种物品的价格相加等于200的可能再次运行if(2*x+y+0.5*z==100 && x+y+z==100){sum++;//每次符合条件,计数器+1}}    }    }alert(sum);

输出结果:

十、凑钱1,2,5凑20元钱有多少可能

1块钱x最多可能20种可能, ,2元钱y最多可能10种可能  5块钱z最多4种可能   以及  x+2y+4z=100

var sum = 0;//容器存放次数//因为没有规定最少存在1次所以初始值=0,所以循环范围最多的次数等于可能的最多次数for(var x=0;x<21;x++){for(var y=0;y<11;y++){for(var z=0;z<5;z++){if(x+2*y+5*z==20){sum++;}    }    }    }alert(sum);

输出结果:

十一、填写加减使等式成立

题目:括号里面只能放加或减,如果要使等式成立,括号里面应该放什么运算符 12()34()56()78()9 = 59;

加减号可以使用当前数字乘以1或乘以-1代替,并且区分每个加减号,规定ijkl为四个变量存储1或-1

四个运算符,每个运算符有+或-两个选项12+i+34+j+56+k+78+l+9+"="+59

//规定循环,数字初始值为-1,每次运行+2,得到1,最大值为1;for(var i=-1;i<2;i+=2){for(var j=-1;j<2;j+=2){for(var k=-1;k<2;k+=2){for(var l=-1;l<2;l+=2){//判断等式成立if(12+i*34+j*56+k*78+l*9==59){//为每个ijkl变量赋予+号或-号if(i==1){i="+";}else{i="-"}if(j==1){j="+";}else{j="-"}if(k==1){k="+";}else{k="-"}if(l==1){l="+";}else{l="-"}alert(12+i+34+j+56+k+78+l+9+"="+59);}}}}}

输出结果:

十二、棋盘芝麻

题目:棋盘有32个格子,第一个格子放1个芝麻,第二个放2个,第三个放4个,第四个放8个。。。每个芝麻的重量为0.00001kg,如果要放满整个棋盘,需要多少重量的芝麻。

芝麻数量   1     2     4     8     16     32

相应格子   1     2     3     4       5      6

相应算法    1*2^0        1*2^1  1*2^2    1*2^3     1*2^4    1*2^5

//定义总数量var sum =0;for(var i=1;i<33;i++){//每次进入下一个格子的时候保证a初始值=1,因为,计算下面的循环,a初始值必须为1;var a =1; var n =2;for(var j=1;j<i;j++){/*进入该循环时,每次执行a = a*2,并且j始终小于i一个数,所以当i=1的时候是第一格,不执行,跳出,a=1;当i=2的时候第二格,执行一次,a=2;跳出当i=3的时候第三个,执行两次,a=4,跳出*/a = a*n;}//总数量初始值为0,等于上次总数+当前格子数sum = sum + a;}alert(sum*0.00001)

输出结果 :

十三、篮球弹跳

题目:篮球从10米高的地方落下,每次弹起的高度是原来的0.3倍,问弹跳10次之后篮球的高度。

//初始高度var h =10;//循环条件弹跳次数,for(var i=1;i<11;i++){//循环内容高度改变,h = 0.3*h;    }alert("弹跳10次之后篮球的高度为:"+h);

输出结果:

十四、阶乘相加

题目:计算 1!+2!+3!+…..+10!的结果。

算法

1           1
1*2          1*2 =2
1*2*3       2*3 =6
1*2*3*4       6*4 =24
1*2*3*4*5      24*5=120

左侧是当前的阶乘,每次阶乘等于上次阶乘乘以当前数字

右侧是代表当前的和等于之前的和加当前的阶乘

var a = 1;var sum = 0;//定义存储和的容器//循环范围,十以内for(i=1;i<11;i++){//计算当前的阶乘,每次循环等于上次的阶乘乘以当前数字a = a*i;//计算和,每次和等于上次的和+当前的阶乘sum = sum + a;}alert(sum);

输出结果:

十五、找闰年

题目:输出1000年到2018年的所有闰年

凡是能被4整除的年份,但这里面有以及凡是能被400整除且不能被100整除的

两种写法

第一种

var sum = 0;//定义计算闰年数的容器//循环遍历规定范围内的每一年for(var y=1000;y<=2018;y++){//遍历出每一种能被4除的年份if(y%4==0){//凡是能被100整除的年份之中找到只能被400整除的if(y%100==0){if(y%400==0){document.write("<div>"+y+"</div>");sum++;}}//除了上面的可能,凡是被4整除的年份列举else{document.write("<div>"+y+"</div>");sum++;}}}document.write("<div><br />闰年一共有:"+sum+"年</div>")

第二种

    var sl = 0;//定义计算闰年数的容器//循环遍历规定范围内的每一年for(var i=2010;i<2019;i++){//判断能被400整除或者能被4整除并且不能被100整除的年份if(i%400==0 || i%4==0 && i%100!=0){document.write(i);sl++;}}alert(sl);

输出结果

转载于:https://www.cnblogs.com/wannian/p/8315949.html

目前为止学习过的循环解析过程相关推荐

  1. mybatis源码学习(三):MappedStatement的解析过程

    我们之前介绍过MappedStatement表示的是XML中的一个SQL.类当中的很多字段都是SQL中对应的属性.我们先来了解一下这个类的属性: public final class MappedSt ...

  2. Android 8.0 学习(12)---init.rc语法及解析过程总结

    Android 8.0 init.rc语法及解析过程总结       Android O高通默认使用QMMI取代了fastmmi,但是由于QMMI是一个APK,属于Android应用层面,所以必须等到 ...

  3. 深度学习目标检测详细解析以及Mask R-CNN示例

    深度学习目标检测详细解析以及Mask R-CNN示例 本文详细介绍了R-CNN走到端到端模型的Faster R-CNN的进化流程,以及典型的示例算法Mask R-CNN模型.算法如何变得更快,更强! ...

  4. DNS那些事——从浏览器输入域名开始分析DNS解析过程

    我们就从在浏览器输入域名开始分析. 文章目录 1. DNS服务器有哪些? 2. 从浏览器输入https://abc13.ban2.lcy0000.top/,DNS如何解析? 3. hosts文件是什么 ...

  5. 使用base标签后图片无法加载_Spring 源码学习(二)-默认标签解析

    `Spring` 解析默认标签~ 从上一篇笔记可以看出,在容器注册 bean 信息的时候,做了很多解析操作,而 xml 文件中包含了很多标签.属性,例如 bean . import 标签, meta ...

  6. DNS解析过程中不得不知道的那些事

    DNS解析过程中不得不知道的那些事 0x01 定义 0x02 域名结构 0x03 DNS查询方式 1.从查询方式分类 2.从查询内容: 0x04 常见的DNS资源记录 1.A/AAAA记录 2.CNA ...

  7. React深入学习与源码解析笔记

    ***当前阶段的笔记 *** 「面向实习生阶段」https://www.aliyundrive.com/s/VTME123M4T9 提取码: 8s6v 点击链接保存,或者复制本段内容,打开「阿里云盘」 ...

  8. NeurIPS 2019 少样本学习研究亮点全解析

    作者:Angulia Chao 编辑:Joni Zhong 少样本学习(Few-Shot Learning)是近两年来非常有研究潜力的一个子方向,由于深度学习在各学科交叉研究与商业场景都有比较普遍的应 ...

  9. oracle 测试sql执行时间_通过错误的SQL来测试推理SQL的解析过程

    这是学习笔记的第 1977 篇文章 如果抛出一个问题,你是如何理解MySQL解析器的,它和Oracle解析器有什么差别?相信大多数同学都会比较迷茫,因为这个问题很难验证,要不是看源码,要不就是查看书上 ...

最新文章

  1. 【转载】“error LNK1169: 找到一个或多个多重定义的符号”的解决方法
  2. 专访NIPS主席:如何保证论⽂评审的公平性?| 人物志
  3. 我对变量产生了这些想法
  4. java ide 2017_Intellij ide 2017.2新建javaweb项目,并且部署
  5. Python 二分查找算法
  6. ubuntu安装Qt开发环境
  7. HTTP状态码表格汇总
  8. RDS数据库通过内网导出到其他RDS实例和ESC上的MYSQL数据库(新手运维)
  9. 大神云集!2019年谷歌博士奖学金获得者重磅问世,清华、上交大、港中文入选最多!...
  10. go regexp匹配字符串_多模式字符串匹配算法ac自动机(用go语言实现)
  11. .net MVC之表单的使用
  12. 时时获得高德地图坐标 http://lbs.amap.com/console/show/picker
  13. Coreseek安装测试配置指南(转)
  14. 2019年7月Github上最热门的Java开源项目
  15. 有关计算机科学的问卷调查,E问卷:社会调查问卷新形式
  16. 【英语阅读】纽约时报 | 李子柒:隔离时期的田园“公主”
  17. vlc搭建流媒体转发服务器
  18. 前后端分离,图片(资源)路径如何处理
  19. 川大锦江学院吧计算机学院答辩,川大锦江学院上演跨国网上毕业论文答辩
  20. 图解WLAN网络拓补结构

热门文章

  1. java 线程阻止_Java:在特定队列大小后阻止提交的ExecutorService
  2. Keras Input Layer
  3. 机器学习中的范数理解(L0,L1,L2)
  4. Nvidia GPU的浮点计算能力(FP64/FP32/FP16)
  5. CPU, GPU, FPGA计算能力
  6. 如何在 Windows 下创建 macOS 引导介质 (USB 启动盘)
  7. Linux ❉ Chronyd时间同步服务器详解
  8. 危化品柜颜色如何区分?
  9. 开源邮件客户端_排名前6位的开源桌面电子邮件客户端
  10. Ubuntu安装软件时报错(报错:dpkg: 处理软件包 xxx (--configure)时出错: 依赖关系问题 - 仍未被配置)