亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我無法使用 JAVA 中的 pow 函數將值插入到矩陣字段中

我無法使用 JAVA 中的 pow 函數將值插入到矩陣字段中

鳳凰求蠱 2023-12-10 09:47:27
您好,我使用 pow 函數對矩陣中的輸入值進行賦值,其中行是列的冪。 我們應該通過獲取行號和列的冪來獲取字段的值,例如,如果我們位于第 3 行和第 2 列,我們應該得到值 9所以這是我的代碼,我不明白為什么會出現此錯誤: 錯誤   `public static void main(String args[]) {        int n = (int)(Math.random()*100) % 10;        System.out.println(n);        if(n == 0 || n == 10){            System.out.println("The program needs a number between 1 and 10");            System.exit(0);        }        //int [] myArray = new int[n];        int [][] myMatrix = new int[n][n];        for (int i=1; i<=n; i++){            for(int j=1; j<=n; j++){                int value = (int) Math.pow(i,j);                myMatrix[i][j] = value;                System.out.print(myMatrix[i][j] + "\t");            }            System.out.println();        }        }}
查看完整描述

3 回答

?
蕪湖不蕪

TA貢獻1796條經驗 獲得超7個贊

在你們的幫助下我終于意識到我做錯了什么


for (int i=0; i<n; i++){

            for(int j=0; j<n; j++){

                int value = (int) Math.pow((i+1),(j+1));

                System.out.print(value + "\t");

                myMatrix[i][j] = value;


            }

這是我得到的編輯


向大家致以最誠摯的問候


查看完整回答
反對 回復 2023-12-10
?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

嘗試將 for 循環更改為:


for (int i=0; i<n; i++){

            for(int j=0; j<n; j++){ 

數組中的默認索引從 0 而不是 1 開始,最后一個索引是 length-1。如果您正在訪問大小為 n 的數組,則其可能的索引為 - 0,1,2....n-1。如果您嘗試訪問總行數為 n 的數組/矩陣,則其最后一個索引為 n-1。您的循環讀取索引 n,因此會發生 indexoutofbound 錯誤。


查看完整回答
反對 回復 2023-12-10
?
慕容3067478

TA貢獻1773條經驗 獲得超3個贊

int [][] myMatrix = new int[n+1][n+1];

因為你的循環結束于<=n


查看完整回答
反對 回復 2023-12-10
  • 3 回答
  • 0 關注
  • 191 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號