• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Własny typ danych

–2 głosów
548 wizyt
pytanie zadane 5 stycznia 2017 w C i C++ przez majmucha Nowicjusz (120 p.)
otagowane ponownie 5 stycznia 2017 przez majmucha

Witajcie,

jest jakiś prostszy sposób na stworzenie własnego typu danych niż tworzenie własnej arytmetyki (http://main.edu.pl/pl/user.phtml?op=lesson&n=32), a jeżeli jest podlinkujecie do możliwie najlepszego wytłumaczenia jego działania?

Mianowicie jest mi potrzebny do zadania typ danych, przechowujący liczby całkowite w zakresie 10^23( dziesięć do potęgi dwudziestej-trzeciej ), liczby będą tylko dodatnie lecz gdy korzystam z unsigned long long inta przy testach na liczbach z maksymalnych przedziałów przekracza zakres i zwraca zły wynik.

Uprzedzając : wink

Zadanie jest z konkursu więc zależy mi na zrobieniu go do końca i zrozumieniu sposobu napisania typu danych i nie jest to wina algorytmu liczącego.

2 odpowiedzi

+2 głosów
odpowiedź 5 stycznia 2017 przez Avernis Nałogowiec (27,400 p.)
Stwórz sobie po prostu klasę i zrób od cholery przeciążeń operatorów. W klasie masz 1 zmienną int która jest podzielona przez x, i jak się wykonuje operator "=" z użyciem tej klasy, to zwraca on tą liczbę pomnożoną przez x. To jeden z prostszych, ale dłuższych sposobów
komentarz 8 stycznia 2017 przez majmucha Nowicjusz (120 p.)
Dzięki wielkie udało się:)
+1 głos
odpowiedź 5 stycznia 2017 przez playerony Pasjonat (15,200 p.)
No zadanie jest prostrze niż Ci sie wydaje, wystarczy zrobić klase w której będzie jakieś wektor, on Ci przechowa każdy znak cyfry którą chcesz + jescze przeciążenie dodawania i znaku równości. O ile dodawałeś kiedyś duże liczby bez uzycia kalkulatora to będziesz wiedział na jakiej zasadzie dodawać kolejne liczby tablicy. Liczbe odczytuj jako string, inaczej nie ma szans jej wczytać, chyba że znak po znaku do wektora.

Podobne pytania

0 głosów
1 odpowiedź 461 wizyt
0 głosów
1 odpowiedź 294 wizyt
0 głosów
2 odpowiedzi 1,267 wizyt
pytanie zadane 19 kwietnia 2016 w C i C++ przez niezalogowany

93,691 zapytań

142,610 odpowiedzi

323,215 komentarzy

63,216 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...