2 / 8
Jun 2019

Witam, ucze sie programowac od niedawna, prosilbym o porade jak to skrocic zeby sedzia zaakceptowal. Prosze o porade, a nie rozwiazanie. Pozdrawiam i dzieki.

#include

using namespace std;
int a[10];
int b[10];
long long potega;
int testy;
int potegowanie(int a, int b)
{
potega = a;
for (b; b>1; b–) potega *= a;
if (potega < 10) return potega;
else return potega%10;

}
int main()
{
cin >> testy;

for (int i=0; i < testy; i++)

cin >> a[i] >> b[i];

int *w;
int *y;
w=&a[0];
y=&b[0];

for (int i=0; i < testy; i++)
{cout << potegowanie(*w, *y) << endl; w++;y++;}

return 0;

}

  • created

    Jun '19
  • last reply

    Jul '20
  • 7

    replies

  • 1.1k

    views

  • 5

    users

  • 4

    likes

  • 3

    links

1 year later

Cześć!
Mógłby ktoś nieco bardziej doświadczony zerknąć na poniższy kod?
Sędzia mi go niestety nie zalicza, choć w kompilatorze działa.

#include
#include <math.h>
using namespace std;
int ile_testow,podstawa,wykladnik,wynik;
int main()
{
cin>>ile_testow;
for(int i=0; i<ile_testow; i++)
{
cin>>podstawa;
cin>>wykladnik;
wynik=pow(podstawa,wykladnik);
cout<<(wynik%10)<<endl;
}
return 0;
}

Nie chcę szukać po forach “gotowca” tylko pracować nad własnym kodem, a takowego lub bardzo podobnego nie mogłem znaleźć, toteż nadpisałem już otwarty wątek o podobnej tematyce. A o formacie wklejonego kodu po prostu zapomniałem - my bad.

Wracając do temu - poprawiłem bibliotekę, jednak nadal nie zalicza mi kodu, choć działa poprawnie :frowning:

  1. Przecież ja nie napisałem, że na forum SPOJA dostaniesz gotowca. A temat jak wspomniałem był opisany WIELOKROTNIE, zadaj sobie trochę trudu i poszukaj. Błąd jest banalny a rozwiązanie już trochę mniej banalne i napisanie poprawnego kodu zajmie Ci trochę więcej czasu niż napisanie to co wkleiłeś.
  2. Dlaczego nie testujesz kodu i nie podajesz linka od Ideone? Nie przeczytałeś (przeczytałeś nieuważnie) wskazówki na przesłanym przeze mnie linku?
  3. Ja nigdzie nie napisałem, że poprawienie plika nagłówkowego coś zmieni w kwestii zaliczenia tego kodu. Na pewno nic nie zmieni. Chodzi tylko o dobre praktyki programowania. Programując w C++ korzystaj z bibliotek dedykowanych do tego języka, one naprawdę są bardziej funkcjonalne niż te z C, chociaż oczywiście jest kompatybilność wsteczna.
  4. Wiele razy czytam ten tekst i go nie rozumiem… “Sędzia go nie zalicza a na kompilatorze działa”. Co to w ogóle znaczy. Wiesz czym jest kompilator? Przecież na spoju Twój kod też musi być kompilowany (czyli przechodzi przez kompilator). Podejrzewam, że chciałeś napisać, że program działa w Twoim środowisku programistycznym (CodeBlocks?).
  5. Na marginesie, nie bardzo wiem skąd Twój optymizm, że u Ciebie działa? Ile przypadków przetestowałeś? Tylko te testowe? Testowe przypadki nie są do sprawdzenia jakości kodu. One tylko pokazują jaka jest struktura danych wejściowych i jak ma wyglądać wyjście. Testy musisz sam wymyślić a tutaj, mogę to powiedzieć z pełnym przekonaniem, nie postarałeś się.
  6. Sugeruję na początku przetestuj swój program, ale naprawdę trochę się wysil z przypadkami testowymi. Jeśli to nie pomoże poszukaj na forum SPOJA. Znajdziesz wskazówki (nie gotowy kod), było to poruszane wiele razy. Właściwie wątki dotyczące tego zadania dotyczą głównie Twojego problemu

Tak,tak…zrozumiałem błąd. Dzięki za sprowadzenie na ziemie.