7) дано произвольное натуральное число, в котором все цифры различны. удалить все цифры между максимальной и минимальной цифрой. можно сделать в паскале ,симантике ,,с++

vikysikkkkk vikysikkkkk    3   09.09.2019 18:10    2

Ответы
Bow9718 Bow9718  07.10.2020 03:44
Вроде работает

#include <bits/stdc++.h>

using namespace std;

int main()

string s; 
cin >> s; 
int imin = 0, imax = 0; 
char Min = '9'+ '0'; char Max = '0'-'0'; 
 for (int i = 0; i < s.length(); ++i) 
   {   
     if (s[i] < Min)   
    { 
           Min = s[i]; 
           imin = i; 
    }   
     if (s[i] > Max)     
    { 
          Max = s[i]; 
          imax = i;
    } 
    

  s.erase(1 + min(imax, imin), abs(imax-imin) - 1);
  cout << s;
}
ПОКАЗАТЬ ОТВЕТЫ
CassyBelka CassyBelka  07.10.2020 03:44
// PascalABC.NET 3.3, сборка 1562 от 02.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var ИсходноеЧисло:=ReadlnString('Введите исходное целое число:');
  var МассивЦифрЧисла:=ИсходноеЧисло.ToCharArray;
  var МестоМаксЦифры:=МассивЦифрЧисла.IndexMax;
  var МестоМинЦифры:=МассивЦифрЧисла.IndexMin;
  If МестоМинЦифры>МестоМаксЦифры then Swap(МестоМинЦифры,МестоМаксЦифры);
  ИсходноеЧисло:=ИсходноеЧисло?[:МестоМинЦифры+1]+
      ИсходноеЧисло?[МестоМаксЦифры+2:];
  Writeln('Результат замены: ',ИсходноеЧисло)
end.

Пример
Введите исходное целое число: 1402956387
Результат замены: 1456387
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика