Задача с массой на Java
Задача:
Дана однородная масса с некоторым количеством целых чисел. Узнать и вывести на экран сумму всех наибольших (число не одно) элементов этой массы. Вычисление наибольшего элемента и сумму элементов произвести в отдельных функциях.Несмотря на несколько пугающе сформулированную задачу, на самом деле она не так уж и сложна. Немного переиначим её, сделаем более вразумительной. Однородная масса - это одномерный массив; таким образом се задание сводится к а) узнать наибольшее значение в массиве и б) узнать и вывести на экран сумму всех таких элементов. Решение:
Пара комментариев по коду выше. Исходная масса (она же проходит у нас под псевдонимом massa и является одномерным массивом) определяется в строке 28, в ней же сразу задаются значения. в строках 8-16 с помощью функции maxEl мы находим максимальное число (значение) этой однородной массе. А вот функции sumIndex (строки 18-26) занимается тем, что суммирует все эти значения столько раз, сколько они встречаются в ней. Оба этих метода являются функциями, так как возвращают некоторые значения. Если бы они не возвращали, то их уловно называли б процедурами. Также их можно сделать не статическими, но тогда придется создавать экземпляры класса - лениво. Просто знайте, что данное решение не единственное. Хотя и правильное.
- package up7;
- public class Up7 {
- static int elMax;
- static int sumIndex;
- private static int maxEl(int[] mass) {
- int key = 0;
- for (int i=0; i<mass.length; i++) {
- if (mass[i]>key) {
- key = mass[i];
- }
- }
- return key;
- }
- private static int sumIndex(int[] mass, int key) {
- int sum = 0;
- for (int i=0; i<mass.length; i++) {
- if (mass[i]==key) {
- sum = sum + i;
- }
- }
- return sum;
- }
- public static void main(String[] args) {
- int[] massa = {10,20,30,30,20,5,67,43,67};
- elMax = maxEl(massa);
- sumIndex = sumIndex (massa, elMax);
- System.out.println(sumIndex);
- }
- }
Вот так мы просто решили выглядящую такой загадочной задачу. Если у вас есть вопросы/комментарии/предложения и другие жалобы по коду выше в частности или по задачам на языке java вообще, то вы можете попробовать написать мне на почту up777up@yandex.ru. Возможно даже, что я вам помогу.

Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.