Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188

Метод в массиве

21.11.2016, 18:55. Показов 1123. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
даны методы int sum(int[][] feld) которые должны вычислить сумму всех чисел в массиве. Объясните, почему нижестоящие вызовы метода могут выдавать неправильные данные и создайте корректную версию метода.
так же надо написать построчно, что делает программа

Java
1
2
3
4
5
6
7
8
9
static int sum(int[][] feld) { 
int sum = 0; 
int laenge = feld.length;
 for(int i = 0; i < laenge; i++) {
 for(int j = 0; j < laenge; j++) { 
sum += feld[i][j]; 
} 
}
 return sum; }

следующий вызов идет криво

Java
1
2
3
4
5
6
7
8
int[][] feld = new int[1][];
 feld[0] = new int[] { 1, 1 }; 
sum(feld); // выдает 1 вместо 2
int[][] feld = new int[3][];
 feld[0] = new int[] { 1, 1 }; 
feld[1] = new int[] { 1 };
 feld[2] = new int[] { 1, 1, 1 };
 sum(feld); // Exception
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.11.2016, 18:55
Ответы с готовыми решениями:

В классе Array есть метод Sort. Можете ли вы улучшить этот метод, если значения в массиве часто повторяются
Как то проходил собеседование в одну конторку.Задали логическую задачку которую не смог решить.Может кто-нить знает . Вот задача: В...

Метод вставки в массиве
Дан массив из n целых чисел. Расположите в порядке убывания последние k его элементов.Помогите найти ошибку в коде. static...

Метод выбора в двумерном массиве
Извините ребят, метод простой, алгоритм понял хорошо.В одномерном массиве вышло, но в двумерном никак.Вот что вышло у меня.Подкорректируйте...

13
8 / 8 / 2
Регистрация: 07.03.2013
Сообщений: 85
21.11.2016, 19:10
Лучший ответ Сообщение было отмечено Djoni как решение

Решение

во втором цикле надо суммировать до длинны i-того элемента, а не до длинны массива - т.к. двумерный массив не квадратный.
Java
1
2
3
4
5
6
7
8
9
10
11
static int sum(int[][] feld) { 
         
         int sum = 0; 
         int laenge = feld.length;
         for(int i = 0; i < feld.length; i++) {
             for(int j = 0; j < feld[i].length; j++) { 
                 sum += feld[i][j]; 
             } 
         }
          return sum; 
     }
0
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
21.11.2016, 19:11  [ТС]
это задания,
ка я вижу это
Java
1
2
3
4
5
6
7
8
9
10
static int sum(int[][] feld) // создаем двумерный пустой массив
{ int sum = 0;// теперь наш массив состоит из нулей?
 int laenge = feld.length; // считываем длину массива
for(int i = 0; i < laenge; i++) //добавляем по 1 к каждому элементу
{ for(int j = 0; j < laenge; j++) // +1 
 { sum += feld[i][j]; // складываем все элементы вместе
}
 } 
return sum; // возвращаем значение sum
}
со вторым вызовом вообще ничего не понимаю

Java
1
2
3
4
5
6
7
8
int[][] feld = new int[1][];// 
 feld[0] = new int[] { 1, 1 }; // 
sum(feld); // выдает 1 вместо 2 // 
int[][] feld = new int[3][];
 feld[0] = new int[] { 1, 1 }; 
feld[1] = new int[] { 1 };
 feld[2] = new int[] { 1, 1, 1 };
 sum(feld); // Exception
еще вопрос от себя, как мне вызвать эту функцию потом, чтобы посмотреть результат?
0
8 / 8 / 2
Регистрация: 07.03.2013
Сообщений: 85
21.11.2016, 19:40
Djoni,
Цитата Сообщение от Djoni Посмотреть сообщение
это задания,
ка я вижу это
Напиши по-человечески. Непонятно же
0
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
21.11.2016, 22:20  [ТС]
DEMONSTR, что именно не понятно?
0
8 / 8 / 2
Регистрация: 07.03.2013
Сообщений: 85
21.11.2016, 22:44
ничего не понятно) я же тебе скинул рабочую версию метода
Цитата Сообщение от DEMONSTR Посмотреть сообщение
во втором цикле надо суммировать до длинны i-того элемента, а не до длинны массива - т.к. двумерный массив не квадратный.
Java
1
2
3
4
5
6
7
8
9
10
static int sum(int[][] feld) { 
int sum = 0; 
* * * * *int laenge = feld.length;
* * * * *for(int i = 0; i < feld.length; i++) {
* * * * * * *for(int j = 0; j < feld[i].length; j++) { 
* * * * * * * * *sum += feld[i][j]; 
* * * * * * *} 
* * * * *}
* * * * * return sum; 
* * *}
Добавлено через 1 минуту
какие еще вопросы?)

