• 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
579 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ź 482 wizyt
0 głosów
1 odpowiedź 324 wizyt
0 głosów
2 odpowiedzi 1,380 wizyt
pytanie zadane 19 kwietnia 2016 w C i C++ przez niezalogowany

93,740 zapytań

142,675 odpowiedzi

323,294 komentarzy

63,319 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.

...