Czy umiesz potęgować. SPOJ

0

witam napisalem taki kod, niby wszystko działa jak sprawdzam u siebie a na spoju wywala mi błędną odpowiedź, szukałem na forum ale inni mają napisane to zadanie troche inaczej :)

tutaj jest tresc zadania:
http://pl.spoj.com/problems/PA05_POT/

a tutaj kod:
http://ideone.com/mgPPmB

0
            long a0=0,a1=0, a2=0,a3=0;
                a2 = a * a * a % 10;
                a3 = a * a * a * a % 10;

oj to chyba nie przejdzie ...

0

może chodzi o to że dla większych liczb takich jak np 456342 to nie zadziała, bo dla małych no i takich trochę większych np 2416 pokazuje dobry wynik, dać sobie spokój i robić to zupełnie inaczej ?

0

o to właśnie chodzi w tych zadaniach, mają uczyć, żeby zawsze sprawdzać najbardziej niekorzystny przypadek :)
zawsze sprawdzaj, czy nie przekroczysz zakresu danego typu

1

Weź pod uwagę tylko ostatnią cyfrę liczby a.

5

Masz błąd logiczny, przetestuj dla np. 4 do potęgi zerowej.

A sorry, doczytałam teraz:

1 ≤ a,b ≤ 1 000 000 000
ale twój kod niby dopuszcza a i b ==0 ale źle je obsługuje. No ale to tak na marginesie uwaga.

0

Dziękuję wszystkim za zainteresowanie :) po dodaniu jeszcze jednego ifa dzięki radzie szarlotki i zmodyfikowaniu trochę kodu tak jak mówił Złoty Pomidor, zadanie zostało zaakceptowane. Wiem że kod nie jest "najlepszy" ale to moje pierwsze kroki i staram się to robić sam :P dzięki jeszcze raz i pozdrawiam :)

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