Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Java > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 17.03.2019, 21:35   #1
dastreba
Форумчанин
 
Регистрация: 29.11.2017
Сообщений: 63
Репутация: 2
По умолчанию присвоить последнему элементу 0

Делаю,делаю,что-то не выходит.
Все что смог - это присвоить 0 последнему числу,а как элементу,не знаю

Код:

package lab5;


 
class dell
{
    public static int [] delMax(int [] Arr)
    {
        int n=Arr.length;
        int [] r = new int[n-1];
        int i,j,max=Arr[0],imax=0;
        for (i=1; i<n; i++) 
        {
            if (Arr[i]>max)
            {
                imax=i;
                max=Arr[i];
                
            }
            
           }
       
      
       j=0;
       
        for (i=0; i<n; i++)
        {
        	
            if (i != imax)
            {
                r[j++]=Arr[i];
                
            }
            
            
        }
   
      
        return r;
               
    }
    
    
    public static void printArr(int [] Arr)
    {
        for (int i=0; i<Arr.length; i++) 
        {
        	
            System.out.print(Arr[i]+" ");
            
            
        }
        System.out.println();
      
    }
    
    public static void main (String[] args) throws java.lang.Exception
    {
        int[] times = {341, 273, 278, 329, 445, 402, 388, 275, 243, 334, 412, 393, 299, 343, 317, 265};
        
        System.out.println("Масив :");
        printArr(times);
        
        System.out.println("Масив без макс елементу :");
        printArr(delMax(times));
    }
}


Последний раз редактировалось dastreba; 17.03.2019 в 21:50.
dastreba вне форума   Ответить с цитированием
Старый 17.03.2019, 21:59   #2
dastreba
Форумчанин
 
Регистрация: 29.11.2017
Сообщений: 63
Репутация: 2
По умолчанию

подскажите какую строчку нужно добавить пожалуйста
dastreba вне форума   Ответить с цитированием
Старый 19.03.2019, 01:00   #3
Bugrimov
C/C++, Java
Профессионал
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Адрес: Москва
Сообщений: 1,628
Репутация: 703

skype: bugrimovjava
По умолчанию

Можно было бы сделать так, как вариант.))) Надеюсь ничего не упустил
Код:

import java.util.Random;

public class ArrayNumbers {

    private int[] numbers;

    private ArrayNumbers(int size) {
        this.numbers = new int[size];
    }

    private void init() {
        final Random random = new Random();
        for (int i = 0; i < numbers.length; i++) {
            numbers[i] = random.nextInt(1000);
        }
    }

    private void deleteMaxValue() {
        int newSize = numbers.length - 1;
        int maxIndex = findIndexMaxValue();
        if (numbers.length < 1) {
            System.out.println("Нельзя удалить элемент. Массив пустой");
            return;
        }
        int [] temp = new int[newSize];
        for (int i = 0; i < newSize; i++) {
            temp[i] = (i < maxIndex) ? numbers[i] : numbers[i + 1];
        }
        numbers = temp;
    }

    private int findIndexMaxValue() {
        if (numbers.length == 0) {
            System.out.println("Массив пуст");
            return -1;
        } else {
            int max = 0;
            for (int i = 1; i < numbers.length; i++) {
                if (numbers[i] > numbers[max]) {
                    max = i;
                }
            }
            return max;
        }
    }

    private void print() {
        for (Number num : numbers) {
            System.out.print(num + " ");
        }
        System.out.println();
    }

    public static void main(String[] args) {
        ArrayNumbers arr = new ArrayNumbers(20);
        arr.init();
        System.out.print("Исходный:\t");
        arr.print();
        System.out.println("Индекс максимального элемента: " + arr.findIndexMaxValue());
        arr.deleteMaxValue();
        System.out.print("Результат:\t");
        arr.print();
    }
}

__________________
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума   Ответить с цитированием
Ответ

Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Присвоить последнему элементу масива 0 dastreba Паскаль 1 18.06.2018 12:57
С++ Сортировка по последнему символу строк Вероника99 Помощь студентам 0 11.06.2016 03:02
Возврат к последнему исправлению caute Microsoft Office Word 29 03.09.2011 00:35
Обращение к первому и последнему элементу отсортированного массива СветланаRerum Assembler 2 17.05.2010 18:56
Присвоить элементу значение текстовой строки так, чтоб строка была в два и более ряда, а не в один alex2008ean Паскаль 1 15.12.2008 06:31


16:36.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru