С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 28.06.2018
Сообщений: 9

Цикл: Поменяйте местами наименьшую и наибольшую цифры заданного числа...

29.06.2018, 08:30. Показов 2120. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано четырехзначное число. Поменяйте местами наименьшую и наибольшую цифры. Предполагаю что нужно написать метод, но не хватает смекалки. помогите решить

Добавлено через 23 секунды
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
int a = 1459;
           System.out.println(a);
 
           int x4 = a/1000;
           int x3 = a%1000/100;
           int x2 = a%100/10;
           int x1 = a%10;
           
          int z = Math.max( x1,  x2);
          int z1 = Math.max( x3,  x4);
          int z2 = Math.max( z,  z1);
          
          int z3 = Math.min( x1,  x2);
          int z4 = Math.min( x3,  x4);
          int z5 = Math.min( z3,  z4);
        
           System.out.println("max: " + z2);
           System.out.println("min: " + z5);
           swap(z2,z5);
           
 
    }
           static void swap(int z2, int z5){
               
           }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.06.2018, 08:30
Ответы с готовыми решениями:

Дано четырехзначное число. Поменяйте местами наименьшую и наибольшую цифру
Можно ли продолжить этот код. Получилось только найти наибольшую и наименьшую цифру. /* 34. Дано четырехзначное число. Поменяйте...

Переставить местами цифры числа так, чтобы сначала оказались цифры, меньшие пяти
Пользователь вводит с клавиатуры шестизначное число. Переставьте местами цифры так, чтобы сначала оказались цифры, меньшие пяти. Пример...

Поменяйте местами наибольшую и наименьшую цифры числа, учитывая, что в числе все цифры различны
Поменяйте местами наибольшую и наименьшую цифры числа, учитывая, что в числе все цифры различны.

6
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
29.06.2018, 09:05
кто стримы с тернарниками заказывал?

dsjafjaskldsfkl,
Java
1
2
3
4
5
6
7
8
9
public static void main(String[] args) {
        int value = 1459;
        String[] array = String.valueOf(value).split("");
        IntSummaryStatistics statistics = Arrays.stream(array).mapToInt(Integer::valueOf).summaryStatistics();
        String max = String.valueOf(statistics.getMax());
        String min = String.valueOf(statistics.getMin());
        value = Integer.parseInt(Arrays.stream(array).map(n -> n.equals(max) ? min : n.equals(min) ? max : n).collect(Collectors.joining()));
        System.out.println(value);
    }
0
0 / 0 / 0
Регистрация: 28.06.2018
Сообщений: 9
29.06.2018, 09:38  [ТС]
умеете мотивировать)
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
29.06.2018, 10:01
dsjafjaskldsfkl, ну можно без стримов, но так больше кода, например
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static int replaceMaxWithMin(int value) {
        String[] array = String.valueOf(value).split("");
        int min = 10, max = -1, maxIndex = 0, minIndex = 0;
        for (int i = 0; i < array.length; i++) {
            int val = Integer.valueOf(array[i]);
            if (val > max) {
                max = val;
                maxIndex = i;
            }
            if (val < min) {
                min = val;
                minIndex = i;
            }
        }
        String temp = array[minIndex];
        array[minIndex] = array[maxIndex];
        array[maxIndex] = temp;
        return Integer.valueOf(String.join("", array));
    }
1
 Аватар для Aviz__
2736 / 2046 / 506
Регистрация: 17.02.2014
Сообщений: 9,462
29.06.2018, 10:44
держи, завалялось. Меняет все цифры числа
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
public class ChangeDig {
 
    private static int [] getDigitNum(long num) {
        int [] digitsNum = new int[(int) Math.log10(num) + 1];
        int index = 0;
        while (num != 0){
            digitsNum[index++] = (int)(num % 10);
            num /= 10;
        }
        return digitsNum;
    }
 
    private static void changeAllBigestSmallestElementsArray(int [] array) {
        int bigest = array[0];
        int smallest = array[0];
        for (int i = 1; i < array.length; i++) {
            if (array[i] > bigest) {
                bigest = array[i];
            }
            if (array[i] < smallest) {
                smallest = array[i];
            }
        }
        int indexChang = -1;
        for (int i = 0; i < array.length; i++) {
            if (array[i] == bigest) {
                indexChang = i;
                array[i] = smallest;
            }
            if (array[i] == smallest && i != indexChang) {
                array[i] = bigest;
            }
        }
    }
 
    private static int getNumFromArray(int [] digArr) {
        int digPow = digArr.length - 1;
        int result = 0;
        for (int i = digArr.length - 1; i >= 0; i--) {
            result += (int)(digArr[i] * Math.pow(10, digPow--));
        }
        return result;
    }
 
    public static void main(String[] args) {
        int num = 10304619;
        System.out.println("Исходное число =          " + num);
        int [] arrayDig = getDigitNum(num);
        changeAllBigestSmallestElementsArray(arrayDig);
        num = getNumFromArray(arrayDig);
        System.out.println("Трансформировнное число = " + num);
 
    }
}
0
29.06.2018, 10:47

Не по теме:

Aviz__, тебе из завалявшегося пора книгу издать, типа "Решения стандартных задач на Java", мне 10% за идею

0
 Аватар для Aviz__
2736 / 2046 / 506
Регистрация: 17.02.2014
Сообщений: 9,462
29.06.2018, 11:07
Цитата Сообщение от Welemir1 Посмотреть сообщение
мне 10%

Не по теме:

:D не, на книгу, еще не тянет, к сожалению. и это такой гемор...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.06.2018, 11:07
Помогаю со студенческими работами здесь

Поменять местами наибольшую и наименьшую цифры числа (блок-схема)
Помогите, пожалуйста, составить блок-схему по задаче: Поменять местами наибольшую и наименьшую цифры числа, учитывая, что все цифры...

Найти наибольшую и наименьшую цифры в записи заданного целого числа
Найти наибольшую и наименьшую цифры в записи заданного целого числа.

В строке поменять местами наибольшую и наименьшую цифры, самую наименьшую в алфавитном порядке букву – с наибольшей
помогите пожалуйста нужен код ВБА 1. Символьная строка состоит из цифр и букв латинского алфавита. Поменяйте местами наибольшую и...

Поменять местами наибольшую и наименьшую цифры
Помогите добрые люди пожалуйста!!! Нужно написать програмку: Ввести четырехзначное число. Поменять местами наибольшую и наименьшую...

Поменять местами наибольшую и наименьшую цифры в числе
помогите составить программу!Ввести четырехзначное число. Поменять местами наибольшую и наименьшую цифры. Предусмотреть проверку на ввод...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru