Предмет: Информатика,
автор: sweetJanuary
Дан массив дробных чисел, необходимо отсортировать массив в порядке убывания близости к целым числам.
(Например. Даны числа: 7,5; 0,3; 9,23; 5,8. После сортировки: 5,8; 9,23; 0,3; 7,5)
Ответы
Автор ответа:
0
// PascalABC.NET 3.1, сборка 1239 от 08.05.2016
begin
ReadArrReal('Введите элементы массива:',ReadInteger('n='))
.Select(x->(x,Frac(x)>0.5?1-Frac(x):Frac(x)))
.OrderBy(x->x.Item2).Select(x->x.Item1).Println
end.
Тестовое решение
n= 4
Введите элементы массива: 7.5 0.3 9.23 5.8
5.8 9.23 0.3 7.5
begin
ReadArrReal('Введите элементы массива:',ReadInteger('n='))
.Select(x->(x,Frac(x)>0.5?1-Frac(x):Frac(x)))
.OrderBy(x->x.Item2).Select(x->x.Item1).Println
end.
Тестовое решение
n= 4
Введите элементы массива: 7.5 0.3 9.23 5.8
5.8 9.23 0.3 7.5
Похожие вопросы
Предмет: Қазақ тiлi,
автор: poka6989
Предмет: Другие предметы,
автор: Аноним
Предмет: Геометрия,
автор: ilanamukhamrdshina47
Предмет: Физика,
автор: KrissKrisTina