day04作业:
第一题:
分析以下需求,并用代码实现(每个小需求都需要封装成方法)
1.求两个数据之和(整数 小数),在main方法中打印出来
2.判断两个数据是否相等(整数 小数),在控制台上打印出来
3.获取两个数中较大的值(整数 小数),在控制台上打印出来
4.获取两个数中较小的值(整数 整数),在main方法中打印出来
public class Tes01 { public static Double sum(int num1,Double num2){ Double sum=num1+num2; return sum; } public static String sum1(int num1,Double num2){ if (num1 == num2) { return "相等"; }else { return "不相等"; } } public static Double sum2(int num1,Double num2){ if (num1>num2){ return (double)num1; }else if (num1<num2){ return (double)num2; }else { return null; } } public static Object sm3(int num1,int nm3){ if (num1>nm3) { return nm3; }else if (num1<nm3){ return num1; }else { return null; } } public static void main(String[] args) { int num1=2; Double num2=12.0; int nm3=1; System.out.println("和是:"+sum(num1,num2)); System.out.println("两个数:"+sum1(num1,num2)); System.out.println("较大的值:"+sum2(num1,num2)); System.out.println("较小的值:"+sm3(num1,nm3)); } }
第二题:
1.定义两个变量代表长方形的长和宽
定义方法计算该长方形的周长,并在main方法中打印周长
2.定义两个变量代表长方形的长和宽
定义方法计算该长方形的面积,并在main方法中打印面积
3.定义一个变量代表圆的半径(π取3.14)
定义方法计算该圆的周长,并在main方法中打印周长
4.定义一个变量代表圆的半径(π取3.14)
定义方法计算该圆的面积,并在main方法中打印面积
public class Tes02 { static int girth(int chang,int wide){ return (chang+wide)*2; } static int area(int chang,int wide){ return chang*wide; } static Double girth1(Double radius){ Double ret=radius*2*3.14; return ret; } static Double area1(Double radius){ Double ret=radius*radius*3.14; return ret; } public static void main(String[] args) { int chang=6; int wide=4; Double radius=1.5; System.out.println("长方形的周长是:"+girth(chang,wide)); System.out.println("长方形的面积是:"+area(chang,wide)); System.out.println("圆的周长是:"+girth1(radius)); System.out.println("圆的面积是:"+area1(radius)); } }
第三题:
分析以下需求,并用代码实现:
什么是水仙花数呢?
所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
举例:153就是一个水仙花数。
153 = 1*1*1 + 5*5*5 + 3*3*3
要求:
1.定义方法 isSXH(int num)
功能:判断数字num是否是水仙花数,如果是返回true,如果不是返回false
2.在主方法中借助1中定义的方法,2个一行,打印所有的水仙花数及水仙花数的总个数
import java.util.Arrays; public class Tes03 { public static void main(String[] args) { int[] sumNum={}; for (int i=100;i<1000;i++) { if (isSXH(i)==0){ continue; } sumNum= Arrays.copyOf(sumNum,sumNum.length+1); sumNum[sumNum.length-1]=isSXH(i); } System.out.println(Arrays.toString(sumNum)); System.out.println(sumNum.length); } public static int isSXH(int num){ int hundred=num/100%10; int ten=num/10%10; int a=num%10; if (hundred*hundred*hundred+ten*ten*ten+a*a*a==num){ return num; } return 0; } }
第四题:
定义一个方法,该方法能多次打印HelloWorld,要求调用该方法,传入一个int类型的参数n,要求调用该方法,能通过参数n控制打印HelloWorld的次数.
当传入0时,HelloWorld不打印
当传入1时,HelloWorld打印1次
当传入2时,HelloWorld打印2次
当传入3时,HelloWorld打印3次
.
.
.
当传入100时,HelloWorld打印100次
以此类推
public class Tes04 { public static void main(String[] args) { put(0); } public static void put(int a){ for (int i = 0; i <=a; i++) { if (a == 0) { continue; } System.out.println("HelloWorld 打印第"+i+"次"); } } }
第五题:
1.定义一个方法,能够判断传入的int类型数据是不是偶数,返回true或false
2.借用1中定义的方法,判断1-100中那些数字是偶数,并打印出来,求和.
import java.util.Arrays; public class Tes05 { public static void main(String[] args) { int sm=0; int [] nm={}; for (int i = 0; i <=100; i++) { if (doubleNum(i)){ nm= Arrays.copyOf(nm,nm.length+1); nm[nm.length-1]=i; } } System.out.println(Arrays.toString(nm)); for (int i = 0; i < nm.length; i++) { sm+=nm[i]; } System.out.println("1-100的所以偶数和为:"+sm); } public static boolean doubleNum(int a) { if (a%2==0){ return true; } return false; } }