Informatică, întrebare adresată de robertpopa01517, 8 ani în urmă

Cerinta
Se citeste de la tastatura un numar natural N. Calculati numarul maxim care se obtine prin eliminarea unei singure cifre din numarul initial.



Date de intrare
Se citeste de la tastatura numarul natural N.



Date de iesire
Se va afisa numarul maxim dupa eliminarea unei cifre.



Restrictii si precizari
0 < N < 1,000,000,000


Exemplu
Date de intrare Date de iesire
5912 912


robertpopa01517: #include
using namespace std;
int main()
{
int n,numar_cifre=0,x,max=1000000000,p=10;
cin>>n;
x=n;
while(x)
{
numar_cifre++;
x/=10;
}
while(numar_cifre)
{
numar_cifre--;
if(p==10)
x=n/p;
else
x=(n/p)*(p/10)-n%(p/10);
p*=10;
if(x }
cout<<-max;
return 0;
}
robertpopa01517: E bun?
robertpopa01517: Nu imi da un test

Răspunsuri la întrebare

Răspuns de lucaciucandrei
0

#include <iostream>

using namespace std;

int main() {

int numar, cifre[20], numarCifre = 0, nrMax = 0;

cin >> numar;

while(numar > 0) {

cifre[ ++numarCifre ] = numar % 10;

numar /= 10;

}

for(int i = 1; i <= numarCifre; i++) {

int numarNou = 0;

for(int j = numarCifre; j >= 1; j--) {

if(i != j)

numarNou = numarNou * 10 + cifre[j];

}

if(numarNou > nrMax) nrMax = numarNou;

}

cout << nrMax;

return 0;

}

Alte întrebări interesante