Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 03.03.2019
Сообщений: 12

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

27.01.2020, 09:53. Показов 1987. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано натуральное число. Переставить его цифры так, чтобы образовалось наибольшее число, образованное теми же числами.
Не сложный код, если возможно
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.01.2020, 09:53
Ответы с готовыми решениями:

Переставить цифры так, чтобы образовалось наименьшее число, написанное теми же цифрами
Дано натуральное число n, переставить его цифры так, чтобы образовалось наименьшее число, написанное теми же цифрами. вот программа: ...

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

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

10
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,059
27.01.2020, 11:56
Цитата Сообщение от Axifor Посмотреть сообщение
наибольшее число, образованное теми же числами
А в задании точно про то, что числа образованы числами написано?
Ваш класс/группа (где вы учитесь) состоит из класса/группы?

Самый „не сложный“ код, какой сумел:
Pascal
1
2
3
4
5
6
7
begin
  var(n,s):=(ReadInteger,+1);
  if n<0 then (n,s):=(-n,-s);
  var z:=n.ToString.Count(c->c='0');
  var t:=(s>0?n.ToString.Replace('0','').SortedDescending:n.ToString.Replace('0','').Sorted).JoinIntoString;
  (s>0?t[1]+'0'*z+t[2:]:'-'+t+'0'*z).Println;
end.
0
80 / 33 / 10
Регистрация: 14.06.2019
Сообщений: 516
27.01.2020, 11:56
Pascal
1
2
3
begin
  readlninteger().ToString.ToCharArray.SortedDescending.JoinIntoString.ToInteger.Print;
end.
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,059
27.01.2020, 11:57
Чуток упростил:
Pascal
1
2
3
4
5
6
7
8
begin
  var(n,s):=(ReadInteger,+1);
  if n<0 then (n,s):=(-n,-s);
  var z:=n.ToString.Count(c->c='0');
  var t:=n.ToString.Replace('0','');
  t:=(s>0?t.SortedDescending:t.Sorted).JoinIntoString;
  (s>0?t[1]+'0'*z+t[2:]:'-'+t+'0'*z).Println;
end.
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,381
27.01.2020, 12:03
Pascal
1
2
3
begin
   var v := ReadLnInteger('n = ').ToString.ToCharArray.SortedDescending.Print;
end.
Добавлено через 48 секунд
извините, опоздал.
0
0 / 0 / 0
Регистрация: 03.03.2019
Сообщений: 12
29.01.2020, 12:46  [ТС]
Можно код, где используются только ветвления и циклы?
На уровне 10 класса
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,059
29.01.2020, 13:07
Цитата Сообщение от Axifor Посмотреть сообщение
Можно код, где используются только ветвления и циклы?
Можно.
Разрешаю!
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,381
29.01.2020, 13:09
Цитата Сообщение от Axifor Посмотреть сообщение
Можно код, где используются только ветвления и циклы?
да можно, конечно.
но это же банально и скучно...
0
80 / 33 / 10
Регистрация: 14.06.2019
Сообщений: 516
29.01.2020, 13:12
Цитата Сообщение от Axifor Посмотреть сообщение
Можно код, где используются только ветвления и циклы?
На уровне 10 класса
Зачем?
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,381
29.01.2020, 13:20
Pascal
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
var 
  mas:array[1..11] of integer; {массив для хранения цифр числа}
  n, massize : integer;
begin
  {ввод исходного числа}
  Write('Введите натуральное число:');
  repeat
    ReadLn(n);
  until n>0;  
  
  
  massize:=0;
  repeat
    inc(massize); {увеличили счётчик/индекс в массиве цифр числа}
    mas[massize] := n mod 10; {сохранили последнюю цифру числа в массив}
    n := n div 10; {и отбросили последнюю цифру, путём деления числа на 10}
  until n=0;
  
  {отсортируем массив по убыванию}
  for var i:=1 to massize-1 do
    for var j:=i+1 to massize do
      if mas[i]<mas[j] then Swap(mas[i], mas[j]);
     
  {сформируем новое число}
  n:=0;
  for var i:=1 to massize do n := n*10 + mas[i];
 
  {выведем результат}  
  Writeln(n);
end.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
29.01.2020, 13:22
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var n,m,k,i,p:longint;
begin
write('Введите натуральное число n=');
readln(n);
p:=0;  //новое число
for i:=9 downto 0 do//начиная с 9 ищем в числе цифры по убыванию
 begin
  m:=n;//запоминаем число
  while m>0 do
   begin
    k:=m mod 10;//ищем цифру 9.8.7...0
    if k=i then p:=p*10+k;
    m:=m div 10;//сокращаем число на 10 и повторяем пока не проверим все цифры
   end;
 end;
write(p);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.01.2020, 13:22
Помогаю со студенческими работами здесь

Дано натуральное число n. Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами
Дано натуральное число n. Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами. Нужно решить с...

Дано натуральное трехзначное число n. Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами.
Дано натуральное трехзначное число n. Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами.

Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами
Дано натуральное число n. Переставить его цифры так, чтобы образовалось максимальное число, записанное теми же цифрами.

Переставить цифры числа так, чтобы образовалось максимальное число, записанное теми же цифрами
Дано натуральное число n. Переставить его цифры так, чтобы образовалось МАКСИМАЛЬНОЕ число, записанное теми же цифрами.

Переставить цифры числа так, чтобы образовалось максимальное число, записанное теми же цифрами
Дано натуральное число n.Переставить его цифры так,чтобы образовалось максимальное число,записанное теми же цифрами.


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru