MODULÁRNÍ LINEÁRNÍ ROVNICE

PROBLÉM
Určit řešení rovnice

MOD(A*X,N)=MOD(B,N)

IMPLEMENTACE
Jednotka: program
 
Parametry: celá čísla A, B, přirozené číslo N
 
Výstup: vypíše na obrazovku všechna řešení rovnice
MOD(A*X,N)=MOD(B,N)
 
Vazby: funkce EXEUCLID a MOD
 

/* Řešení modulární lineární rovnice */
parse arg A B N
parse value EXEUCLID(A, N) with D X Y
if MOD(B, D) = 0
  then do
    X = MOD(X * (B / D), N)
    do I = 0 to D - 1
      say MOD(X + I * (N / D), N)
    end
  end
  else say "Řešení neexistuje"
exit

 

SOUVISLOSTI

Literatura
Cormen T. H., Leiserson Ch. E., Rivest R. L. Introduction to Algorithms
The MIT Press, Cambridge, 1990


Obálka Obsah Index Hlavní stránka

změněno 30. července 2001
Copyright © 2000-2001 Vladimír Zábrodský, RNDr.