Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 24.12.2015, 14:36   #11 (permalink)
blazelott
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)
Вот это 210 строка
Код:
vector[i][j] = Rand.nextInt(vector_max - vector_min + 1) + vector_min;
blazelott вне форума   Ответить с цитированием

Старый 24.12.2015, 14:36
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

По содержанию ваша тема имеет сходства с данными обсуждениями

Какие языки были до Java? Точнее был же java или в точности java-подобный язык?
Массив. Pascal или Java
Дан одномерный целочисленный массив из N элементов
Дан массив A(n,m). Найти количество элементов в каждой строке, меньшего диагонального

Старый 24.12.2015, 15:40   #12 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от blazelott Посмотреть сообщение
Исправил:
Но появился новый набор ошибок.
Вывод Массив: 92 19 79 33 И сразу ошибки:
К сожалению, тут я вряд ли смогу Вам помочь: я пишу только на Паскале, а на СИ да Яве могу только читать, и тонкостей этих языков и трансляторов не знаю. Единственное, что могу посоветовать - попробуйте нумерацию не с 1 по n, а с 0 по n-1. Только всюду исправьте. Помнится, в СИ положено с нуля нумеровать, может быть и в Яве также?
Vladimir_S вне форума   Ответить с цитированием
Старый 24.12.2015, 16:13   #13 (permalink)
blazelott
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];
                }
                    
                }
blazelott вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 09:12.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.