Ocena użytkownikóww: ***** / 0
Nadesłany przez Michał Witaszek, 11 lipca 2013 10:10
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.
automorficzne.pas:
{
LCZBY AUTOMORFICZNE
Michał Witaszek
dla algorytm.org
}
//Program sprawdza czy podana liczba o podstawie dziesiętnej jest automorficzna
Program automorficzne;
uses CRT;
var //zmienne
n, //liczba
m, //podstawa liczby
a,b //zmienne pomocnicze
:integer; // zmienne całkowite
Begin
m:=10; //ustalamy podstawę 10 - dziesiętny system liczb
WriteLn('LICZBY AUTOMORFICZNE');
Write('Podaj liczbe calkowita: ');
ReadLn(n); //pobieramy liczbę
b:=m;
while n>b //dopóki b jest większe od badanej liczby
do b:=b*m; //przemnóż b przez podstawę liczby
a := (n*n) mod b; //przypisz do a wartość (n^2) mod b
if a=n
// jeśli reszta z dzielenia (n^2) / b jest równa n, to badana liczba n jest automorficzna
then WriteLn('Liczba ',n,' jest automorficzna')
else WriteLn('Liczba ',n,' nie jest automorficzna');
ReadLn;
End.