写一个方法,判断一个数(int类型)是否是素数
代码package day03; import java.util.Scanner; public class Task01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int a=scanner.nextInt(); if(judge(a)){ System.out.println("是一个素数"); }else{ System.out.println("不是素数"); } } public static boolean judge (int a){ for(int i=2;i<=a-1;i++){ if(a%i==0) return false; } return true; } }结果 Task02 题目
正整数n若是它平方数的尾部,则称n为同构数,比如5是55=25右边的数,25是2525=625右边的数
求1-99范围内的所有同构数
package day03; public class Task02 { public static void main(String[] args) { for (int i = 1; i <= 99; i++) { if (judge(i)) { System.out.println("这是一个同构数" + i); } } } public static boolean judge(int a){ int aa=a * a; while(a > 0&&aa > 0){ if(a%10 == aa%10){ a = a/10; aa = aa/10; continue; }else{ return false; } } return true; } }结果 Task03 题目
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,
并返回他们的数组下标,假设每种输入只会对应一个答案
(因为是两个数,所以下标值,有两个,所以该方法返回一个int[],里面包含两个整数对应的数组下标)
代码package day03; public class Task03 { public static void main(String[] args) { int [] nums = {1,3,6,9,11}; int target=10; int [] a = ar(target,nums); System.out.println("数组的下标分别为:"+a[0]+" "+a[1]); } public static int[] ar(int a,int arry[]){ int [] arry2 = new int[2]; for (int i = 0; i < arry.length; i++) { for (int j = 0; j < arry.length ; j++) { if(i == j) continue; if(arry[i] + arry[j] == a){ arry2[0] = i; arry2[1] = j; return arry2; } } } return arry2; } }结果 Task04 题目
给定一个排序(有序)数组,返回移除相同元素后数组的新长度。
代码package day03; public class Task04 { public static void main(String[] args) { int num[] = {1,2,2,3,3,3,4,5,6,6,7,8,8,9}; System.out.println("移除相同元素后数组的新长度为:" + number(num)); } public static int number(int num[]){ int a=1; for (int i = 1; i < num.length; i++) { if(num[i] != num[i-1]){ a++; } } return a; } }结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)