package Demo36Number_Roll;
import java.util.Arrays;
import java.util.Scanner;
/**
* 有n個(gè)整數(shù),使其前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)變成最前面的m個(gè)數(shù)。
*/
/*
分析:1.這n個(gè)數(shù)是由用戶輸入的,m也是用戶輸入的
2.這n個(gè)數(shù)裝到數(shù)組里面應(yīng)該會(huì)好處理些
3.新建一個(gè)長(zhǎng)度跟原數(shù)組一樣的數(shù)組
4.遍歷兩個(gè)數(shù)組,對(duì)應(yīng)m值進(jìn)行數(shù)據(jù)轉(zhuǎn)移
*/
public class Number_Roll {
public static void main(String[] args) {
System.out.println("輸入n個(gè)整數(shù),再輸入m,使其前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)變成最前面的m個(gè)數(shù)");
//獲取用戶的輸入,并解析為一個(gè)數(shù)組
Scanner sc = new Scanner(System.in);
System.out.println("請(qǐng)直接輸入數(shù)組元素,(以逗號(hào)作為間隔)");
String str = sc.next();
//分割用戶輸入得到一個(gè)字符串?dāng)?shù)組
String[] strs = str.split(",|,");
// 遍歷這個(gè)字符串?dāng)?shù)組,將每個(gè)字符串解析為一個(gè)Integer,并裝到Integer數(shù)組中
int[] nums = new int[strs.length];
int[] exchange = new int[nums.length];
int m =0;
try {
for (int i = 0; i < strs.length; i++) {
nums[i] = Integer.parseInt(strs[i]);
}
//新建一個(gè)長(zhǎng)度一樣的數(shù)組
System.out.println("原數(shù)組:"+ Arrays.toString(nums));
//讓用戶輸入m的值
System.out.println("請(qǐng)輸入向后移動(dòng)的位數(shù)m:");
m = sc.nextInt();
}catch (NumberFormatException e){
System.out.println("你輸入有誤,請(qǐng)輸入數(shù)字,其它字符不支持");
}
// 遍歷兩個(gè)數(shù)組,因?yàn)殚L(zhǎng)度一樣,所以一個(gè)for循環(huán)就足夠
for (int i = 0; i < nums.length; i++) {
// m個(gè)數(shù)前的情況
if(i<nums.length-m){
exchange[i+m]=nums[i];
}else if(i>=nums.length-m){
// 最后的m個(gè)數(shù)放到新數(shù)組的最前面
for (int j = 0; j < m; j++) {
exchange[j]=nums[nums.length-m+j];
}
// 轉(zhuǎn)換完成,退出循環(huán)
break;
}
}
// 輸出轉(zhuǎn)換后的結(jié)果
System.out.println("轉(zhuǎn)換后:"+Arrays.toString(exchange));
}
}
有n個(gè)整數(shù),使其前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)變成最前面的m個(gè)數(shù)。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請(qǐng)通過簡(jiǎn)信或評(píng)論聯(lián)系作者。
相關(guān)閱讀更多精彩內(nèi)容
- 【程序36】題目:有n個(gè)整數(shù),使其前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)變成最前面的m個(gè)數(shù) 【程序37】題目:有n...
- 輸入一個(gè)正整數(shù)和n個(gè)有序整數(shù)(從小到大),輸入一個(gè)數(shù)試要求按照原來的順序插入,如果本就存在則刪除改數(shù)字
- 1二進(jìn)制中1的個(gè)數(shù) 【題目】輸入一個(gè)整數(shù),輸出該數(shù)二進(jìn)制表示中1的個(gè)數(shù)。其中負(fù)數(shù)用補(bǔ)碼表示。 【考察點(diǎn)】位運(yùn)算 【...