1 / 8
Feb 2020

Witam.Mam problem z zadaniem 969, wynik wychodzi poprawny, ale sędzia nie chce zaliczyć zadania. Z treści nie dowiedziałem się więcej. Pod spodem zostawiam link do zadania:

#include

using namespace std;

int main()
{
int testy; float a,b,c,delta; float tb[100];

cin>>testy;

for(int j=1;j<=testy;j++)
{
    cin>>a>>b>>c;
    delta=b*b-(4*a*c);

    tb[j]=delta;
}
cout<<endl;
for(int i=1;i<=3;i++)
{
    if(tb[i]<0)cout<<0<<endl;
    else if(tb[i]==0)cout<<1<<endl;
    else cout<<2<<endl;

}
return 0;

}

  • created

    Feb '20
  • last reply

    Jun '21
  • 7

    replies

  • 924

    views

  • 4

    users

  • 3

    links

Dzięki za radę, niestety konto założyłem dopiero wczoraj, a programuje od tygodnia, więc nie jestem jeszcze obeznany w tym temacie. Pzdr

  1. Masz trochę nieporządku w kodzie. Ja preferuję jedną instrukcję w jednej linii. Kod przez to jest dłuższy, ale łatwiej znaleźć błąd.
  2. Lepiej używać typu double zamiast float.
  3. Nie ma w tym zadaniu potrzeby korzystania z tablic. Możesz na bieżąco przetwarzać dane i wypisywać wynik.
  4. Jeśli już korzystasz z tablic to dobrze jest pamiętać, że w C++ tablice indeksuje się od 0 a nie od 1.
  5. Bardzo ważne! W zadaniu nie masz podanej liczby zestawów, jest ona nieokreślona. Wczytywanie niekreślonej liczby danych było na SPOJ-u opisywane wielokrotnie. Możesz to zrobić na przykład instrukcją while(cina>>a>>b>>c) {…}.
  6. Widzę, że problem został rozwiązany, gdy pisałem poprzednie punkty… :slight_smile:
1 year later

Hej,
Nadpisuję tutaj, żeby nie zakładać nowego wątku.
PYTHON
Otrzymuje błąd wykonania. Czy może ktoś podpowiedzieć?

Na wstępie powiem że ciężko mi pomóc bo nie znam za bardzo pythona i robiłem trochę po omacku :smiley: ale udało mi się przepchnąć AC stosując pętle

while True:
	try:
        wczytaj liczby
		bla 
        bla
        bla
    except:
		break