前言:
如今我们对“java买百鸡”大致比较看重,各位老铁们都需要知道一些“java买百鸡”的相关知识。那么小编也在网摘上汇集了一些有关“java买百鸡””的相关知识,希望朋友们能喜欢,朋友们一起来了解一下吧!案例一:描述:
从键盘上输入一个整数,判断该数是否是素数。(1不是素数,素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数)思路:
定义一个for循环和辅助变量i,并给i赋初始值2,i的边界<=z,并且增量为1。第一步先在for循环中判断输入的整数z对i取余数,如果余数为0,则跳出循环。第二步判断循环结束时i与z的值是否相等,如果相等,则该数是素数,否则不是素数。代码:
import java.util.Scanner;public class Wd { public static void main(String[] args){ Scanner sc=new Scanner("System.in"); System.out.println("请输入整数z:"); int z=sc.nextInt(); for(i=2;i<=z;i++) { if(z%i==0) break;//遇到整除就跳出循环 } if(i==z)//判断跳出循环时候i的值时候和z相等, //相等说明不能被其他数整除,不相等说明在循环 //过程中可以被除本身外的数整除 {System.out.println(z+"是素数");} else{System.out.println(z+"不是素数");} }}
运行结果:
案例二:描述:
我国古代数学家张丘建在《算经》中出了一道题“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?”(假定每种鸡都必须至少有一只)思路:
设鸡翁、鸡母、鸡雏分别为x,y,z只,分析题目可以知道(1)5x+3y+1/3z=100;(2)x<20,y<33(3)z=100-x-y;因此通过设置两个for循环实现,当满足条件5x+3*y+z/3==100时,输出可能的结果。
代码:
import java.util.Scanner;public class Wd { public static void main(String[] args){ int x,y,z; for(x=0;x<20;x++) { for(y==0;y<33;y++) { z=100-x-y; if(5*x+3*y+z/3.0==100) System.out.println("鸡翁有"+x+"只鸡母有"+y+"只鸡雏有"+z+"只"); } } }}
运行结果:
案例3:描述
编写程序实现系统产生0-50之间的随机数,用户通过键盘输入猜测随机数,并在每次输入后提示用户是否猜对,如果猜大了,会提示“抱歉!猜大了,请继续猜”,否则会提示“抱歉!猜小了,请继续猜,可以大一点哦”,直到完全猜对,会提示“你真厉害,猜对了,游戏结束”。提示:
产生随机数需要导入:import java.util.Random;
使用:Random rd = new Random();int i = rd.nextInt(50);思路
设置两个变量i,j分别表示随机数和玩家输入的数。然后通过while循环中嵌套三个if-else语句实现对两个变量大小的比较。猜对后给a赋值1退出循环。
代码
import java.util.Scanner;import java.util.Random;public class Wd { public static void main(String[] args){ Scanner sc=new Scanner(System.in); Random rd = new Random(); int i = rd.nextInt(50); int j; int a=0; while(a=0) { System.out.println("请输入猜测数:"); j=sc.nextInt(); if(i>j){ System.out.println("抱歉!猜小了,请继续猜,可以大一点哦"); } else if(i<j){ System.out.println("抱歉!猜大了,请继续猜"); } else if(i==j){ System.out.println("你真厉害,猜对了,游戏结束"); a=1; } } }}
运行结果
案例4:描述
打印金字塔(金字塔层数由键盘得到)思路
设置一个外层循环和两个内层循环,内层循环中第一个for用来输出每一行前的空格,第i行有a-i个空格;第二个for用来输入,第i行有2i-1个。
代码
import java.util.Scanner;public class Wd { public static void main(String[] args){ Scanner sc=new Scanner(System.in); System.out.println("请输入金字塔层数:"); int n=sc.nextInt(); for(int i=0;i<n;i++) { for(int j=0;j<n-i;j++) {System.out.print(" ");}//输出n-i个空格 for(int k=0;k<2*i-1;k++) {System.out.print("*");}//输出2i-1个*号 System.out.println("\n"); } }}
运行结果
————————————————
原文链接:
标签: #java买百鸡