Jeśli dobrze rozumiem to chodzi Ci o własną arytmetykę, gdy wynik jest tak duży, że nie mieści się w żadnym dostępnym typie danych.
Pomysł polega na tym, że liczby wczytujesz jako string, a następnie przenosisz je do tablic, gdzie w każdej komórce będziesz miał oddzielną cyfrę.
Obliczenie całego wyniku polega na przemnożeniu a (wykładnik) razy otrzymany wynik (początkowo ustawiony na 1) przez b (podstawa potęgi).
Proces mnożenia pisemnego wygląda dokładnie tak jak na kartce. Robisz dwa fory po kolejnych indeksach dwóch mnożonych tablic. Mnożysz obie komórki, a wynik tego mnożenia zapisujesz w trzeciej tablicy w indeksie nr indeks1 + indeks2 (pamiętaj żeby cyfra jedności była pod indeksem 0, bo jeśli będzie gdzieś indziej to trzeba będzie korygować miejsce ostatniego indeksu).
Już po całym procesie mnożenia w niektórych komórkach (zazwyczaj pewnie w prawie wszystkich) może się zdarzyć, że wynik jest większy niż 9. Wtedy zostawiasz w tej komórce resztę z dzielenia przez 10, a resztę przedzieloną przez 10 przenosisz do dalszej komórki. Robisz to aż do momentu aż nie będzie nic do przeniesienia.
Na koniec pamiętaj, żeby przenieść wynik z tablicy wynik do jednego z mnożonych czynników i wyzerować tablicę z wynikiem.
Oczywiście jeżeli znasz szybkie potęgowanie to możesz to zaimplementować. Program będzie wtedy działał szybciej. Na początek chyba lepiej jednak napisać zwykłe potęgowanie.