[c++]Szukanie podzielników

0

Witam,
mam do napisania program, który będzie znajdował podzielniki dużej liczby całkowitej i w sumie nie wiem jak się za to zabrać bo jest pewien haczyk. Treść całego zadania:

Napisz program wyszukujący podzielniki odpowiednio dużej, zadanej liczby całkowitej. Liczba powinna być reprezentowana jako tablica cyfr.

Może macie jakiś pomysł jak za to się zabrać?
Będę wdzięczny za pomoc.

Pozdrawiam
Bazzket

0

o dzieleniu pisemnym słyszał ?? :> (takim z podstawówki)
jak tak to zamiast kratek w zeszycie masz elementy tablicy

0

Może chodzi o podzielność danej liczby pod warunkiem podzielność sumy jej cyfr ??

0
sopi napisał(a)

Może chodzi o podzielność danej liczby pod warunkiem podzielność sumy jej cyfr ??

racja, tak będzie prościej

0

Ale tak sprawdzimy tylko czy liczba dzieli się przez 3, o pozostałych \frac{\infty}{3} dalej nic nie będziemy wiedzieć.

0

Aż tak źle nie jest, wspomniane kryterium działa też dla 9, zatem zostaje tylko \frac{\infty}{3} - 1 przypadków.

0

:-)
Mozna sprawdzic najmlodsza cyfre pozostanie tylko \frac{\infty}{6}-1

0

Z tego co rozumiem to ma zrobić rozkład na czynniki pierwsze. Czyli:

  1. Napisać klasę obsługującą duże liczby za pomocą tablicy cyfr, w tym dzielenie z resztą odejmowanie i mnożenie (to jest potrzebne przy dzieleniu).
  2. znaleźć liczby pierwsze
  3. i sprawdzić przez jakie liczby pierwsze dana duża liczba się dzieli (i ile razy).

Coś mam wrażenie, że to nie jest problem dla studenta nie informatyki, a student informatyki powinien to zrobić sam bez problemu.
sam punkt 1 to dość dużo klepania, a szukanie liczb pierwszych na tyle dużych by był konieczny punkt 1 to naprawdę sporo czasu obliczeniowego.
Sam punkt 3 jest banalnie prosty.

0

Dzięki za odpowiedzi.
W sumie sam się zastanawiałem długo o co tak właściwie chodzi w tym zadaniu.
Generalnie to jest tylko wstęp do zadania bo głównie chodzi o to żeby ćwiczyć różne zrównoleglenia kodu (openMP, MPI, POSIX) Ale żeby nie było za łatwo to właśnie prowadzący powiedział że to ma być bardzo duża liczba (czyli ja to rozumiem że np. z poza zakresu int) którą trzeba zapisać w tablicy za pomocą cyfr a potem działając na tej tablicy wyznaczyć wszystkie jej dzielniki. A potem taki kodzik będę musiał zrównoleglić na kilka sposobów.
I uwierzcie mi jakbym wiedział jak to zrobić to bym nie prosił tu o pomoc.
Więc jeśli jest ktoś kto ma pomysł i chciałby pomóc to bardzo proszę pisać:)
Pozdrawiam
Bazzket

0

"Numerical recipes in C"
albo
http://gmplib.org/

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