Ahoj,
jestli jsem tě správně pochopil (což u mne nebývá moc běžné :) ) tak si nevíš rady s algoritmem:
Máš čísla A a B, nejprve si najdi největší společný dělitel (D), poté je mezi sebou vynásob a vyděl Dckem (A*B/D), dostaneš nejmenší společný násobek.
Největší společný dělitel se získává tím, že stále porovnáváš zadaná čísla a menší odčítáš od většího, ve chvíli kdy se rovnají dostaneš hledané číslo.
Takhle nějak by to mohlo vypadat v TurboPascalu:
Kód: Vybrat vše
function NSN (A,B:integer):integer
begin
NSN:= A*B/NSD(A,B);
end;
function NSD (A,B:integer):integer
begin
while (A<>B) do begin
if (A > B) then A:= A-B;
else if (B < A) then B:= B-A;
NSD:= A;
end;
syntaxi jsem už možná trochu pozapoměl, takže si to možná budeš muset poupravit, jinak to nepřeložíš :)
PS: diagramem neposloužím, neumím :-/