java语言程序程序设计 第十一章 (11.11、11.12、11.13、11.14、11.15、11.16、11.17)
来源:互联网 发布:吉林美术生分数算法 编辑:程序博客网 时间:2024/05/22 12:42
程序小白,希望和大家多交流,共同学习
import java.util.ArrayList;import java.util.Scanner;public class SortArrayList{ public static void main(String [] args) { ArrayList<Integer> list = creatList(); sortList(list); System.out.println(list); } public static ArrayList<Integer> creatList() { Scanner input = new Scanner(System.in); int count = 0; System.out.print("Enter five integer: "); ArrayList<Integer> list = new ArrayList<>(); while (count < 5) { list.add(new Integer(input.nextInt())); count++; } return list; } public static void sortList(ArrayList<Integer> list) { //java.util.Collections.sort(list); for (int i = 0; i < list.size() - 1; i++) { Integer min = list.get(i); int minIndex = i; for (int j = i + 1; j < list.size(); j++) { if (list.get(j) < min) { min = list.get(j); minIndex = j; } } if (minIndex != i) { //使用get()只是返回,相当于使用下标索引 //使用set(index: int, O: E)使用 E 替换掉列表 index 位置原有的对象 list.set(minIndex, list.get(i)); list.set(i, min); } } }}
import java.util.Scanner;import java.util.ArrayList;public class SumArrayList{ public static void main(String [] args) { ArrayList<Double> list = creatList(); double sum = sum(list); System.out.println("Sum = " + sum); } public static ArrayList<Double> creatList() { Scanner input = new Scanner(System.in); ArrayList<Double> list = new ArrayList<>(); int count = 0; System.out.print("Enter five double number: "); while (count < 5) { list.add(input.nextDouble()); count++; } return list; } public static double sum(ArrayList<Double> list) { double sum = 0.0; for (int i = 0; i < list.size(); i++) { sum += list.get(i); } return sum; }}
import java.util.ArrayList;import java.util.Scanner;public class NoImpurity{ public static void main(String [] args) { ArrayList<Integer> list = creatList(); removeDuplicate(list); //System.out.println(list.size()); System.out.print("The distinct integers are "); for (int num : list ) { System.out.print(num + " "); } System.out.println(); } public static ArrayList<Integer> creatList() { Scanner input = new Scanner(System.in); System.out.print("Enter ten integers: "); ArrayList<Integer> list = new ArrayList<>(); int count = 0; while (count < 10) { list.add(new Integer(input.nextInt())); count++; } return list; } //先在 list 中找到去重后的所有元素,按照每种元素出现的先后顺序排列在新的列表中 //然后利用数组标记所有重复元素的位置 //最后在list中删除这些位置上的元素 public static void removeDuplicate(ArrayList<Integer> list) { ArrayList<Integer> temp = new ArrayList<>(); for (Integer element : list) { if (!temp.contains(element)) { temp.add(element); } } int[] index = new int[list.size()]; java.util.Arrays.fill(index, 0); for (int i = 0; i < temp.size(); i++) { index[list.indexOf(temp.get(i))] = 1; } // ArrayList()中的remove()会删除原来的位置,所以只能从后向前逐个删除 //重复的元素,否则下标不匹配。 for (int i = index.length - 1; i >= 0; i--) { if (index[i] == 0) { list.remove(i); } } }}
import java.util.Scanner;import java.util.ArrayList;public class CombiningTwoLists{ public static void main(String [] args) { System.out.print("Enter five integers for list1: "); ArrayList<Integer> list1 = creatList(); System.out.print("Enter five inntegers for list2: "); ArrayList<Integer> list2 = creatList(); ArrayList<Integer> unionList = union(list1, list2); System.out.print("The combined list is: "); for (int num : unionList) { System.out.print(num + " "); } System.out.println(); } public static ArrayList<Integer> creatList() { Scanner input = new Scanner(System.in); ArrayList<Integer> list = new ArrayList<>(); int count = 0; while (count < 5) { list.add(input.nextInt()); count++; } return list; } public static ArrayList<Integer> union( ArrayList<Integer> list1, ArrayList<Integer> list2) { ArrayList<Integer> result = new ArrayList<>(); for (int i = 0; i < list1.size(); i++) { result.add(list1.get(i)); } for (int i = 0; i < list2.size(); i++) { //求并集要去重 if (!list2.contains(list2.get(i))) { result.add(list2.get(i)); } } return result; }}
import java.util.Scanner;import java.util.ArrayList;import javafx.geometry.Point2D;public class ConvexPolygonArea{ public static void main(String [] args) { Scanner input = new Scanner(System.in); System.out.print("Enter the number of the points: "); int number = input.nextInt(); ArrayList<Point2D> points = enterPoints(number); double area = getArea(points); System.out.println(area); } public static ArrayList<Point2D> enterPoints(int number) { Scanner input = new Scanner(System.in); ArrayList<Point2D> points = new ArrayList<>(); System.out.print("Enter the coordinates of points: "); for (int i = 0; i < number; i++) { points.add(new Point2D((input.nextDouble()), (input.nextDouble()))); } return points; } public static double getArea(ArrayList<Point2D> points) { double area = 0.0; for (int i = 1; i < points.size() - 1; i++) { area += everyTriangle(points.get(0), points.get(i), points.get(i + 1)); } return area; } public static double everyTriangle(Point2D p1, Point2D p2, Point2D p3) { double s1 = p1.distance(p2); double s2 = p2.distance(p3); double s3 = p3.distance(p1); double s = (s1 + s2 + s3) / 2; //System.out.println(s1 + " " + s2 + " " + s3 + " " + s); double triangleArea = Math.sqrt(s * (s - s1) * (s - s2) * (s - s3)); //System.out.println(triangleArea); return triangleArea; }}
import java.util.ArrayList;import java.util.Scanner;public class Addition{ public static void main(String [] args) { Scanner input = new Scanner(System.in); int number1 = (int)(Math.random() * 9 + 1); int number2 = (int)(Math.random() * 9 + 1); System.out.print("What is " + number1 + " + " + number2 + "? "); int answer = input.nextInt(); ArrayList<Integer> answerList = new ArrayList<>(); while (answer != (number1 + number2)) { if (answerList.contains(answer)) { System.out.println("You already enter " + answer); } else answerList.add(answer); System.out.print("Wrong answer. Try again. What is " + number1 + " + " + number2 + "? "); answer = input.nextInt(); } System.out.println("You got it."); }}
import java.util.Scanner;import java.util.Arrays;import java.util.ArrayList;import java.util.Collections;public class CompleteSquare{ public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter an integer m: "); int m = input.nextInt(); int n = findN(m); System.out.println("The smallest number n for m * n to be a perfect sqare is " + n); System.out.println("m * n is " + (m * n)); } public static int findN(int m) { ArrayList<Integer> list = new ArrayList<>(); int temp = m; while (temp != 1) { for (int i = 2; i <= temp; i++) { if (temp % i == 0)//找到所有的因子 { temp /= i; list.add(i); break; } } } //找到最大值创建数组,统计因子出现次数 int max = Collections.max(list); int[] count = new int[max + 1]; for (int number : list) { count[number]++; } //System.out.println(Arrays.toString(count)); int n = 1; for (int i = 0; i < max + 1; i++) { if (count[i] % 2 == 1) { n *= i; //System.out.println(i); } } //System.out.println(n); return n; }}
阅读全文
0 0
- java语言程序程序设计 第十一章 (11.11、11.12、11.13、11.14、11.15、11.16、11.17)
- Linux程序设计第十一章
- 使用java理解程序,第十一章总结。
- Objective-C 程序设计 第十一章
- linux程序设计——进程和信号(第十一章)
- linux程序设计——进程和信号(第十一章)
- linux程序设计——进程和信号(第十一章)
- linux程序设计——进程和信号(第十一章)
- 程序设计与C语言学习笔记_第十一章补充内容
- Java语言规范第十一/十二章-异常/执行
- [《.net框架程序设计》]第十一章 事件
- 《.NET框架程序设计》第十一章 事件
- 《.NET框架程序设计》第十一章 事件
- Windows程序设计 第十一章 模态对话框
- 《Linux程序设计》读书笔记------第十一章 进程
- 《Kotlin 程序设计》第十一章 Kotlin实现DSL
- C语言及程序设计.第十一课.项目4.玩数字
- C语言及程序设计.第十一课.项目5.坐标转换
- C++常用库函数
- MYSQL密码忘记了怎么办?MYSQL5.7重置root密码
- 图像特效之碎片化
- 使用amazeui.min.js时要注意的地方
- 邮箱基础查询系统原型
- java语言程序程序设计 第十一章 (11.11、11.12、11.13、11.14、11.15、11.16、11.17)
- 2.磁盘挂载命令(mount)
- 只要程序员!杭州大妈冲进云栖大会为女儿征婚
- 还没对象吗?要不要给你介绍
- HDU
- 测试小故事43:视角
- Kotlin 将超越 Java 成为 Android 开发的第一语言?
- Java Development Kit 1.8下载
- 3.创建目录(mkdir)