Добавлено через 1 минуту
Цитата Сообщение от Djoni Посмотреть сообщение
еще вопрос от себя, как мне вызвать эту функцию потом, чтобы посмотреть результат?
Java
1
System.out.println(sum(feld));
1
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
21.11.2016, 22:44  [ТС]
DEMONSTR,
ок, а что со второй? это тоже задание
0
8 / 8 / 2
Регистрация: 07.03.2013
Сообщений: 85
21.11.2016, 22:46
Цитата Сообщение от Djoni Посмотреть сообщение
ок, а что со второй? это тоже задание
Какой второй?
0
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
21.11.2016, 22:51  [ТС]
Java
1
2
3
4
5
6
7
8
int[][] feld = new int[1][];
 feld[0] = new int[] { 1, 1 }; 
sum(feld); // выдает 1 вместо 2
int[][] feld = new int[3][];
 feld[0] = new int[] { 1, 1 }; 
feld[1] = new int[] { 1 };
 feld[2] = new int[] { 1, 1, 1 };
 sum(feld); // Exception
Добавлено через 56 секунд
и посмотри пожалуйста, построчно я правильно написал, что происходит, спасибо
0
8 / 8 / 2
Регистрация: 07.03.2013
Сообщений: 85
21.11.2016, 22:56
Чувак, ты этот кусок кода уже три раза скидывал, и я все равно не понимаю что ты хочешь. В конце концов, это надо ТЕБЕ, мог бы быть чуть более многословен, и излагать свои желания четко и внятно.

Добавлено через 3 минуты
Java
1
2
3
4
5
6
7
8
9
10
11
static int sum(int[][] feld) {   //Объявляем функцию
         
         int sum = 0;                      //Объявляем переменную sum
         for(int i = 0; i < feld.length; i++) { //Вызываем цикл от 0 до длинны массива
             for(int j = 0; j < feld[i].length; j++) {   //Вызываем цикл от 0 до длинны элемента массива
 
                 sum += feld[i][j];                             //Суммируем элементы
             } 
         }
          return sum;                                          //Возвращаем сумму
     }
1
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
21.11.2016, 23:04  [ТС]
DEMONSTR,
я дико извиняюсь, если я не понятно изложил задание, оно состоит из двух частей, первую ты разъяснил,спасиботебе большое но есть еще второй код, он в задании в первом посту в самом низу, вопрос, что с ним не так? я вообще не чую что там происходит.
еще раз спасибо.
0
8 / 8 / 2
Регистрация: 07.03.2013
Сообщений: 85
21.11.2016, 23:19
С ним все в порядке. Это пример использования твоего метода
Java
1
2
3
4
5
6
7
8
int[][] feld = new int[1][];
 feld[0] = new int[] { 1, 1 }; //Создаем массив из 2ух элементов:1 и 1
sum(feld); // выдает 1 вместо 2    //Используем метод - то есть суммируем элементы массива
int[][] feld = new int[3][];       //инициализируем массив
 feld[0] = new int[] { 1, 1 };  
feld[1] = new int[] { 1 };
 feld[2] = new int[] { 1, 1, 1 };
 sum(feld); // Exception    //Используем метод
1
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
21.11.2016, 23:25  [ТС]
DEMONSTR, теперь понятно, спасибо
0
2 / 2 / 1
Регистрация: 21.12.2015
Сообщений: 188
23.11.2016, 21:01  [ТС]
вопросы остались такие 1:
Java
1
2
3
int[][] feld = new int[1][];
 feld[0] = new int[] { 1, 1 }; 
sum(feld); //
выдает 1 вместо 2, почему?


2: что здесь за проблема?
Java
1
2
3
4
5
int[][] feld = new int[3][];
 feld[0] = new int[] { 1, 1 }; 
feld[1] = new int[] { 1 };
 feld[2] = new int[] { 1, 1, 1 };
 sum(feld);
Добавлено через 33 минуты
вопрос снят, я затупил
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.11.2016, 21:01
Помогаю со студенческими работами здесь

Метод убирающий дубликаты в массиве
using System; namespace ArraysTest { class Program { static void Main(string args) { ...

Метод delete в динамическом массиве
Как написать метод delete в динамическом массиве import ctypes class DynamicArray(object): def __init__(self): ...

Метод появления нового числа в массиве
Задание состоит из двух пунктов! 1- Сформируйте массив, представляющий собой поле для игры «2048». Поле является массивом 4x4 Это я...

Самый быстрый метод поиска в массиве
Пишу в Excel макрос. По условию имею массив около 1 000 000 записей, каждая запись представляет из себя строку: формата - , это пример. В...

СЛАУ. Метод обратной матрицы, метод Гаусса, метод Крамера, метод Зейделя
Помогите ребят. Не могу построить алгоритмы для этих методов Язык C++


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru