for循环和数组练习
//公鸡2文,母鸡1文,小鸡半文,每种至少一只,100文买100只鸡有多少种可能 var ci =0;
for(var g=1;g<50;g++){
for(var m=1;m<100;m++){
for(var x=1;x<100;x++){
if(g*2+m*1+x*(0.5)==100&&g+m+x==100){
ci+=1;
console.log("买公鸡"+g+"只,母鸡"+m+"只,小鸡"+x+"只"); }
}
}
}
console.log("有"+ci+"种可能");
结果为:

//羽毛球拍15元,球3元,水2元,200元每种至少一个,有多少种可能
js代码为:
var ci=0;
for(var a=1;a<15;a++){
for(var b=1;b<67;b++){
for(var c=1;c<100;c++){
if(a*15+b*3+c*2==100){
ci+=1;
console.log("买羽毛球拍"+a+"副,球"+b+"个,水"+c+"瓶");
}
}
}
}
console.log("有"+ci+"种可能");
结果:

有一张0.0001米的纸,对折多少次可以达到珠穆朗玛峰的高度8848
var gao = 0.0001;
var c = 0;//对折次数
for(var i = 0;i >= 0;i++){
gao = gao*2;//对折后纸张厚度
c++;
console.log(gao);
if(gao >= 8848){
break;
}
}
console.log(c); //对折次数
结果:

例子:一个球从100米的高度自由下落,每次落地后反跳回原高度的一半,再落下,求它在第10次落地时,共经过多少米,第10次反弹多高?
js代码:
//方法一
var h=100;
var s=0;
var s1=0;//上升总路程
var s2=0;//下降总路程
for(var i=1;i<10;++i){ h=h/2;//每次反弹路程
console.log(h);
s1=s1+h;
s2=s2+h;
s=s1+s2+100;//一共经过路程
console.log(s); }
console.log("第十次落地时,共经过"+s+"米");
console.log("第十次反弹时高度为:"+h/2+"米");
结果:

//方法二
var h=100;
var sum=0;
for(var i=1;i<=10;++i){
sum += h;//上来的总高度
h = h/2;//每次反弹多高
// 第十次不需要反弹
if(i!=10){
sum += h;//下来时的高度
}
}
console.log(sum);
console.log(h);//第十次反弹高度
结果:


js代码:
var lirun=prompt("请输入利润(单位万元)");
var jiangjin =0;
if(lirun<=10){
jiangjin=lirun*0.1;
}else if(lirun>10&&lirun<20){
jiangjin=10*0.1+(lirun-10)*0.075;
}else if(lirun>=20&&lirun<40){
jiangjin=10*0.1+10*0.075+(lirun-20)*0.05;
}else if(lirun>=40&&lirun<60){
jiangjin=10*0.1+10*0.075+20*0.05+(lirun-40)*0.03;
}else if(lirun>=60&&lirun<100){
jiangjin=10*0.1+10*0.075+20*0.05+20*0.03+(lirun-60)*0.015;
}else{
jiangjin=10*0.1+10*0.075+20*0.05+20*0.03+40*0.015+(lirun-100)*0.01;
}
console.log("应该发总奖金:"+jiangjin*10000+"元");
结果例:


