algorytm.org

Implementacja w Ruby



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Najmniejsza wspólna wielokrotność - Implementacja w Ruby
Ocena użytkownikóww: *****  / 0
SłabyŚwietny
Nadesłany przez Nikodem Solarz, 19 października 2013 21:11
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.

nww.rb:
#======================================================
#**Implementacja algorytmu Euklidesa
#**wraz z najmniejszą wspólną wielokrotnością
#**Narzew
#**19.10.2013
#**dla portalu algorytm.org
#======================================================

#======================================================
#**oblicz_nwd(a,b,p)
#**Największy wspólny dzielnik
#**a => liczba A
#**b => liczba B
#**c => czy wyświetlać obliczenia ? 0 - nie, 1 - tak
#======================================================

def oblicz_nwd(a,b,p=0)
	if a == b
		print "Wynik: #{a}\n" if p == 1
	end
	count = 0
	while (a != b)
		count += 1
		if a < b
			b = b-a
			print "\##{count}\nA < B\nA: #{a}\nB: #{b}\n" if p == 1
		else
			a = a - b
			print "\##{count}\nA > B\nA: #{a}\nB: #{b}\n" if p == 1
		end
	end
	print "NWD: #{a}\n" if p == 1
	return a
end

#======================================================
#**oblicz_nww(a,b,p)
#**Najmniejsza wspólna wielokrotność
#**a => liczba A
#**b => liczba B
#**c => czy wyświetlać obliczenia ? 0 - nie, 1 - tak
#======================================================

def oblicz_nww(a,b,p=0)
	x = (a*b)/oblicz_nwd(a,b,p)
	print "NWW: #{x}\n" if p == 1
	return x
end
Dodaj komentarz