Merhaba arkadaşlar, java kursuna başladığım için pratik yapmaya çalışıyorum. Ama bir noktada takıldım.

Soru şu: Klavyeden girilen sayıdan küçük, tek ve çift dizi elemanların toplamlarını ve adetlerini ekrana yazdıran program.

Kodu aşağıdaki gibi yazdım. Aslında bir noktaya kadar doğru. Ama tekler için a[i] kısmını sıfırlamam gerekiyor sanırım

tekToplam = a[i] + tekToplam; şu kodun olduğu yerde galiba ama yapamadım. Yardımcı olabilecek bir arkadaş varsa sevinirim (Başka kod yazmanıza gerek yok bu kod üzerinde değişiklik yapabilirseniz sevinirim.)


class diziNdenKucukTekCiftAyri{
    public static void main (String args[]) throws Exception{
        int i, n, tekToplam, ciftToplam, size, tekAdet, ciftAdet;
        size = 10;
        tekAdet = 0;
        ciftAdet = 0;
        tekToplam = 0;
        ciftToplam = 0;

        System.out.println("n değerini giriniz.");

        n = Keyboard.readInt();

        int a[] = {8,2,43,14,7,1,29,35,3,44};

        for(i = 0; i < size; i = i + 1)
            if(n>a[i]){
                if(a[i]%2 == 0)
                    ciftAdet = ciftAdet + 1;
                    ciftToplam = a[i] + ciftToplam;
                if(a[i]%2 != 0)
                    tekAdet = tekAdet + 1;
                    tekToplam = a[i] + tekToplam;
                }

        System.out.println("Çift sayıların adedi: " + ciftAdet);
        System.out.println("Çift sayıların toplamı: " + ciftToplam);
        System.out.println("Tek sayıların adedi: " + tekAdet);
        System.out.println("Tek sayıların toplamı: " + tekToplam);

    }
}

Çıkan sonuç:

n değerini giriniz.
n = 30
Çift sayıların adedi: 3
Çift sayıların toplamı: 64
Tek sayıların adedi: 4
Tek sayıların toplamı: 64


Şu kodla çözdüm

class diziNdenKucukTekCiftAyri{
    public static void main (String args[]) throws Exception{
        int i, n, tekToplam, ciftToplam, size, tekAdet, ciftAdet;
        size = 10;
        tekAdet = 0;
        ciftAdet = 0;
        tekToplam = 0;
        ciftToplam = 0;

        System.out.println("n değerini giriniz.");

        n = Keyboard.readInt();

        int a[] = {8,2,43,14,7,1,29,35,3,44};

        for(i = 0; i < size; i = i + 1) {
            if(n>a[i]){
                if(a[i]%2 == 0){
                    ciftAdet = ciftAdet + 1;
                    ciftToplam = a[i] + ciftToplam;
                    }
                if(a[i]%2 != 0){
                    tekAdet = tekAdet + 1;
                    tekToplam = a[i] + tekToplam;
                    }
                }
        }

        System.out.println("Çift sayıların adedi: " + ciftAdet);
        System.out.println("Çift sayıların toplamı: " + ciftToplam);
        System.out.println("Tek sayıların adedi: " + tekAdet);
        System.out.println("Tek sayıların toplamı: " + tekToplam);

    }
}


Teşekkürler