JS 循环练习
规律 大范围套小范围 循环 分支语句 switch case 嵌套 死循环 while(true) 打破循环 break continue while(true)
1.折纸:折多少次和珠穆朗玛峰一样高 1.一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米
var hou = 0.0001;
var cishu = ;
for(var i=;i>=;i++)
{
hou = hou*;
if(hou>)
{
cishu = i+;
break;
}
}
alert(cishu);
2.有一对幼兔,幼兔1个月后长成小兔,小兔1个月后长成成兔并生下一对幼兔,问8个月后有多少对兔子,幼兔、小兔、成兔对数分别是多少。
幼兔 1 小兔 0 成兔 0 初始值 幼兔 0 小兔 1 成兔 0 第一个月 幼兔 1 小兔 0 成兔 1 第二个月 幼兔 1 小兔 1 成兔 1 第三个月 幼兔 2 小兔 1 成兔 2 第四个月 幼兔 3 小兔 2 成兔 3 第五个月 幼兔 5 小兔 3 成兔 5 第六个月
当前月份幼兔 = 上个月的成兔+上月小兔 当前月份小兔 = 上月幼兔 当前月份成兔 = 上月成兔+上月小兔
这个题重点注意 把这个月的兔子复制给上个月过程 也可以和上面题一样 直接上个月和这个月兔子用统一名称表示
var prevyou = 1;
var prevxiao = 0;
var prevcheng = 0; var nowyou = 0;
var nowxiao = 0;
var nowcheng = 0; for(var i=0;i<;i++)
{
//该月份的兔子数量
//当前月份幼兔 = 上个月的成兔+上月小兔
nowyou = prevxiao+prevcheng;
//当前月份小兔 = 上月幼兔
nowxiao = prevyou;
//当前月份成兔 = 上月成兔+上月小兔
nowcheng = prevcheng+prevxiao; //把当前月份的数量转化为上个月的
prevyou = nowyou;
prevxiao = nowxiao;
prevcheng = nowcheng; } alert(nowyou);
alert(nowxiao);
alert(nowcheng);
兔子问题
3.羽毛球拍15元,球3元,水2元。200元每种至少一个,有多少可能
羽毛球拍最多买13个 球最多买66个 水最多买100个
var sl=0;
for(var i=1;i<;i++)
{
for(var j=1;j<67;j++)
{
for(var k=1;k<101;k++)
{
if(i*15+j*3+k*2==200)
{
sl++;
}
}
}
} alert(sl);
购买方法
4.括号里面只能放加或减,如果要使等式成立,括号里面应该放什么运算符 12()34()56()78()9 = 59
1+2 1+ +1*2 5-10 5+ -1*10 (注意 :灵活运用1和-1 加25可以看作+1*2 5 减25可以看作+(-1)*2 5;同理乘除也一样)
循环未必是多次 可能只循环两次 也可能只循环1次 如下
for(var i=-1;i<;i=i+2)
{
for(var j=-1;j<2;j=j+2)
{
for(var k=-1;k<2;k=k+2)
{
for(var l=-1;l<2;l=l+2)
{
if(12+i*34+j*56+k*78+l*9==59)
{
alert(i+"|"+j+"|"+k+"|"+l);
}
}
}
}
}
加减的不同表达方法
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
数组: 数组长度 .length
强类型语言 ,同一种类型的数据存取的集合(在内存中是连续的) 在定义时必须指定长度
弱类型语言: 可以存储任意类型的数据,在内存中不连续【可以随时往里填随时往外移除】
弱类型语言中得集合相当于强类型语言中的 集合
数组的书写格式
1.var str=new array(); 空的数组
数组的添加:
str[0]=r;
str[1]=7;
str[2]=8;
数组提取和添加相同;
2.数组格式2。
var str2=new Array(1,e,3,6);
数组提取
str[1]=e;
数组修改
str[1]=p;
3.数组格式3
var str2=["a","b","c"];
【如果存入内容是字符串 (非数值)必须加双引号;无论强类型还是弱类型字符串和上引号不分开】
4.输出整个数组:遍历集合 或者 循环 js中遍历集合只有for的形式如下
var attr5=[1,2,3,4,5,6];
for(var i=0;i<attr5.length;i++)
{
alert(attr5[i]);
}
jS中得遍历集合 与强类型语言 不同之处1.弱类型语言中用 for 强类型语言中用foreach 2.弱类型输出的a是索引 强类型语言输出的是具体的值
for(var a in attr5)
{
alert(atter5[a]);
}
最新文章
- 3.羽翼sqlmap学习笔记之Cookie注入
- Java技能树
- delphi中VirtualStringTree树使用方法之终结篇!
- android selector(如对TextView点击样式改变)
- CString.Format的详细用法(转)
- DataGridView控件
- “我爱淘”冲刺阶段Scrum站立会议3
- 【转载】Extjs 中id与itemId的区别
- LabVIEW设计模式系列——移位寄存器
- C++ 栈的实现
- 学习web前端技术的笔记,仅供自己查阅备忘,图片上传预览
- Stack编程队列
- mysql_事物
- PAT 乙级 1066. 图像过滤(15)
- hdu4338 Simple Path
- JavaScript 字符串用于存储和处理文本
- Nodejs新手村指引——30分钟上手
- BZOJ.2246.[SDOI2011]迷宫探险(DP 记忆化搜索 概率)
- Integer判断相等,到底该用==还是equals
- Codeforces 559C Gerald and Giant Chess【组合数学】【DP】