例子: 九九乘法口诀表
js代码:
var jieguo=0;//积
//九九表的行
for(var i=1;i<=9;i++){ //九九表的列
for(var j=1;j<=i;j++){
jieguo = i*j;//积
document.write("\t"+i+"*"+j+"="+jieguo);//公式 }
document.write("<br>");
}
结果:
例子: 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
js代码:
var str =prompt('输入一串数组');
var arr =str.split(',');
//先把最大与最小值定义为第一个元素
var max =arr[0];
var min =arr[0];
//初始化
var sum =0;
var sum1 =0;
for(var i=0;i<arr.length;++i){
//选出最大的数组元素
if(max <= +arr[i]){
max=arr[i];
sum =i;//找到最大数组元素下标并存储
}
//选出最小的数组元素
if(min >= +arr[i]){
min=arr[i];
sum1 =i;
}
}
arr[sum]=arr[0];//数组第一个元素与最大的元素交换
arr[0]=max;//最大数存储在第一个元素位置
arr[sum1]=arr[arr.length-1];//数组最后一个元素与最小的元素交换
arr[arr.length-1]=min;//最小的数给数组最后一个元素
alert(arr);
结果:

例子:
输入学生个数,每个学生的学号,姓名,三门课成绩,计算出平均成绩
js代码:
var num =prompt("输入学生的数量");
var stu = [];
//记录学生信息
for(var i=0;i<num;i++){
stu[i]=[];
stu[i][0]=prompt( "请输入学生的姓名");
stu[i][1]=prompt( "请输入学生的编号");
stu[i][2]=prompt( "请输入学生的英语成绩");
stu[i][3]=prompt( "请输入学生的数学成绩");
stu[i][4]=prompt( "请输入学生的语文成绩");
}
var avg =0;
for(var i=0;i<num;++i){
//计算成绩的和
var sum=0;
for(var j=2;j<stu[i].length;j++){
sum +=parseInt((stu[i][j]));//总成绩
}
avg=sum/(stu[i].length-2);//求平均成绩
stu[i].push(avg);//存储记录平均成绩
alert(stu[i][0]+"的平均成绩:"+avg);//输出每个人的平均成绩
注意:
1.变量的作用域就是在大括号之内
2.写代码方向,易维护,易扩展,易复用
3.在写每个语句时,多写注释
for循环和数组练习的更多相关文章
- *使用while循环遍历数组创建索引和自增索引值
package com.chongrui.test;/* *使用while循环遍历数组 * * * */public class test { public static void main ...
- 关于for循环删除数组内容出现的问题
昨天用for循环进行数组去重的时候出现的问题, 首先,用双重for循环把前一个和所有后面的元素进行比较,如果相等则删除. 但是,如果数组里面有三个以上连续相等的元素的时候,就会出现问题. var ar ...
- JavaScript 中 for in 循环和数组的问题
本文由 伯乐在线 - ElvisKang 翻译,进林 校稿.未经许可,禁止转载!英文出处:adripofjavascript.com.欢迎加入翻译小组. JavaScript的for…in循环用于迭代 ...
- JavaScript基础精华03(String对象,Array对象,循环遍历数组,JS中的Dictionary,Array的简化声明)
String对象(*) length属性:获取字符串的字符个数.(无论中文字符还是英文字符都算1个字符.) charAt(index)方法:获取指定索引位置的字符.(索引从0开始) indexOf(‘ ...
- swift基本用法-for循环遍历,遍历字典,循环生成数组
// Playground - noun: a place where people can play import UIKit //--------------------------------- ...
- SAS 循环与数组
SAS 循环与数组 SAS提供了循环语句以满足在编程中需要多次执行相同操作的情 况.有时还需要对不同的变量执行相同的操作,此时可定义SAS数组,并通过数组名和下标来引用这些变量. 1 循环 SAS循环 ...
- PHP(方法 函数 循环 和 数组 查找)
循环 和 数组 查找 顺序查找 二分法查找 冒泡排序 方法 函数 定义:一堆代码的集合叫做函数(满足条件下“一堆”) 语法,定义,调用,参数列表(形参,实参),返回值 两种方法: function 方 ...
- js循环遍历数组
一维数组的遍历 <script> //循环遍历数组 var animals = ["cat",'dog','human','whale','seal']; var an ...
- for循环遍历数组(数组1)
package com.mon10.day24; import java.util.Scanner; /** * 类说明 :计算学生的总成绩和平均分 * @author 作者 : chenyanlon ...
- LeetCode 81 Search in Rotated Sorted Array II(循环有序数组中的查找问题)
题目链接:https://leetcode.com/problems/search-in-rotated-sorted-array-ii/#/description 姊妹篇:http://www. ...
随机推荐
- UVA - 12563 Jin Ge Jin Qu hao (01背包)
InputThe first line contains the number of test cases T (T ≤ 100). Each test case begins with two po ...
- docker默认存储空间用完情况下,做迁移数据
由于docker默认存放数据路径为/var/lib/docker,但运行了一段时间后,发现/var/lib/docker下的目录文件过大,导致此分区空间不够用.通过以下方法,解决该问题. 如何避免: ...
- UnityError 切换场景灯光变黑问题解决
编辑器在当前场景时,它的灯光是已经渲染好了,但重新加载的时候灯光没有进行渲染 解决方法如下: Window>>lighting>>Scene面板>>右下角build ...
- 迅雷笔试题 (JAVA多线程)启动三个线程,分别打印A B C,现在写一个程序 循环打印ABCABCABC
题目:http://wenku.baidu.com/view/d66187aad1f34693daef3e8a.html 启动三个线程,分别打印A B C,现在写一个程序 循环打印ABCABCABC. ...
- 偶遇bash 的while read line 的问题
自己开发的过程中,我从数据库里读出来一个值,写入某个临时文件,再让脚本做 cat tmp.log |while read line 的时候 readline每次都是少一行, 最后发现,是换行符的问题 ...
- android 开发-Process and Thread
目录 1 android中进程与线程 - Processes and Threads 1.1 进程 - Processes 1.1.1 进程的生命期 1.2 线程 - Threads 1.2.1 工作 ...
- <Linux系统isosize指令用法>
isosize命令:iso9660文件系统大小显示 isosize命令用于显示iso9660文件系统的大小,还文件可以使普通文件,也可以是块设备,如/dev/sr0或者/dev/sda.如果没有相关选 ...
- Java学习笔记--字符串和文件IO
1.Java中的字符串类和字符的表示 2.区分String,StringBuilder和StringBuffer 3.从命令行中给main方法传递参数 4.文件操作 1 Java中的字符串和字符 1. ...
- python之re模块和正则表达式
今天我们来谈谈python中模块的使用,在探讨模块前先来了解一下正则表达式的具体用法. 1.正则表达式 正则表达式就是匹配 字符串内容的一种规则.谈到正则就和字符串相关了,首先我们要知道什么是字符组. ...
- JDBC连接数据库(Servlet+JSP)
JDBC(Java Database connectivity),是连接数据库的一种方式.后面的框架Mybatis和Hibernate等都封装的是JDBC.在JDBC中常用的API有4个:Driver ...