Zadanie Suma liczb dwucyfrowych (sdw)

0

Cześć , mam pytanie dlaczego ten kod nie działa.Jest to stosunkowo łatwe zadanie i dlatego też nie rozumiem dlaczego cały czas wyrzuca mi błąd . Poniżej dam link do zadania.
https://szkopul.edu.pl/problemset/problem/ncMIT_6mpJt2H3GsS4uBg56r/site/?key=statement

#include <iostream>

using namespace std;

int main()
{
    int liczba,suma;
    int a;
    cin>>a;
    for(int i=0;i<a;i++)
    {
        cin>>liczba;
        if((liczba>=10)&&(liczba<=100))
        {
            suma+=liczba;
        }
        else
        {
            continue;
        }
    }
 cout<<suma<<endl;
    return 0;
}
1

Rożnica jednego znaku :)
Przykład z danymi wejściowymi dający zły wynik https://godbolt.org/z/3T5der

0

@MarekR22: Zmieniłem w (liczba<=100) na (liczba<=99) i teoretycznie już powinno być dobrze ale Szkopuł dalej nie chce mi tego zaliczyć

1

Gdyby jeszcze sumę zainicjalizoewać?

0

@FilipITT: Jak wyżej, spraw sobie też jakieś porządne IDE, które będzie wychwytywać takie rzeczy, (użycie niezainicjalizowanej zmiennej).

0

Poza tym strasznie przekombinowane!

#include <iostream>
#include <iterator>
using namespace std;

int main()
{
	istream_iterator<int> iin(cin);
	int sum=0;
	for(int value,count=*iin;(count--);sum+=((10<=value)&&(value<100))*value) value=*(++iin);
	cout<<sum<<endl;
	return 0;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1