• Поменять местами максимальное и минимальное 3хзначное число х(Pascal)Типо 157=751

Ответы 3

  • Мы проходимся по нашей строке s, обрабатывая каждый символ в ней. i - это номер символа (к примеру, в строке s='2h74' s[3]='7'). length(s) - это количество символов в строке s. Цикл for берет каждый сивмол, начиная со 2-го номера, и заканчивая последним. Со второго номера мы начинаем потому, что первый мы уже обработали за циклом: max:=s[1]; min:=s[1]; p:=1; q:=1;
  • спасибо большое ты мне жизнь спас
  • Интересная задачка, заковыристая...Var x,i,c,q,p:integer; s:string; max,min,k:char;Begin readln(x); str(x,s); max:=s[1]; min:=s[1]; p:=1; q:=1; for i:=2 to length(s) do   begin    if s[i]>max then       begin       max:=s[i];       q:=i;      end;    if s[i]<min then      begin       min:=s[i];       p:=i;      end;   end; k:=s[p]; s[p]:=s[q]; s[q]:=k; val(s,x,c); writeln(x);End.Сработает для чисел любой значности.
    • Автор:

      braelyn
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

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

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

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