十月十六日作业

第七题:
 1.定义方法 isSXH(int num)
  功能:判断数字num是否是水仙花数,如果是返回true,如果不是返回false
 2.在主方法中,键盘录入数据,调用isSXH方法,判断传入的数据是否为水仙花数,
如果是就输出"xxx为水仙花数",否则就输出"xxx不是水仙花数"
  演示:
     请输入一个三位整数:
     100
     100不是水仙花数
package sq;

import java.util.Scanner;

public class Text1 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入一个三位数");
        int i=scanner.nextInt();
        isSXH(i);
    }
    public static void isSXH(int num){
        int a=num%10,b=num/10%10,c=num/100;
        if ((a*a*a)+(b*b*b)+(c*c*c)==num) {
            System.out.println(num+"为水仙花数");
        }else {
            System.out.println(num+"不是水仙花数");
        }
    }
}

第八题:
 1.模拟计算器功能,对键盘录入的两个int类型的数据进行加、减、乘、除的运算,并打印运算结果
  要求:
  (1)键盘录入三个整数,其中前两个整数代表参加运算的数据,
   第三个整数为要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)
  (2)演示格式如下:
   请输入第一个整数:30
   请输入第二个整数:40
   请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):0
   控制台输出:30+40=70

package sq;

import java.util.Scanner;

public class Text2 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入第一个整数");
        int a =scanner.nextInt();
        System.out.println("请输入第二个整数");
        int b =scanner.nextInt();
        System.out.println("请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)");
        int c =scanner.nextInt();
        switch (c){
            case 0:
                System.out.println(a+"+"+b+"="+(a+b));
                break;
            case 1:
                System.out.println(a+"-"+b+"="+(a-b));
                break;
            case 2:
                System.out.println(a+"*"+b+"="+(a*b));
                break;
            case 3:
                System.out.println(a+"/"+b+"="+(a/b));
                break;
        }
    }
}
第九题:
 分析以下需求,并用代码实现
  1.创建两个长度为5的数组,数组内元素为随机生成的 1-100之间的偶数。(r.nextInt(50)+1)*2
  2.定义一个方法hebin(描述如下),传入两个数组,方法中将两个数组元素合并到一个新数组中
,并且将新数组的内容打印到控制台上
package sq;

import java.util.Random;

public class Text3 {
    public static void main(String[] args) {
        int arr[]=new int[5];
        int arr1[]=new int[5];
        Random random=new Random();
        for (int i = 0; i <arr.length ; i++) {
            arr[i]=random.nextInt((50)+1)*2;
            arr1[i]=random.nextInt((50)+1)*2;

        }
        hebin(arr,arr1);
    }
    public static  void hebin(int[]arr,int []arr1){
        int a[]=new int[arr.length+arr1.length];
        for (int i = 0; i <arr.length ; i++) {
            a[i]=arr[i];
        }
        for (int i = 0; i <arr1.length ; i++) {
            a[arr.length+i]=arr[i];
        }
        for(int i:a
        ){
            System.out.print(i+",");
        }
    }
}

第十题:
 分析以下需求,并用代码实现
  1.创建一个储存整数的集合,键盘录入5个数据存入集合
  2.遍历集合,将集合中大于10的元素打印到控制台上,并求和.

package sq;

import java.util.ArrayList;
import java.util.Scanner;

public class Text4 {
    public static void main(String[] args) {
        ArrayList<Integer>list=new ArrayList<>();
        Scanner scanner=new Scanner(System.in);
        for (int i = 0; i <5 ; i++) {
            int s =scanner.nextInt();
            list.add(s);
        }
        int sum=0;
        for(int i:list
        ){
            if(i>10){
                System.out.print("大于10"+i);
                sum+=i;
            }
        }
        System.out.println("总和"+sum);
    }


}

第十一题:
 分析一下需求,并用代码实现
  1.创建一个储存整数的集合,随机产生10个两位数存入集合
  2.定义一个方法,将集合传入,筛选出其中所有小于50的元素,存入新的集合中,将新集合返回
  3.在主方法中,调用2中的方法,将1中的集合传入,得到返回的集合,将返回的集合遍历打印.

package sq;

import java.util.ArrayList;
import java.util.Random;

public class Text5 {
    public static void main(String[] args) {
        Random random=new Random();
        ArrayList<Integer>list=new ArrayList<>();
        for (int i = 0; i <10 ; i++) {
            list.add(random.nextInt(100));

        }
        ArrayList<Integer>list1 =list(list);
        for (int i:list1
        ){
            System.out.print(i+",");
        }
    }
    public static  ArrayList<Integer>list(ArrayList<Integer>list){
        ArrayList<Integer>list1=new ArrayList<>();
        for (int i:list
        ){
            if (i<50){
                list1.add(i);
            }
        }
        return list1;
    }
}

第十二题:
 根据要求完成以下功能:
  a.定义ArrayList集合,存入如下整数:
   11,22, 55,66, 77 , 88
  b.遍历集合,删除大于60的元素,在控制台打印输出删除后的集合中所有元素

package sq;

import java.util.ArrayList;

public class Text6 {
    public static void main(String[] args) {
        ArrayList<Integer> list=new ArrayList<Integer>();
        list.add(11);
        list.add(22);
        list.add(55);
        list.add(66);
        list.add(77);
        list.add(88);
        for (int i = 0; i <list.size() ; i++) {
            if (list.get(i)>60){
                list.remove(list.get(i));
                i--;
            }
        }
        System.out.println(list);
    }
}
第十三题:
 按要求在main方法中完成以下功能:
  a.定义一个长度为5的int型数组arr,数组元素为1-99(范围包含1和99)之间的随机数
  b.提示用户输入2-5之间的一个数字num(num范围包括2和5,不需要代码判断)
  c.遍历数组arr,筛选出数组中元素是num倍数的数组元素并输出
 示例如下:
  随机生成的数组元素为:
  52 20 58 9 10
  请输入2-5之间的一个数字:
  5
  符合条件的元素为:
  20 10   

 

package sq;

import java.util.Random;
import java.util.Scanner;

public class Text7 {
    public static void main(String[] args) {
        int arr[]=new int[5];
        Random random=new Random();
        for (int i = 0; i <arr.length ; i++) {
            arr[i]=random.nextInt(100)+1;
        }
        System.out.print("随机生成的数组元素为:");
        for(int i:arr
        ){
            System.out.print(i+"");
        }
        System.out.print("请输入2-5之间的一个数字");
        Scanner scanner=new Scanner(System.in);
        int num= scanner.nextInt();
        System.out.print("符合条件的元素为:");
        for(int i:arr
        ){
            if (i%num == 0) {
                System.out.print(i+"");
            }
        }
    }
}

 

posted on 2020-10-18 23:26  Cxgg0  阅读(115)  评论(0编辑  收藏  举报