Написать программу которая вводит с клавиатуры 5 чисел и выводит их в возрастающем порядке

В три переменные a, b и c явно записаны программистом три целых попарно неравных между собой числа. Создать программу, которая переставит числа в переменных таким образом, чтобы при выводе на экран последовательность a, b и c оказалась строго возрастающей.

Пример ввода: a = 14; b = 10; c = 23; Результат: a = 10; b = 14; c = 23;
Я сделал вот так
public static void main(String args []) < int a = in.nextInt(); int b = in.nextInt(); int c = in.nextInt(); int x; System.out.println(«Числа в переменных a, b и c : » + a + » » + b + » » + c); if (a >b) < x = a; a = b; b = x; >if (b > c) < x = b; b = c; c = x; >System.out.println(«Возрастающая последовательность: » + a + » » + b + » » + c); >
Отслеживать

13.6k 12 12 золотых знаков 43 43 серебряных знака 72 72 бронзовых знака
задан 1 окт 2016 в 17:48
63 1 1 золотой знак 3 3 серебряных знака 11 11 бронзовых знаков
Что вы пробовали и что у вас не получилось?
1 окт 2016 в 17:49
Спасибо,сейчас.

Клавиатурный тренажер (1-й день)

1 окт 2016 в 17:55
Дополните вопрос кодом. Какие сложности возникли при решении задачи?
1 окт 2016 в 18:00
Короче правильно нужно ещё раз a и b сравнить скопирован первый if.

1 окт 2016 в 21:36

А не проще сразу выводить в таком виде: Минимальное — мин(а, мин(б, в)). Среднее — (а + б + в — макс(а, макс(б, в)) — мин(а, мин(б, в)). Самое большое — макс(а, макс(б, в)) ?

11 янв 2018 в 20:38

5 ответов 5

Сортировка: Сброс на вариант по умолчанию

Вот такое незамысловатое решение:

import java.util.Arrays; public class Sort < public static void main(String[] args) < int[] array = new int[]; Arrays.sort(array); System.out.println(Arrays.toString(array)); > >

Если смысл вопроса сводится, как самому реализовать алгоритм, то смотрим например тут.

Читайте также:
Программа учета торговой точки

Отслеживать
ответ дан 2 окт 2016 в 16:26
51.5k 195 195 золотых знаков 56 56 серебряных знаков 233 233 бронзовых знака

для фиксированного числа элементов, можно специализированные алгоритмы сортировки использовать (если есть специализированные требования, например, как в теле вопроса или для скорости)

2 окт 2016 в 16:51
2 окт 2016 в 17:10

под «специализированные требования» в теле вопросе я имел ввиду что ввод и вывод заданы в трёх отдельных переменных, а не в одном массиве, если следовать букве.

2 окт 2016 в 19:02

Доказано (для сетей сортировки), что три сравнения—это оптимальное число, но ваш код в вопросе использует только два сравнения (ошибка). Добавьте третье сравнение, например:

public class Sort3 < public static void main(String[] args) < int a = 14; int b = 10; int c = 23; assert a != b a != c b != c; System.out.println(«Числа в переменных a, b и c : » + a + » » + b + » » + c); if (b >c) < int x = b; b = c; c = x; // swap(b, c); >assert b < c; if (a >c) < int x = a; a = c; c = x; // swap(a, c); >assert a < c; if (a >b) < int x = a; a = b; b = x; // swap(a, b); >assert a < b b < c; System.out.println(«Возрастающая последовательность: » + a + » » + b + » » + c); >>
$ javac -g Sort3.java $ java -ea Sort3 Числа в переменных a, b и c : 14 10 23 Возрастающая последовательность: 10 14 23

Источник: ru.stackoverflow.com

Как включить подсветку на любой клавиатуре

level06.lesson11.bonus03

ya_zay4eg

Not a member of Pastebin yet? Sign Up, it unlocks many cool features!

Java 1.78 KB | None | 0 0

package com.javarush.test.level06.lesson11.bonus03 ;

import java.io.BufferedReader ;

import java.io.IOException ;

import java.io.InputStreamReader ;

import java.util.ArrayList ;

/* Задача по алгоритмам

Задача: Написать программу, которая вводит с клавиатуры 5 чисел и выводит их в возрастающем порядке.

Читайте также:
Что значит модерация программы в навигаторе

Пример ввода:

Пример вывода:

public class Solution

public static void main ( String [ ] args ) throws IOException {

/*Вводим номера*/

String nom1, nom2, nom3, nom4, nom5 ;

BufferedReader reader = new BufferedReader ( new InputStreamReader ( System . in ) ) ;

nom1 = reader. readLine ( ) ;

nom2 = reader. readLine ( ) ;

nom3 = reader. readLine ( ) ;

nom4 = reader. readLine ( ) ;

nom5 = reader. readLine ( ) ;

/*Переводим строки в int*/

int num1 = Integer . parseInt ( nom1 ) ;

int num2 = Integer . parseInt ( nom2 ) ;

int num3 = Integer . parseInt ( nom3 ) ;

int num4 = Integer . parseInt ( nom4 ) ;

int num5 = Integer . parseInt ( nom5 ) ;

/*Формируем массив*/

int numbers [ ] = { num1, num2,num3,num4,num5 } ;

/*Размер массива*/

int arraySize = numbers. length ;

//System.out.println (arraySize);

for ( int a = 1 ; a < arraySize ; a ++ ) {

for ( int b = arraySize — 1 ; b >= a ; b — ) {

if ( numbers [ b — 1 ] > numbers [ b ] ) {

int t = numbers [ b — 1 ] ;

numbers [ b — 1 ] = numbers [ b ] ;

numbers [ b ] = t ;

for ( int i = 0 ; i < arraySize ; i ++ ) {

System . out . println ( numbers [ i ] ) ;

Advertisement

Add Comment

Please, Sign In to add comment

Advertisement

XML | 22 min ago | 2.08 KB

HTML | 23 min ago | 8.06 KB

GetText | 26 min ago | 0.23 KB

Java | 42 min ago | 0.31 KB

Java | 44 min ago | 0.29 KB

Java | 51 min ago | 0.54 KB

Kotlin | 52 min ago | 0.34 KB

Python | 1 hour ago | 1.04 KB

Advertisement

We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand

Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!

Источник: pastebin.com

4johndoe / Solution.java

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

Читайте также:
Какие развивающие программы для детей
package com . javarush . test . level06 . lesson11 . bonus03 ;
import java . io . BufferedReader ;
import java . io . InputStreamReader ;
/*
Задача: Написать программу, которая вводит с клавиатуры 5 чисел и выводит их в возрастающем порядке.
Пример ввода:
3
2
15
6
17
Пример вывода:
2
3
6
15
17
*/
public class Solution
public static void main ( String [] args ) throws Exception
BufferedReader reader = new BufferedReader ( new InputStreamReader ( System . in ));
int [] a = new int [ 5 ];
for ( int i = 0 ; i < 5 ; i ++)
a [ i ] = Integer . parseInt ( reader . readLine ());
// System.out.println(a[i]);
>
for ( int i = 0 ; i < a . length ; i ++)
int min = a [ i ];
int minIndex = i ;
for ( int j = i + 1 ; j < a . length ; j ++)
if ( a [ j ] < min )
min = a [ j ];
minIndex = j ;
>
>
if ( i != minIndex )
int temp = a [ i ];
a [ i ] = a [ minIndex ];
a [ minIndex ] = temp ;
>
System . out . println ( a [ i ]);
>
>
>

Источник: gist.github.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru