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

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:

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:

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:

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 =

Örnek  2:

input = 9

output =

Kod:

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:

 

 

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..

Taha Kırca

iOS & Android & Apple Watch Developer, Mobilhanem.com yazarı, Karadeniz Uşağu, Ordu Sevdalısı, Anti Fenerbahçeli, Koyu Galatasaraylı

19 Yorum

  • Öncelikle çok güzel bir örnekti teşekkürler Taha hocam. Benim örneğim doğru olmuş mu?

    Scanner s = new Scanner(System.in);
    System.out.print(“Bir Sayı Girin: “);
    int sayi = s.nextInt();
    for(int i = 0;i<=sayi-1;i++) {
    for(int j = 0;j<=sayi*2-1;j++) {
    if(sayi-i=j) System.out.print(“*”);
    else System.out.print(” “);
    }
    System.out.println(“”);
    }

    https://uploads.disquscdn.com/images/f63d28cb2cec2b38d58ec6ea373c66f9b3f5f0091d9313cc4518e16f629552be.png

  • int a;
    Scanner inputNum = new Scanner(System.in);
    System.out.println(“Lütfen bir sayı giriniz”);
    a = inputNum.nextInt();
    int c = 2*a-1;
    int b = c/2;
    for (int i = 1; i <= a; i++) {

    for (int j = 1; j<=c;j++){

    if (jc-b){
    System.out.print(” “);
    }
    else{
    System.out.print(“*”);
    }
    }
    System.out.println(” “);
    b–;
    }

  • Merhaba hocam,

    Palindromik kelime kodlarında for döngüsünde bir sıkıntı olabilir mi acaba? Orta kısımı “i < length" yapınca doğru bir şekilde çalışsa da, kaçırdığım bir nokta mı var diye merak ettim. Emeğinize sağlık, iyi çalışmalar.

      • Selamlar,
        örnekte bazı karakterler hatalı çıkmış, arkadaşımız bundan bahsetmiş sanırım.
        ******** for ( int i = 0 ; i <= length-1 ; i++ ){ ******** olan satır.

  • Asal sayı örneğinde bir hata var sanırım. for döngüsünün içinde bölünüp bölünmediği kontrolü yapılmıyor.

    • Uyarın için teşekkür ederim. Burda kod yapıştırmak için kullandığımız bir eklenti var. O eklenti bazen yazdığımız özel karakterlerde sıkıntı yaratıp o satırı hiç göstermiyor ve ya karakteri bozuk gösteriyor. Bende farkına varmamışım cevabı güncelledim.

      Tekrardan teşekkürler.

  • int i,j,n;
    Scanner input = new Scanner(System.in);
    System.out.print(“Bir sayı giriniz: “);
    n = input.nextInt();
    for (i=1; i<=n; i++){ //Satırlar
    for(j=1;j<=(n-i);j++){
    System.out.print(" "); //ilk boşluklar
    }
    for(j=1;j<=(2*i-1);j++){ //yıldızlar
    System.out.print("*");
    }
    for(j=1;j<=(n-i);j++){ //son boşluklar
    System.out.print(" ");
    }
    System.out.println();
    }

  • // JAVA da yeniyim algoritma kendime aitdir istisna kelimeler olabilir ama şimdilik işe yarıyor 😀

    import java.util.Scanner;
    public class first {

    static Scanner scan;
    static String kelime,terskelime;
    static char[] harfler;
    static char[] tersharf;
    static int a = 1,y;

    public static void main(String[] args) {

    scan = new Scanner(System.in);
    System.out.println(“Kelime Gir => “);
    kelime=scan.nextLine();

    harfler=kelime.toCharArray(); // bu satırda harfler dizisine girilen kelimeyi char dizisi olarak atıyorum.

    tersharf=new char[harfler.length]; //bu satır da tersharf dizisinin eleman sayısını belirliyoruz not: bu satır olmadan hata veriyor 🙂

    for(int i = 0; i<harfler.length; i++) {
    //bu for döngüsünde tersharflerin 0. indexinden başlayarak, harflerin son indexisini eksilterek girilen harflerin //indexlerini değiştirip atıyorum.
    tersharf[i]=harfler[harfler.length-a];
    a++;
    }

    terskelime=String.valueOf(tersharf); //burada char disizini ekrana basabilmek için tekrar stringe çeviriyorum

    a=0;
    for(y =0;y”+terskelime);
    System.out.println(“Kelime =>”+kelime);
    System.out.println(“Aynı “);
    }
    else {
    System.out.println(“Ters Kelime =>”+terskelime);
    System.out.println(“Kelime =>”+kelime);
    System.out.println(“Farklı “);
    }
    }
    }

  • import java.util.Random;

    public class algoritma {

    static String random;
    static int top=0;
    static Random rnd;
    static String[] dizi = new String[4];
    public static void main(String[] args) {
    rnd = new Random();
    random=String.valueOf(rnd.nextInt(1000));
    System.out.println(random);
    for(int i=0; i<random.length();i++) {
    dizi[i]=random.substring(i,i+1);
    top=top+ Integer.parseInt(dizi[i]);
    }
    System.out.println(top);
    }
    }

  • Palindromik kelimeli örneği böylede yapabilirsiniz daha kısa bir yöntem ama biraz karışık olabilir

    import java.util.Scanner;
    public class kelimeyi_tersiyle_kiyaslama {
    public static void main(String[] args) {
    String kelime=””;
    int sayac=0;
    Scanner girilen=new Scanner(System.in);
    System.out.println(“Lütfen Sınanacak Kelimeyi Giriniz= “);
    kelime=girilen.nextLine();
    for(int i=0;i<=(kelime.length()/2);i++)
    {
    if(kelime.charAt(i)==kelime.charAt((kelime.length()-(i+1))))
    {
    sayac++;
    }
    }
    if(sayac-1==(kelime.length()/2))
    {
    System.out.println("Kelimenin Tersten Yazılışı Düz Yazılışına Eşittir");
    }
    if(sayac-1!=(kelime.length()/2))
    {
    System.out.println("Kelimenin Tersten Yazılışı Düz Yazılışına Eşit Değildir");
    }
    }
    }

  • import java.util.Scanner;

    public class Test {

    public static void main(String[] args) {
    Scanner scn=new Scanner(System.in);
    int sayi=scn.nextInt();
    int k=0;
    for(int i=sayi; i>0; i–){
    for (int j=i-1; j>0; j–){
    System.out.print(” “);
    }
    for(int j=0; j<=k; j++){
    System.out.print("*");
    }
    k=k+2;
    System.out.println();
    }

    }
    }

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?