В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
olenkazyateva
olenkazyateva
28.07.2022 19:02 •  Информатика

Дано натуральное число. найти минимальную цифру и приписать её в начало и в конец числа

Показать ответ
Ответ:
lexazykov20014
lexazykov20014
06.10.2020 10:37
Вот два варианта решения:
1)В первом варианте программа выдает неверный ответ, если в числе есть хотя бы один ноль.

var
  a, n, i, min, tmp, m: integer;
 
begin
  m := 1;
  read(a);
  tmp := a;
  n := 0;
  min := 10;
  while tmp > 0 do
   begin
    n := n + 1;
    if(tmp mod 10 < min) then min := tmp mod 10;
    tmp := tmp div 10;
  end;
  for i := 1 to n do
    m := m * 10;
  a := a + (min * m);
  a := a * 10;
  a := a + min;
  write(a);
end.

2)Второй вариант с использованием строки:

var
  s: string;
  i, min: integer;
 
begin
  readln(s);
  min := 10;
  for i := 1 to length(s) do
    if(strtoint(s[i]) < min) then min := strtoint(s[i]);
  s := s + inttostr(min);
  s := inttostr(min) + s;
  writeln(s);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота