12.1循环的例子
package circular;
import java.util.Scanner;
public class circular {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in =new Scanner(System.in);
int count=100;
while (count>0) {
System.out.println(count);
count=count-1;
}
System.out.println(count);
System.out.println("发射");
通过循环来计数,可以先用一个小一点的数字,算出有多少次,然后类比推理。
12.2算平均数
思考:做一个程序先思考有哪些变量,要用哪些算法,流程图是什么。
下面是计算平均数的例子
用do while
Scanner in=new Scanner(System.in);
int count=0;
int sum=0;
int number;
number=in.nextInt();
do{
if(number!=-1) {
sum=number+sum;
count=count+1;
number = in.nextInt();
}
}
while(number!=-1);
if(count>0) {
System.out.println("平均数:"+(double)sum/count);
}
用while
Scanner in=new Scanner(System.in);
int count=0;
int sum=0;
int number;
number=in.nextInt();
while (number!=-1) {
sum=number+sum;
count=count+1;
number = in.nextInt();
}
if(count>0) {
System.out.println("平均数:"+(double)sum/count);
}
总结:这么算感觉有点麻烦,无论你输入多少个数字,最后还是要输入-1才能计算出结果。
12.3猜数游戏
让计算机在一定范围内给出一个数字,你去猜,看你猜中需要几次
Scanner in=new Scanner(System.in);
int number = (int)(Math.random()*100+1); //计算机随机给的一个数
int balance=in.nextInt(); //我们要输入的数字
int count=0; //赢得次数
do {
if(balance>number) {
System.out.println("偏大");
count=count+1;
}
else if (balance<number) {
System.out.println("偏小");
count=count+1;
}
balance=in.nextInt();
}while(balance!= number);
System.out.println("恭喜你,你猜对了."+"总共猜了:"+count+"次");
总结:在只有两种情况的时候,用if else。在有多种情况出现的时候,如果用if else if else if。
(Math.random()*10+1)可以让计算机随机给出(1,10]之内的随机数(具体要看你定义的是int还是double)。
12.4、将整数的每一位数字输出,并将其逆序
Scanner in=new Scanner(System.in);
int number=in.nextInt();
int result=0;
do {
int digit=number % 10;
result=result*10+digit;
System.out.println(digit);
number=number/10;
}while(number>0);
System.out.println(result);
总结:先定义三个变量,number为输入的数字,digit为个位,十位等等的数字,result为逆序算法的一个量。(可以说是一个% / % / 一个不断循环的过程。)