Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2014, 13:06   #1
Drunk Gnome
Новичок
Джуниор
 
Регистрация: 15.11.2014
Сообщений: 1
По умолчанию Какое наименьшее число Z можно получить вставкой цифры X в четырёхзначное число Y.

Какое наименьшее число Z можно получить вставкой цифры X в четырёхзначное число Y. Ведущие нули не допустимы.

Формат ввода:

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

1 2014
Формат вывода:

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

12014

Заранее благодарен!)
Drunk Gnome вне форума Ответить с цитированием
Старый 15.11.2014, 14:45   #2
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Я так думаю: 10000

Либо: 11000
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]

Последний раз редактировалось Stilet; 15.11.2014 в 15:02.
newerow1989 вне форума Ответить с цитированием
Старый 15.11.2014, 14:58   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Ищи слева-направо первую цифру большую или равную вставляемой. Нашел - вставляй перед ней, если вставляемая не ноль или найденная не первая. Иначе после
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.11.2014, 20:57   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Чото как-то... криво, штоли...
Код:
function Pow10(Exponent: Byte): DWORD;
begin
  Result:= 1;
  while Exponent <> 0 do
    begin
      Result:= Result * 10;
      Dec(Exponent);
    end;
end;

{ TMainForm }

procedure TMainForm.ExecButtonClick(Sender: TObject);
var
  X, Y, Z, P: DWORD;
  idx: Integer;
  s: string;
begin
  ListBox.Clear();
  Z:= 0;

  for idx:= 0 to 4 do
    begin
      P:= Pow10(idx);
      Y:= DWORD(ySpinEdit.Value) * P;
      X:= (DWORD(xSpinEdit.Value) div P) * P * 10
          + Y + (DWORD(xSpinEdit.Value) mod P);
      s:= IntToStr(X);
      ListBox.Items.Add(s);

      if X > Z
        then begin
               Z:= X;
               ListBox.ItemIndex:= idx;
             end;
    end;
end;
Изображения
Тип файла: png 12.png (5.1 Кб, 33 просмотров)
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить из Textfield1 число и из Textfield2,3 число. И вывести их на экран arh42kem Общие вопросы по Java, Java SE, Kotlin 2 04.06.2014 11:09
В заданном строкой S натуральном N-разрядном числе упорядочить цифры так, чтобы получить наибольшее число из тех же цифр kea75 Паскаль, Turbo Pascal, PascalABC.NET 5 07.04.2014 14:44
Какое максимальное число можно записать в 1 байте Дима я Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 13.12.2010 16:31
Какое наимньшее число ферзей можно расставить на доске так, чтобы они держали под бонм все свободные поля alykaa Помощь студентам 4 01.12.2010 18:48
Как разбить число на цифрыКак разбить число на цифры: 3241 => 3,2,4,1 (Pascal) Banderas123 Помощь студентам 3 07.12.2009 18:26