Cine mă poate ajuta?
1) Se introduc de la tastatura n numere. Sa se afișeze cea mai mare cifra a fiecărui număr.
2) Se citesc n numere de la tastatura . Sa se afiseze fiecare număr obținut prin eliminarea tuturor cifrelor 0.
Am nevoie de algoritmul de rezolvare cu pentru și cât timp
CRG:
C/C++/Pascal? Poti folosi subprograme?
Răspunsuri la întrebare
Răspuns de
2
/*1) Se introduc de la tastatura n numere. Sa se afișeze cea mai mare cifra a fiecărui număr. */
#include <iostream>
using namespace std;
// Functia primeste o valoare x si returneaza cea mai mare cifra a sa
int cifraMax(int v)
{ int cMax = 0;
while(v !=0)
{
if(v%10>cMax)
cMax = v%10;
v/=10;
}
return cMax;
}
// Functia primeste o valoare n, citeste n valorii pentru fiecare valoare afiseaza cifra max
void raspuns(int n)
{ int i,x;
for(i=1;i<=n;i++)
{
cout<<"Dati o valoare ";
cin>> x;
cout<<"Cifra maxima a valorii "<<x<<" este "<<cifraMax(x)<<endl;
}
}
int main()
{
int n;
cout <<"Dati n ";
cin>>n;
raspuns(n);
}
/*2) Se citesc n numere de la tastatura . Sa se afiseze fiecare număr obținut prin eliminarea tuturor cifrelor 0. */
#include <iostream>
using namespace std;
// Functia primeste o valoare elimina din compozitie orice cifra egala cu 0, returneaza valoarea nou formata
// var p - primeste acea putere a lui 10 necesara pentru reformarea valorii
// var cv - primeste o copie dea lui v
int eliminaZero( int v )
{ int p=1, cv;
cv = v;
while(cv!=0)
{
p=p*10;
if(cv%10==0)
{
v = (v/p) * (p/10) + v%(p/10);
p/=10;
}
cv /= 10;
}
return v;}
void raspuns (int n)
{
int i,x;
for(i=1;i<=n;i++)
{
cout<<"Dati o valoare ";
cin>>x;
cout<<"Valoarea "<<x<<" rescrisa fara cifra 0 este "<< eliminaZero(x)<<endl;
}
}
int main(){
int n;
cout<<"Dati n ";
cin>>n;
raspuns (n);
}
Sper sa fi fost de folos pentru mai multe detalii txt me!
#include <iostream>
using namespace std;
// Functia primeste o valoare x si returneaza cea mai mare cifra a sa
int cifraMax(int v)
{ int cMax = 0;
while(v !=0)
{
if(v%10>cMax)
cMax = v%10;
v/=10;
}
return cMax;
}
// Functia primeste o valoare n, citeste n valorii pentru fiecare valoare afiseaza cifra max
void raspuns(int n)
{ int i,x;
for(i=1;i<=n;i++)
{
cout<<"Dati o valoare ";
cin>> x;
cout<<"Cifra maxima a valorii "<<x<<" este "<<cifraMax(x)<<endl;
}
}
int main()
{
int n;
cout <<"Dati n ";
cin>>n;
raspuns(n);
}
/*2) Se citesc n numere de la tastatura . Sa se afiseze fiecare număr obținut prin eliminarea tuturor cifrelor 0. */
#include <iostream>
using namespace std;
// Functia primeste o valoare elimina din compozitie orice cifra egala cu 0, returneaza valoarea nou formata
// var p - primeste acea putere a lui 10 necesara pentru reformarea valorii
// var cv - primeste o copie dea lui v
int eliminaZero( int v )
{ int p=1, cv;
cv = v;
while(cv!=0)
{
p=p*10;
if(cv%10==0)
{
v = (v/p) * (p/10) + v%(p/10);
p/=10;
}
cv /= 10;
}
return v;}
void raspuns (int n)
{
int i,x;
for(i=1;i<=n;i++)
{
cout<<"Dati o valoare ";
cin>>x;
cout<<"Valoarea "<<x<<" rescrisa fara cifra 0 este "<< eliminaZero(x)<<endl;
}
}
int main(){
int n;
cout<<"Dati n ";
cin>>n;
raspuns (n);
}
Sper sa fi fost de folos pentru mai multe detalii txt me!
Alte întrebări interesante
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Engleza,
8 ani în urmă
Limba română,
9 ani în urmă
Biologie,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă