Site icon Mobilhanem

Temel Java Dersleri – Java Algoritma Örnekleri 1 (Alıştırmalar)

Anotasyon

Java Dersleri

Merhaba Arkadaşlar,
Mobilhanem.com sitemiz üzerinden anlattığımız/yayınladığımız Temel Java Dersleri yazı serimize bu dersimizde bugüne kadar öğrendiğimiz konulardan genel Java Algoritma Alıştırmalar’ı ve Örnek kodlar ile devam edeceğiz.

Temel Java Derslerimiz’de bu dersimize kadar Java veri tipleri, if – else if koşulu, switch yapısı, while ve for döngüsü ve bir çok farklı konudan bahsettik. Bundan sonra yazı dizimize son sürat devam edeceğiz inşallah. Ara ara bu tarz alıştırmalar ekleyip öğrendiklerimizi pekiştiriyor olacağız.

Konuyu fazla uzatmadan örneklere geçelim :

Not:
Paylaştığımız her çözümün alternatifleri olabilir. Sizlerde konu altından yorumlarınızı bırakabilirsiniz.

Alıştırma 1

Terstende aynı okunan kelimelere palindromik kelime denilmektedir. Konsoldan girilen bir kelime veya cümlenin polindromik olup olmadığını veren java algoritma kodunu yazınız ?
Not: StringBuilder kullanmadan ,bugüne kadar öğrendiklerimiz ile yapmaya çalışalım.

Örnek  1:

input = Mobilhanem

output = Polindromik kelime değil.

Örnek  2:

input = madam

output = Polindromik kelime

Kod:

import java.util.Scanner;

public class Palindromik {
    public static void main(String args[])
    {
        String inputSting, reverseString = "";
        Scanner in = new Scanner(System.in);

        System.out.println("Kelime giriniz");
        inputSting = in.nextLine();

        int length = inputSting.length();

        for ( int i = 0 ; i <= length-1 ; i++ ){
            reverseString += inputSting.charAt(length-1-i); //Stringin tüm char'larını tersten alıp yeni stringe ekliyoruz..
        }

        if(inputSting.equals(reverseString)){
            System.out.println("Palindromik Kelime");
        }else{
            System.out.println("Palindromik Kelime değil");
        }

        //System.out.println(inputSting.equals(reverseString) ? "Palindromik Kelime": "Palindromik Kelime Değil"); //Tek satır if

    }
}

Alıştırma 2

0 ile 1000 arasında random bir sayı oluşturarak bu sayının rakamları toplamını veren java algoritma kodunu yazınız ?

Örnek  1:

output =

random sayi 185

toplamları = 14

Örnek  2:

output =

random sayi 85

toplamları = 13

Kod:

public class Toplam{
    public static void main(String args[])
    {
        int randomSayi = (int)(Math.random()*(1000)); //0 ile 1000 arasında sayı
        System.out.println("random sayi " + randomSayi); //üretilen sayıyı konsola bastırdık

        int birler = randomSayi %10; //birler basamağı

        randomSayi = randomSayi /10; 
        int onlar = randomSayi %10;   //onlar basamağı
        
        int yuzler = randomSayi /10;  //yüzler basamağı

        System.out.println("Toplamları ="+(birler+onlar+yuzler));


    }
}

Alıştırma 3

Konsoldan kullanıcının girdiği integer değer kadar alt alta yıldız üçgen yapan java algoritma kodunu yazınız ?

Örnek  1:

input = 3

output =

*
**
***

Örnek  2:

input = 5

output =

*
**
***
*****
******

Kod:

import java.util.Scanner;

public class YildizUcgen {
    public static void main(String args[])
    {
        System.out.println("Alt alta kaç sıra olsun ? ");
        Scanner inp = new Scanner(System.in);
        int sira = inp.nextInt();
        
        for (int i=1; i<=sira; i ++)
        {
            for (int j=0; j<i; j++)
            {
                System.out.print("*");
            }
            System.out.println("");
        }



    }
}

Alıştırma 4

Konsoldan girilen sayıyı 1 e kadar yazdırıp,aynı satırda tekrardan verilen sayıya kadar yazdıran ve alt alt 1’er azaltıp aynı işlemi üçgen gibi devam ettiren java algoritma kodunu yazınız.

Örnek  1:

input = 3

output =

3 2 1 2 3
2 1 2
1

Örnek  2:

input = 9

output =

9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9
8 7 6 5 4 3 2 1 2 3 4 5 6 7 8
7 6 5 4 3 2 1 2 3 4 5 6 7
6 5 4 3 2 1 2 3 4 5 6
5 4 3 2 1 2 3 4 5
4 3 2 1 2 3 4
3 2 1 2 3
2 1 2
1

Kod:

import java.util.Scanner;

public class UcgenSayilar {
    public static void main(String args[])
    {
        System.out.println("Sayı giriniz? ");
        Scanner inp = new Scanner(System.in);
        int sira = inp.nextInt();

        for (int i = sira; i>=1; i--)
        {
            for (int j=i; j>=1; j--)
            {
                System.out.print(j+" ");
            }
            for (int k=2; k<=i; k++)
            {
                System.out.print(k+" ");
            }
            System.out.println("");
        }
    }
}

Alıştırma 5

ilk 50 asal sayıyı 10’ar 10’ar alt alta gösterecek java algoritma kodunu yazınız.

Örnek  1:

output =

2 3 5 7 11 13 17 19 23 29
31 37 41 43 47 53 59 61 67 71
73 79 83 89 97 101 103 107 109 113
127 131 137 139 149 151 157 163 167 173
179 181 191 193 197 199 211 223 227 229

Kod:

public class AsalSayi {
    public static void main(String args[])
    {
        int count = 0; 
        int num =2;//asal sayılar 2 den başlar
        while(count<50){ //ilk 50 

            boolean isPrime = true;
            for(int i = 2;i<num;i++){ //herhangi bir sayıya bölünebiliyor mu
               if (num % i == 0){ //Bölünebiliyorsa asal değildir
                  isPrime =false; 
               }
            }

            if(isPrime){
                count++;
                if(count%10==0){ //10 tane yazdırıldıysa alt satıra geç
                    System.out.println(num);
                }else{
                    System.out.print(num+" ");
                }
            }
            num++;
        }
    }
}

 

 

Alıştırma 6

Konsoldan girilen sayı kadar alt alta yıldız koyarak üçgen çizdirme java algoritma kodunu yazınız.
Örnek  1:

input = 5

output =

     *  
    ***
   *****
  *******
 *********

Örnek  2:

input = 8

output =

                       *  
                      ***
                     *****
                    *******
                   *********
                  ***********
                 *************
                ***************

 

Kod:

Bu kodu yazıp yorum olarak paylaşınız.

Arkadaşlar bundan sonraki derslerimizin peşinden bu tarz Java Algoritma örnekleri paylaşarak bildiklerimizi ve öğrendiklerimizi pekiştireceğiz.

Bir sonraki Temel Java Dersimize metot kullanımı ile devam edeceğiz. Konuyla ilgili yorumlarınızı konu altından yapabilirsiniz, ayrıca sorularınızı Mobilhanem Soru&Cevap bölümünden sorabilirsiniz.

Tüm Temel Java Dersleri için tıklayınız..

105
Exit mobile version