Pomoc Delphi 7 Program do obliczeń liczbowych


(Atw93) #1

Witam. Potrzebuję pomocy w napisaniu programu do obliczeń liczbowych w Delphi 7.

Miałby wyznaczać on liczny pierwsze danego przedziału [A,B], sprawdzać czy dwie liczby są względnie pierwsze, wyznaczać NWD i NWW dwóch liczb oraz wyznaczać trójki pitagorejskie przy znajomości jednej z tych trzech liczb.

Myślę, że jak ktoś się tym zajmuje na co dzień, ma trochę doświadczenia lub po prostu to lubi to nie powinno mu to zająć więcej niż 10 minut (tak mi się wydaję). Ja z programowania miałem raptem kilka lekcji (powiedzmy 8h) co myślę, że jest stanowczo za mało, żeby samodzielnie zrobić taki program. Dlatego liczę na waszą pomoc lub o jakieś podpowiedzi konkretnie co bym musiał zrobić.

Z góry dziękuję.

Pozdrawiam

lolu1133


(Chok) #2

Faktycznie zadanie trudne nie jest. Niemniej rozumiem że znając regulamin tego forum i (pkt 2.16.) nie oczekujesz że ktoś zrobi to zadanie za Ciebie, nawet w Mikołajki :wink:

Co do pomocy, to proponuje zrobić to w następujący sposób:

  • Liczby pierwsze: robisz dwie pętle jedna dla zadanego przedziały liczb, druga od 2 do wartości z pierwszej pętli. W pętlach sprawdzasz czy pierwsza wartość po podzieleniu przez druga daje liczbę całkowitą. Jak przejdziesz całą druga pętle i ani razu nie znajdziesz liczby całkowitej masz liczbę pierwszą w postaci wartości licznika z pierwszej pętli. W celu optymalizacji czasu wykonywania można jeszcze druga pętelkę skrócić o połowę, ale to już zostawmy.

  • Czy dwie liczby są pierwsze - algorytm jak wyżej tylko już bez pierwszej pętli, lub po prostu sprawdzasz czy w wynikach z zadania pierwszego masz zadane liczby.

  • NWD i NWW - tu jest tak dużo algorytmów już opisanych, że nawet nie będę opisywał

  • trójki pitagorejskie to masz prosty wzór c = pierwiastek z (A kwadrat + B kwadrat) :), chyba ze chodzi o coś innego bo nie bardzo wiem o co chodzi z "przy znajomości jednej z tych trzech liczb. " Jakich trzech liczb?

Poza tym to jak poświęcisz 15 minut na szukanie w google to znajdziesz wszystkie te algorytmy już gotowe.

A co do tego czy 8h to wystarczy czy nie, to się rozpisywał nie będę, bo dla niektórych będzie to aż za dużo czasu a dla inni nawet po 80h sobie nie poradzą :slight_smile: