Aybars Arslan

Console.WriteLine("Hello World");

Java Örnek Lab Program

Soru : Kullanıcının istediği sayı aralığında (0 – kullanıcı istediği) ve kullanıcının istediği adet kadar rastgele sayı üreterek, tekleri ve çiftleri ayrı satırda, ekrana küçükten büyüğe sıralayan bir java uygulaması yazınız ?

not : Kodu oldukça kısa sürede yazdım ve sadece çalışmasını önemsedim. boş vaktim de kodu düzelterek daha performanslı çalışan stabil bir kod ile soruyu cevaplandıracağım.

 

package arslan.aybars.com;

import java.util.Random;
import java.util.Scanner;

public class iki {
	public static void main(String[] args) {

		Scanner input = new Scanner(System.in);
		int sayiAralik, sayiAdet;
		System.out.println("0 kaç arası sayi uretilsin ?  ( 0 - ? )");
		sayiAralik = input.nextInt();

		int jTek = 0;
		int jCift = 0;

		Random r = new Random(); // random sınıfı

		System.out.println("Kaç adet sayi uretilsin ? ");
		sayiAdet = input.nextInt();

		int[] sayilar = new int[sayiAdet];
		int[] ciftSayilar = new int[100];
		int[] tekSayilar = new int[100];

		for (int i = 0; i < sayiAdet; i++) {
			sayilar[i] = r.nextInt(sayiAralik);
			// sayilarimiz
			System.out.print(sayilar[i] + "  ");

			if ((sayilar[i] % 2) == 0) {
				ciftSayilar[jCift] = sayilar[i];
				jCift++;
			}

			if (sayilar[i] % 2 == 1) {
				tekSayilar[jTek] = sayilar[i];
				jTek++;
			}
		}
		System.out.println("");
		System.out.print("Cift Sayilar : ");

		for (int i = 0; i < jCift; i++) {
			System.out.print(ciftSayilar[i] + "  ");
		}

		System.out.println("");
		System.out.print("Tek Sayilar : ");

		for (int i = 0; i < jTek; i++) {
			System.out.print(tekSayilar[i] + "  ");
		}

		int c, d, swap;

		// bubble sort
		for (c = 0; c < (sayiAdet - 1); c++) {
			for (d = 0; d < sayiAdet - c - 1; d++) {
				if (sayilar[d] > sayilar[d + 1]) /* For descending order use < */
				{
					swap = sayilar[d];
					sayilar[d] = sayilar[d + 1];
					sayilar[d + 1] = swap;
				}
			}
		}

		System.out.println(" ");
		System.out.println("Kucukten buyuge bubble sort ile siralanmis hali");

		for (c = 0; c < sayiAdet; c++) {
			System.out.print(sayilar[c] + " ");
		}

	}
}

Kodla Kalın!

Paylaş !

,

Bir Cevap Yazın

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