日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java黑皮书课后题第7章:*7.28(数学:组合)编写一个程序,提示用户输入10个整数,然后显示从这10个数中选出两个数的所有组合

發布時間:2024/7/23 java 30 豆豆

7.28(數學:組合)

  • 題目
    • 題目描述
    • 破題
  • 代碼
    • 運行示例

題目

題目描述

*7.28(數學:組合)編寫一個程序,提示用戶輸入10個整數,然后顯示從這10個數中選出兩個數的所有組合

破題

  • 聲明一個長度為10的int型數組
  • 接收用戶輸入
  • 對數組進行排序
  • 再對數組進行遍歷,計算有多少個元素不相等(使用count計數變量)
  • 聲明一個長度為count的int型數組
  • 對原數組進行遍歷,將元素不重復的賦值給新數組
  • 兩個數的所有組合第一部分即從新數組中選2個的全部結果
  • 再對原數組進行遍歷,如果某個元素出現次數超過1次(即2次及2次以上),則輸出所有組合的第二部分:兩個數都一樣的結果
  • 代碼

    import java.util.Arrays; import java.util.Scanner;public class Test7_28 {public static void main(String[] args) {//1. 聲明一個長度為10的int型數組int length0 = 10;int[] list0 = new int[length0];//2. 接收用戶輸入Scanner input = new Scanner(System.in);System.out.print("請輸入10個整數:");for (int i = 0 ; i < length0 ; i++){list0[i] = input.nextInt();}//3. 對數組進行排序Arrays.sort(list0);//4. 再對數組進行遍歷,計算有多少個元素不相等(使用count計數變量)int count = length0;for (int i = 0 ; i < length0 - 1 ;i++){if (list0[i] == list0[i+1])count--;}//5. 聲明一個長度為count的int型數組int[] list1 = new int[count];//6. 對原數組進行遍歷,元素不重復的賦值給新數組int index_list1 = 0;for (int i = 0 ; i < length0 ; i++){// i=0時將第一個元素賦值給新數組,index_list1++// i≠0且新數組[index_list1]==原數組[i]時則index_list1++// i≠0且新數組[index_list1]!=原數組[i]時則新數組[index_list1++]=原數組[i]if (i == 0){list1[index_list1] = list0[i];}else if(list1[index_list1] != list0[i]){++index_list1;list1[index_list1] = list0[i];}}//7. 兩個數的所有組合第一部分: 從新數組中選2個的全部結果for (int a = 0 ; a <= index_list1 ; a++){for (int b = 0 ; b <= index_list1 ; b++){if (list1[a] != list1[b]){System.out.println("a=" + list1[a] + ", b=" + list1[b]);}}}//8. 再對原數組進行遍歷,如果某個元素出現次數超過1次(即2次及2次以上),則輸出所有組合的第二部分:兩個數都一樣的結果for (int i = 0 ; i < length0 - 1 ;i++){if (list0[i] == list0[i+1])System.out.println("a=" + list0[i] + ", b=" + list0[i]);}} }

    運行示例

    請輸入10個整數:10 9 8 7 6 5 4 3 2 1 a=1, b=2 a=1, b=3 a=1, b=4 a=1, b=5 a=1, b=6 a=1, b=7 a=1, b=8 a=1, b=9 a=1, b=10 a=2, b=1 a=2, b=3 a=2, b=4 a=2, b=5 a=2, b=6 a=2, b=7 a=2, b=8 a=2, b=9 a=2, b=10 a=3, b=1 a=3, b=2 a=3, b=4 a=3, b=5 a=3, b=6 a=3, b=7 a=3, b=8 a=3, b=9 a=3, b=10 a=4, b=1 a=4, b=2 a=4, b=3 a=4, b=5 a=4, b=6 a=4, b=7 a=4, b=8 a=4, b=9 a=4, b=10 a=5, b=1 a=5, b=2 a=5, b=3 a=5, b=4 a=5, b=6 a=5, b=7 a=5, b=8 a=5, b=9 a=5, b=10 a=6, b=1 a=6, b=2 a=6, b=3 a=6, b=4 a=6, b=5 a=6, b=7 a=6, b=8 a=6, b=9 a=6, b=10 a=7, b=1 a=7, b=2 a=7, b=3 a=7, b=4 a=7, b=5 a=7, b=6 a=7, b=8 a=7, b=9 a=7, b=10 a=8, b=1 a=8, b=2 a=8, b=3 a=8, b=4 a=8, b=5 a=8, b=6 a=8, b=7 a=8, b=9 a=8, b=10 a=9, b=1 a=9, b=2 a=9, b=3 a=9, b=4 a=9, b=5 a=9, b=6 a=9, b=7 a=9, b=8 a=9, b=10 a=10, b=1 a=10, b=2 a=10, b=3 a=10, b=4 a=10, b=5 a=10, b=6 a=10, b=7 a=10, b=8 a=10, b=9 請輸入10個整數:9 9 8 7 6 5 4 3 2 1 a=1, b=2 a=1, b=3 a=1, b=4 a=1, b=5 a=1, b=6 a=1, b=7 a=1, b=8 a=1, b=9 a=2, b=1 a=2, b=3 a=2, b=4 a=2, b=5 a=2, b=6 a=2, b=7 a=2, b=8 a=2, b=9 a=3, b=1 a=3, b=2 a=3, b=4 a=3, b=5 a=3, b=6 a=3, b=7 a=3, b=8 a=3, b=9 a=4, b=1 a=4, b=2 a=4, b=3 a=4, b=5 a=4, b=6 a=4, b=7 a=4, b=8 a=4, b=9 a=5, b=1 a=5, b=2 a=5, b=3 a=5, b=4 a=5, b=6 a=5, b=7 a=5, b=8 a=5, b=9 a=6, b=1 a=6, b=2 a=6, b=3 a=6, b=4 a=6, b=5 a=6, b=7 a=6, b=8 a=6, b=9 a=7, b=1 a=7, b=2 a=7, b=3 a=7, b=4 a=7, b=5 a=7, b=6 a=7, b=8 a=7, b=9 a=8, b=1 a=8, b=2 a=8, b=3 a=8, b=4 a=8, b=5 a=8, b=6 a=8, b=7 a=8, b=9 a=9, b=1 a=9, b=2 a=9, b=3 a=9, b=4 a=9, b=5 a=9, b=6 a=9, b=7 a=9, b=8 a=9, b=9

    總結

    以上是生活随笔為你收集整理的Java黑皮书课后题第7章:*7.28(数学:组合)编写一个程序,提示用户输入10个整数,然后显示从这10个数中选出两个数的所有组合的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。