theme-sticky-logo-alt
theme-logo-alt

JAVA – İki Sayının En Büyük Ortak Böleni (GCD) ve En Küçük Ortak Katı (LCM)

Bu Java programı, iki verilen sayının en büyük ortak bölenini (GCD) ve en küçük ortak katını (LCM) asal çarpan yöntemini kullanarak bulur.

Program önce Scanner sınıfını kullanarak kullanıcıya iki tamsayı girmesi için istekte bulunur. Ardından, iki sayı arasındaki büyük olanı bulur ve ardından 2’den en büyük sayıya kadar olan sayılarda her bir sayının asal çarpanlarını bulur.

For döngüsü içinde, program mevcut sayının asal çarpanlarını bulurken, her iki sayının modunu i değişkeni ile kontrol eder. Eğer her ikisinin de modu 0 ise, bu durumda i asal çarpanlar dizisine eklenir ve iki sayı da i’ye bölünür. Aksi takdirde, sadece modu 0 olan sayı bölünür ve LCM değeri i’ye çarpılır, GCD değeri ise i’ye eklenir. Bu işlem tamamlanana kadar modları sıfır olan sayılar tekrar kontrol edilir ve işlem devam eder.

Program sonunda, GCD ve LCM değerleri ekrana yazdırılır.

package alttab_Sprint_1;

import java.util.Scanner;

public class GCD_LCM {

	public static void main(String[] args) {
		int greatNumber = 0;
		int gcd = 1;
		int lcm = 1;
		Scanner scan = new Scanner(System.in);
		System.out.println("Enter a number: ");
		int number1 = scan.nextInt();
		System.out.println("Enter another number: ");
		int number2 = scan.nextInt();

		if (number1 >= number2) {
			greatNumber = number1;
		} else {
			greatNumber = number2;
		}

		for (int i = 2; i <= greatNumber; i++) {
			int tempNumber1 = number1 % i;
			int tempNumber2 = number2 % i;

			while (tempNumber1 == 0 | tempNumber2 == 0) {
				if (tempNumber1 == 0 & tempNumber2 == 0) {
					number1 = number1 / i;
					number2 = number2 / i;
					lcm = lcm*i;
					gcd = gcd*i;
				}else if (tempNumber1 == 0 & tempNumber2 != 0) {
					number1 = number1 / i;
					lcm = lcm*i;
				}else if (tempNumber1 != 0 & tempNumber2 == 0) {
					number2 = number2 / i;
					lcm = lcm*i;
				}
				
				tempNumber1 = number1 % i;
				tempNumber2 = number2 % i;
			}

		}
		
		System.out.println("Greatest Common Divisor = " + gcd + "\nLeast Common Multiple = " + lcm);
	}

}

OUTPUT:

Enter a number: 
44
Enter another number: 
988
Greatest Common Divisor = 4
Least Common Multiple = 10868

Bu programı 44 ve 988 sayıları için çalıştırdığınızda, en büyük ortak bölenin 4 ve en küçük ortak katın 10868 olduğu sonucunu göreceksiniz.

Paylaş:
Kategori:Java
Etiket:,
Önceki Yazı
JAVA – Aile Yaş Kategorizasyonu
Sonraki Yazı
JAVA – Rastgele Sayılarla Dizi Oluşturma ve Elemanlarının Ortalamasını Hesaplama

0 Yorum

LEAVE A REPLY

15 49.0138 8.38624 1 1 4000 1 http://serkanturgay.com 300