|
|
Опции темы | Опции просмотра |
24.12.2015, 14:36 | #11 (permalink) |
Member
Регистрация: 03.02.2013
Сообщений: 18
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Код:
for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { vector[i][j] = Rand.nextInt(vector_max - vector_min + 1) + vector_min; jTextArea1.append(Integer.toString(vector[i][j]) + " "); } jTextArea1.append("\n"); } int jmax = 0,imax = 0,i,j; max = vector_min; for (i = 1; i <= n; i++) { for (j = 1; j <= m; j++) { if (max < vector[i][j]) { max = vector[i][j]; imax = i; jmax = j; } } } s = 0; //int imax, jmax; for (i = imax - 1; i <= imax + 1; i++){ for (j = jmax - 1; j <= jmax + 1; j++){ if ((i > 0) && (i <= n) && (j > 0) && (j <= m) && !((i == imax) && (j == jmax))){ s = s + vector[i][j]; } } Вывод Массив: 92 19 79 33 И сразу ошибки: Код:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 5 at luch71.Luch71.jButton1ActionPerformed(Luch71.java:210) at luch71.Luch71.access$400(Luch71.java:16) at luch71.Luch71$5.actionPerformed(Luch71.java:84) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6525) at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) at java.awt.Component.processEvent(Component.java:6290) at java.awt.Container.processEvent(Container.java:2234) at java.awt.Component.dispatchEventImpl(Component.java:4881) at java.awt.Container.dispatchEventImpl(Container.java:2292) at java.awt.Component.dispatchEvent(Component.java:4703) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462) at java.awt.Container.dispatchEventImpl(Container.java:2278) at java.awt.Window.dispatchEventImpl(Window.java:2739) at java.awt.Component.dispatchEvent(Component.java:4703) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:746) at java.awt.EventQueue.access$400(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:697) at java.awt.EventQueue$3.run(EventQueue.java:691) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:719) at java.awt.EventQueue$4.run(EventQueue.java:717) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) at java.awt.EventQueue.dispatchEvent(EventQueue.java:716) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Код:
vector[i][j] = Rand.nextInt(vector_max - vector_min + 1) + vector_min; |
24.12.2015, 14:36 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
По содержанию ваша тема имеет сходства с данными обсуждениями Какие языки были до Java? Точнее был же java или в точности java-подобный язык? Массив. Pascal или Java Дан одномерный целочисленный массив из N элементов Дан массив A(n,m). Найти количество элементов в каждой строке, меньшего диагонального |
24.12.2015, 15:40 | #12 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
К сожалению, тут я вряд ли смогу Вам помочь: я пишу только на Паскале, а на СИ да Яве могу только читать, и тонкостей этих языков и трансляторов не знаю. Единственное, что могу посоветовать - попробуйте нумерацию не с 1 по n, а с 0 по n-1. Только всюду исправьте. Помнится, в СИ положено с нуля нумеровать, может быть и в Яве также?
|
24.12.2015, 16:13 | #13 (permalink) |
Member
Регистрация: 03.02.2013
Сообщений: 18
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Благодарю за помощь. Все исправил, теперь работает.
Код:
int vector[][] = new int[n][m]; Random Rand = new Random(); jTextArea1.append("Массив:" + "\n"); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { vector[i][j] = Rand.nextInt(vector_max - vector_min + 1) + vector_min; jTextArea1.append(Integer.toString(vector[i][j]) + " "); } jTextArea1.append("\n"); } int jmax = 0,imax = 0,i,j; max = vector_min; for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { if (max < vector[i][j]) { max = vector[i][j]; imax = i; jmax = j; } } } s = 0; //int imax, jmax; for (i = imax - 1; i <= imax + 1; i++){ for (j = jmax - 1; j <= jmax + 1; j++){ if ((i >= 0) && (i < n) && (j >= 0) && (j < m) && !((i == imax) && (j == jmax))){ s = s + vector[i][j]; } } |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|