nu inteleg de ce la suma numerelor care au cifrele in ordine crescatoare imi afiseaza 0 chiar daca am introdus 1,2,3..
#include
using namespace std;
int main()
{
int x,n,i,s=0,smax,c,aux;
cin>>n;
for(i=1;i<=n;i++)
cin>>x;
aux=x;
c=1;
while(x<9)
{
if(n%10<=n%10%10)
c=0;
n/=10;
if(c=0)
s+=aux;
}
cout<
return 0;
}
Răspunsuri la întrebare
Răspuns de
1
Răspuns:
Raspuns
Explicație:
Salut!
In primul rand, programul este gresit deoarece:
1. while(x<9) o sa se repete la infinit, astfel ducand la eroare
2. tu iei n%10, nu x%10 si tu imparti n/=10 adica cate cifre sa poti introduce tu la inceput
3. O verificare pentru a vedea suma celor crescatoare este (e facuta de mn)
#include <iostream>
using namespace std;
int main()
{
int v[100];
int n,i,s=0;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
for(i=1;i<=n;i++)
{
if(v[i+1]-v[i]==1||v[i-1]-v[i]==-1)
s+=v[i];
}
cout<<s;
return 0;
}
serban1337:
As sugera sa folosesti vectori pentru astfel de lucruri.
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Franceza,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă