Siemka,
Mam za zadanie napisać program w C wczytujący dwie duże liczby naturalne jako tablice znakowe i wykonać obliczenia na nich. Duże liczby tzn przekraczające zakresy standardowych typów całkowitych. I problem jest taki, że nie bardzo rozumiem jak się do tego zadania zabrać, bo nie wiem jak wczytać te liczby jako tablice znaków i czemu takie coś się robi. Bardzo bym prosił o jakieś wskazówki ;)
czemu takie coś się robi
Bo jak masz naprawdę duże liczby, które nie mieszczą się w zakresie long long nawet, to jak inaczej chcesz na nich robić obliczenia
tablice znakowe
Na pewno znakowe? Nie tablice intów 32-bitowych? Dziwne, ale niech będzie
jak wczytać te liczby jako tablice znaków
Level noob: Czytasz liczbę cyfra po cyfrze i zapisujesz cyfry do tablicy
Level average: (tego przypuszczam wymagają): Na kartce papieru zrobić konwersję z podstawy dziesiętnej do dowolnej innej waść umie? To niech waść zauważy, że unsigned char
(koniecznie unsigned
, przestrzegam przed "zwykłym" char
) to jest liczba 8-bitowa. Niech więc dalej waść tak, jak na kartce papieru, przekonwertuje tę liczbę w programie C do zapisu o podstawie 256
wykonać obliczenia na nich
Tak jak na kartce papieru się "pod kreską" dokonuje obliczeń, dodając, mnożąc, etc, liczby cyfra po cyfrze. Można oczywiście robić tak samo w zapisie o podstawie 256
. Tylko jak waść dodajesz czy mnożysz, to pamiętaj, żeby tymczasowo przekonwertować unsigned char
y do zwykłych int
ów, bo możesz poza zakres wyjść.