Java derslerimiz devam ediyor. Bu hafta dersten önce bir kaç örnek daha paylaşayım dedim. Bu uygulama da EBOB ve EKOK bulma konusunda bir uygulamadır.
Algoritmalarını anlatayım kısaca.
EBOB bulma algoritması;
Ebob bulurken kullanıcıdan aldığımız iki sayıdan hangisinin büyük hangisinin küçük olduğunu tespit ediyorum. Sonrasında for döngüsüne giriyorum şartlarım ise şu şekilde; sayacım büyük sayıdan küçük sayıya doğru geri geri saymaktadır. Bu sayım esnasında eğer büyük ve küçük sayılarımdan her ikisi aynı anda sayacıma bölünürse o sayı ebobtur. Aşağıda ki kodu inceleyince daha iyi anlayacaksınız.
EKOK bulma algoritması;
Aslında Ekok bulurken asal sayıları da bulmam gerekiyor. Ama bir programcı olarak optimum gereklilik ile sonuca gitmek mantıklıdır düşüncesi ile ekok hesaplarken a*b=Ebob*Ekok formülünden ekok değerini çekerek sonuçlandırdım. 🙂
Not: Bundan önceki java derslerinde Eclipse kullanmıştım. Bunda NetBeans kullandım. Çok fazla farklılıklar yok. Ama kodu direk kopyala yapıştır çalışmayabilir. Bundan sonraki uygulama hengi programla yazdığımı da belirteceğim.
Program: EBOB ve EKOK bulma
Dil: Java
Program: NetBeans
Kodlar:
package javaapplication1; /* @author http://blog.selcukoksuz.com */import java.util.Scanner;//Klavyeden değer almak için gerekli kütüphane public class Ebob_Ekok { public static void main(String[] args) { int a,b,i,max,min,Ebob=1,Ekok=1; Scanner Klavye = new Scanner(System.in);//Kalvyeden değer alan java nesnesi System.out.println("EBOB ve EKOK hesabı için iki değer giriniz."); System.out.print("İlk değeri giriniz = "); a = Klavye.nextInt(); System.out.print("İkinci değeri giriniz = "); b = Klavye.nextInt(); max = (a>b) ? a:b; min = (a>b) ? b:a; for(i=max;i>=min;i--) { if((min%i==0)&&(max%i==0)) { Ebob = Ebob * i; } Ekok = (a*b)/Ebob; } System.out.println("EBOB = "+Ebob+" EKOK = "+Ekok+"\nhttp://blog.selcukoksuz.com"); } }
Çalışmalarımız devam edecektir arkadaşlar. Kodlamalar ile alakalı sizlerinde yorumlarını beklerim. Düşüncelerinizi merak ediyorum. Çünkü sadece yayınlıyorum ve geri dönüşü göremiyorum. Belki yanlış yaptığım yerler var. Gördüğünüz eksiklikler varsa hemen aşağıda direk facebook ile yorum yazabilirsiniz.
Yorumunuz