Verification: 6ab19e626810e10c Java Sekizlik Sayıyı Ondalık ve İkilik Tabanına Dönüştürme - Hikmet İSKİFOĞLU

Java Sekizlik Sayıyı Ondalık ve İkilik Tabanına Dönüştürme

Java Sekizlik Sayıyı Ondalık ve İkilik Tabanına Dönüştürme

82 Views

Bu yazımızda sizlerle muhtemel bir java sınavı sorusu çözücez. Bu pratikle hem javada kendimizi pekiştirmiş olucaz hem sınava girecek arkadaşlar için de bir antrenman olacak.

Pekiştireceğimiz konular ;

  • math kütüphanesi
  • dizi
  • mod alma

Sorumuz:

Kullanıcıdan 8 tabanında en fazla 8 basamaklı bir sayı alınacak
Bu sayıyı önce 10 luğa sonra 2 lik tabanına çeviren programı yazınız.

package benzinpompa;
import java.util.Scanner;
import java.math.*;
public class main {

static void sayiGir() {
	System.out.println("Sayi giriniz.");
	int sayi;
	Scanner s=new Scanner(System.in);
	sayi=s.nextInt();
	islemyap(sayi);
}
	public static void main(String[] args) {
	sayiGir(); 
	}
	static void islemyap(int sayi2) {
		int sayi=sayi2;
		int ondalik=0,i=0; 
		do {
			if(sayi%10>=8)  {
				sayiGir();
			}
			else
			{
				ondalik+=sayi%10*(Math.pow(8, i));
				sayi/=10;
			}
			i++;
		}
		while(sayi>0);
		System.out.println(ondalik);
		int sayac=0;
		int [] dizi = new int [10];
		do {
			dizi[sayac]=ondalik%2;
			sayac++;
			ondalik/=2;
		}
		while(ondalik>0);
		for(int a=0; a<sayac; a++) {
			System.out.print(dizi[a]);
		}
		}
	}
  • Kullanıcıdan sayı alınıyor.
  • Sayı 0’a düşene kadar döngüde kalıyoruz
  • Bu döngü içerisinde hem sayinin son rakamının 8 den büyük olup olmadığını kontrol ediyoruz hem de mod 10 un i. üstünü alarak aldığımız rakamın 10 dalık sistemdeki değerini elde ediyoruz. Bunu da ondalık adlı değişkenimize atıyoruz.
  • Bu döngü içerisinde ilk girilen sayının formatı istenilen formatta olmadığı anlaşılırsa, tekrar bir sayı girdirilip işlenen değişkenlerin değerleri sıfırlanıyor.
  • 10 dalıklı sayıya çevirme işlemi bittikten sonra bir int dizisi açıp 10 dalık sayımızı sürekli mod2 alarak 2 lik tabanına çevirmiş oluyoruz.
  • Son döngümüz ilede dizimizi ekrana bastırıyoruz.

Önerilen Yazı :  Fonksiyonlar konu anlatımı cpp

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir