• На вход программе подаётся последовательность символов, заканчивающаяся точкой. Требуется написать программу, которая определяет, есть ли в этой последовательности цифры, и выводит НАИБОЛЬШЕЕ число, которое можно составить из этих цифр. Ведущих нулей быть не должно, за исключением одного нуля. Если числа нет, выводится сообщение 'no', если число есть - 'да' и в следующей строке искомое число.
    Например, если исходная последовательность была такая: Day 10, mice 8: "Year" 7 is a mistake 91.
    То результат должен быть следующий:
    Да
    987110

Ответы 2

  • Я пытался. Пишет слишком поздно исправлять ответ ...
    • Автор:

      evonyn8x6
    • 5 лет назад
    • 0
  • Var   A:array['0'..'9'] of longint;   C:char;   i:integer;BeginFor C:= '0' to '9' do A[C]:=0;RepeatRead(C);if C in['0'..'9'] then A[C]:=A[C]+1;Until C = '.';if (A['1']=0)and(A['2']=0)and(A['3']=0)and(A['4']=0)and(A['5']=0)and(A['6']=0)and(A['7']=0)and(A['8']=0)and(A['9']=0) then   if A['0']=0 then Write('no')   else      Begin      WriteLn('Да');      WriteLn(0);      Endelse   Begin   WriteLn('Да');   For C:='9' downto '0' do       For i:= 1 to A[C] do           Write(C)   EndEnd.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years