Merhabalar. Bugünkü sorumuz algoritma bilgilerimizi tazeleyecek bir konuyla ilgili. Karışık bir algoritması var bana göre fakat anlayınca, sürekli buna benzer sorular çözmekten kendinizi alamayacaksınız 🙂
Klavyeden bir sayı gireceğiz ve o sayı sayesinde “*” işaretiyle bir üçgen oluşturmuş olacağız.
Örneğin; klavyeden 15 sayısını girdiğimizde çıktımız şöyle olacak:
Kodlarımızı yazmaya başlamadan önce algoritmanın mantığını çözmeye çalışalım. Fark ettiyseniz * sayımız belli bir kurala göre dizilmiş.
1 – 3 – 5 – 7 – 9 gibi. Yani koda dönüştürmek isteseydik bunun kuralı 2*i+1 şeklinde olacaktı.
Diğer bir kural ise boşluklar. Boşluklar da bir kurala göre oluşmuş oluyor bu durumda.
10 – 9 – 8 – 7 – 6 gibi. Boşlukları da for döngüsü ile koda dönüştüreceğiz. Algoritma mantığını anladığımıza göre sorumuzu çözmeye başlayalım.
Java Kodlarımız:
package uygulamalar; import java.util.Scanner; public class üçgenoluşturma { public static void main(String[] args) { // TODO Auto-generated method stub Scanner klavye=new Scanner( System.in); System.out.println("Bir Sayı Giriniz :"); int n=klavye.nextInt(); for(int i=0;i<=n-1;i++){ for(int j=0;j<=(n-i);j++){ System.out.print(" "); } for(int k=1;k<=(2*i+1);k++){ System.out.print("*"); } System.out.println(" "); } } }
-
- İlk adımımızda Scanner komutu ile klavyeden veri girişini sağlamış oluyoruz.
Scanner klavye=new Scanner( System.in);
System.out.println(“Bir Sayı Giriniz :”);
int n=klavye. nextInt();
-
- Boşluklar için iç içe 2 for döngüsünü açıyoruz.
for(int i=0;i<=n-1; i++){
for(int j=0;j<=n-i; j++){
System.out.print(” “);
- For döngümüz boşlukların hangi satırda olacağını belirlerken, 2.for döngümüz boşlukların satırdaki sıralarını belirliyor. Bunu bir dizi gibi düşünürsek dizi[i][j]= ” ” olarak atıyor. Yani bu adımımızda sol kısımdaki boşluğu oluşturmuş olduk.
- İkinci adımımızda * işaretlerinin hangi yerlerde olması gerektiğini kodlayacağız. Buradaki kuralımızı 2*i+1 şeklinde belirlemiştik. Buna göre;
for(int k=1;k<=(2i+1);k++){
System.out.print(““);
Bu şekilde kodlamamızı tamamlamış olduk. Programımızı çalıştırdığımızda çeşitli çıktılar elde edebiliyoruz.
Üçgen oluşturma algoritmasını ve Java kodlarını bu şekilde öğrenmiş olduk. Bir sonraki yazımızda görüşmek üzere, iyi çalışmalar 🙂
Leave a Reply