Java'da bugün de diziler ile aklıma gelen birkaç soruyu ve çözümü sizinle paylaşacağım. İlk problem, Java'da bir dizinin (vektör) tüm elemanlarının değerini nasıl 1 artırabiliriz sorusu. Benzer şekilde aynı algoritma ile 1 azaltmak ya da belli bir değerle çarpmak/bölmek gibi işlemler de yapılabilir ama önemli olan dizi için bu algoritmayı nasıl kuracağımız. Senaryo şu şekilde olsun:
1. Kullanıcı kaç eleman saklayan dizi oluşturmak istediğini kendisi girsin
2. Java, kullanıcının istediği ölçüde tamsayılardan oluşan bir dizi oluştursun ve elemanlarını da random olarak üretsin. Bu noktaya kadar olan kodları kısmen Java'da rastgele elemanlardan oluşan bir dizi (vektör) üretmek örneğinden alabiliriz.
3. Dizi elemanlarının tümünü 1 artıran bir metod tanımlayalım ve bu metoda parametre olarak diziyi gönderdiğimizde bize dizinin tüm elemanlarını 1 artıran başka bir dizi döndürsün
4. Son olarak da önceki ve sonraki diziyi alt alta çıktı alarak karşılaştırmalarını yapalım
Kodlar:
import java.util.Arrays;
import java.util.Scanner;
public class test {
public static void main(String[] args) {
Scanner girdi=new Scanner(System.in);
System.out.println("Dizi kaç elemanlı olsun?");
int elemansayisi= girdi.nextInt();
int[] vektor=new int[elemansayisi];
for (int i = 0; i < vektor.length; i++)
{
vektor[i] = (int)(Math.random()*100);
}
System.out.println("Mevcut dizi:");
System.out.println(Arrays.toString(vektor));
System.out.println("Değeri 1 artırılmış dizi:");
System.out.println(Arrays.toString(diziDegeriArtir(vektor)));
}
public static int[] diziDegeriArtir(int[] dizi)
{
int[] yeniDizi=new int[dizi.length];
for (int i = 0; i < yeniDizi.length; i++)
{
yeniDizi[i] = dizi[i]+1;
}
return yeniDizi;
}
Çıktı:
Dizi kaç elemanlı olsun?
8
Mevcut dizi:
[5, 4, 92, 38, 91, 41, 17, 52]
Değeri 1 artırılmış dizi:
[6, 5, 93, 39, 92, 42, 18, 53