Java kodlama -*/YARDIM\*-

metinzeki

Zombi Katili
En iyi cevaplar
0
Kod:
import java.util.Scanner;
public class Deneme_1 {
    public static void main (String[] args){
       
    Scanner qx = new Scanner (System.in);
    System.out.println("İşlemler:");
    System.out.println("1) TOPLAMA");
    System.out.println("2) ÇIKARMA");
    System.out.println("3) ÇARPMA");
    System.out.println("4) Bölme");
    System.out.println("5) Çemberin çevresini bulma");
    System.out.println("6) Karesini alma");
    System.out.println("7) Karekök");
    System.out.println("8) Yüzde alma");
    System.out.println("9) Faktöriyel");
        int i = qx.nextInt();
       
        if (i == 1){
            System.out.println("İlk sayiyi giriniz");
            double i2 = qx.nextDouble();
            System.out.println("İkinci sayiyi giriniz");
            double i3 = qx.nextDouble();
            System.out.println("İŞLEM SONUCU:");
            System.out.println(i2 + i3);
        }
       
        if (i == 2){
            System.out.println("İlk sayiyi giriniz");
            double i2 = qx.nextDouble();
            System.out.println("İkinci sayiyi giriniz");
            double i3 = qx.nextDouble();
            System.out.println("İŞLEM SONUCU:");
            System.out.println(i2 - i3);
        }
       
       
        if (i == 3){
            System.out.println("İlk sayiyi giriniz");
            double i2 = qx.nextDouble();
            System.out.println("İkinci sayiyi giriniz");
            double i3 = qx.nextDouble();
            System.out.println("İŞLEM SONUCU:");
            System.out.println(i2 * i3);
       
        }
       
       
        if (i == 4){
            System.out.println("İlk sayiyi giriniz");
            double i2 = qx.nextDouble();
            System.out.println("İkinci sayiyi giriniz");
            double i3 = qx.nextDouble();
            System.out.println("İŞLEM SONUCU:");
            System.out.println(i2 / i3);
        }
       
       
        if (i == 5){
            System.out.println("yari capi giriniz");
            double i2 = qx.nextDouble();
            double i4 = 3.14;
           
            System.out.println("İŞLEM SONUCU:");
            System.out.println(i2*2*i4);   
        }
       
        if (i == 6){
            System.out.println("Sayiyi giriniz");
            double i2 = qx.nextDouble();
           
            System.out.println("İŞLEM SONUCU:");
            System.out.println(i2*=i2);
           
   
        }
       
       
       
        if (i == 7){
            System.out.println("Bir sayı giriniz");
            double qi = qx.nextDouble();
            double kok = 10;
            double temp = qi / kok ;
           
            double kök = (temp + kok) / 2;
           
            double q = qi / kök;
            double w = (kök + q) / 2;
           
            double e = qi / w;
            double r = (w + e) / 2;
           
           
            double t = qi / r;
            double y = (r + t) / 2;
           
           
            double u = qi / y;
            double ı = (u + y) / 2;
           
           
            double o = qi / ı;
            double p = (ı + o) / 2;
           
            double ğ = qi / p;
            double ü = (p + ğ) /2;
           
            double a = qi / ü;
            double s = (ü + a) /2;
           
            double d = qi / s;
            double f = (s + d) /2;
           
            double g = qi / f;
            double h = (f+g) /2;
           
            double j = qi/h;
            double k = (h+j)/2;
           
            double l = qi/k;
            double ş = (k+l)/2;
           
           
            double x = qi/ş;
            double c = (ş+x)/2;
           
            double v = qi/c;
            double b = (c+v)/2;
           
            double n = qi/b;
            double m = (b+n)/2;
           
            System.out.println("İşlem sonucu = ["+ m +"]");
           
           
           
           
           
        }
       
        if (i == 8){
           
            System.out.println("Yüzdesini alacağınız sayıyı yazın");
            double qi = qx.nextDouble();
            System.out.println("Yüzdeyi yazın");
            double qz = qx.nextDouble();
            System.out.println("İşlem sonucu = ["+ (qi*qz)/100 +"]");
           
           
        }
       
        if (i == 9){
           
            System.out.println("Sayıyı giriniz");
            int qi = qx.nextInt();
            if (qi == 1){
                System.out.println("Sonuç ="+ qi +"");
            }
            int qw = qi - 1;
            if (qw == 1){
                System.out.println("Sonuç ="+ qi*qw +"");
            }
            int qe = qw - 1;
            if (qe == 1){
                System.out.println("Sonuç ="+ qi*qw*qe +"");
            }
            int qr = qe - 1;
            if (qr == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr +"");
            }
            int qt = qr - 1;
            if (qt == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr*qt +"");
            }
            int qy = qt - 1;
            if (qy == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr*qt*qy +"");
            }
            int qu = qy - 1;
            if (qu == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr*qt*qy*qu +"");
            }
            int qı = qu - 1;
            if (qı == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr*qt*qy*qu*qı +"");
            }
            int qo = qı - 1;
            if (qo == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr*qt*qy*qu*qı*qo +"");
            }
            int qp = qo - 1;
            if (qp == 1){
                System.out.println("Sonuç ="+ qi*qw*qe*qr*qt*qy*qu*qı*qo*qp +"");
           
           
           
        }
                }

}
}

Basit bir hesap makinesi yapmaya çalıştım. Normalde karekök almanın kısa yolu da var. Fakat ben formülle yaptım. Aynı zamanda faktöriyel eklemeye çalıştım. Faktöriyel de negatif değerler içinde yapacağım. Fakat sadece 10! a kadar yapabildim. Çünkü daha when & while komutlarını çok iyi öğrenemedim. Hatalı bulduğunuz yerleri. eksik yerleri yazarsanız sevinirim.
 

metinzeki

Zombi Katili
En iyi cevaplar
0
4 işlemden herhangi birini 3 satırda da toplayabilirdim. fakat uzun olması hoşuma gidiyor. Teselli niteliğinde.
Kod:
double i2 = qx.nextDouble();
double i3 = qx.nextDouble();
System.out.println(i2 + i3);
Karekök için Math.sqrc gibi bir şey vardı heralde. Oda kısaltılabiliyor
 

Vienicome

Hayalet Avcısı
En iyi cevaplar
0
O faktoriyel çok vasıfsız onun yerine söyle bir şey yapabilirsin
(java bilmiyorum basit cpp olarak yazıyorum sen çevirirsin :( )
Faktoriyeli alınacak sayıyı fGiris'e al ondan sonra buna benzer bir şey ekle "i == 9" durumuna
Kod:
while (fGiris1 > 0){
    fGiris1 = fGiris //fGiris değerini fGiris1'e aktar*
    fGiris = fGiris * fGiris1 //Faktoriyel hesabının yapıldığı yer*
    fGiris1-- //fGiris'i bir azalt*
}
Bunun benzeri bir şeyle istediğin kadar büyük sayıların faktoriyelini alabilirsin :(
Tabi yukarıdaki değişkenleri filan sen istediğin gibi tanımlayabilirsin :(
 

metinzeki

Zombi Katili
En iyi cevaplar
0
O faktoriyel çok vasıfsız onun yerine söyle bir şey yapabilirsin
(java bilmiyorum basit cpp olarak yazıyorum sen çevirirsin :( )
Faktoriyeli alınacak sayıyı fGiris'e al ondan sonra buna benzer bir şey ekle "i == 9" durumuna
Kod:
while (fGiris1 > 0){
    fGiris1 = fGiris //fGiris değerini fGiris1'e aktar*
    fGiris = fGiris * fGiris1 //Faktoriyel hesabının yapıldığı yer*
    fGiris1-- //fGiris'i bir azalt*
}
Bunun benzeri bir şeyle istediğin kadar büyük sayıların faktoriyelini alabilirsin :(
Tabi yukarıdaki değişkenleri filan sen istediğin gibi tanımlayabilirsin :(
hmm mantıklı deneyeceğim. teşekkürler yorumun için :)
 

metinzeki

Zombi Katili
En iyi cevaplar
0
Kod:
import java.util.Scanner;
public class Deneme_5 {
    public static void main (String[] args){
       
        Scanner qx = new Scanner (System.in);
        int sayi = qx.nextInt();
        while (sayi > 0){
       
        int sayi1 = sayi;
        int fac = sayi1 * sayi;   
        sayi1--;
       
        }
        System.out.println(fac);
       
       
       
    }

}
anlamadım :p sorun veriyor fac değerini yazdırmaya çalıştığımda "fac cannot be resolved to a variable" hatam nerede?
 

Vienicome

Hayalet Avcısı
En iyi cevaplar
0
Kod:
import java.util.Scanner;
public class Deneme_5 {
    public static void main (String[] args){
     
        Scanner qx = new Scanner (System.in);
        int sayi = qx.nextInt();
        while (sayi > 0){
     
        int sayi1 = sayi;
        int fac = sayi1 * sayi; 
        sayi1--;
     
        }
        System.out.println(fac);
     
     
     
    }

}
anlamadım :p sorun veriyor fac değerini yazdırmaya çalıştığımda "fac cannot be resolved to a variable" hatam nerede?
Java bilmiyorum ama sorun yüksek ihtimal fac'ın tanımlandığı yerde
Yani main bloğunda tanımlanan birşeyi o blok dışında kullanırsan hata vericektir normalde
Şunu deneyebilirsin
Kod:
public class Deneme_5 {
    public static void main (String[] args){
    
        Scanner qx = new Scanner (System.in);
        int sayi = qx.nextInt();
        while (sayi > 0){
    
        int sayi1 = sayi;
        int fac = sayi1 * sayi;
        sayi1--;
    
      
        System.out.println(fac); //printline blok içine alındı*
        }
    
    
    
    }
}
 

metinzeki

Zombi Katili
En iyi cevaplar
0
bu seferde denemek için 5 yazdım.
Kod:
25
25
25
25
25
25
25
25
25
çıktısını aldım. bende sayi1--; yi bir üste aldım bu seferde
Kod:
20
20
20
20
20
20
20
20
20
verdi 5*4 :p
edit: Sorunu çözdüm.
Kod:
import java.util.Scanner;
public class Deneme_5 {
    public static void main (String[] args){
        Scanner qx = new Scanner (System.in);
        int factorial = 1;
        System.out.println("Sayıyı giriniz.");
     
        int sayi = qx.nextInt();
     
        while (sayi != 0){
         
            factorial = factorial*sayi;
            sayi = sayi-1;
            System.out.println(factorial);
         
        }
     
     
        }
     
     
     
     
    }
Sonuç doğru fakat bana yaptığı işlemleride yazıyor örnek=

ayrıca sadece 12 ye kadar faktöriyel alabiliyor 13 yok :p negatif sayılara düşüyor :p
 
Son düzenleme:

Vienicome

Hayalet Avcısı
En iyi cevaplar
0
bu seferde denemek için 5 yazdım.
Kod:
25
25
25
25
25
25
25
25
25
çıktısını aldım. bende sayi1--; yi bir üste aldım bu seferde
Kod:
20
20
20
20
20
20
20
20
20
verdi 5*4 :p
edit: Sorunu çözdüm.
Kod:
import java.util.Scanner;
public class Deneme_5 {
    public static void main (String[] args){
        Scanner qx = new Scanner (System.in);
        int factorial = 1;
        System.out.println("Sayıyı giriniz.");
    
        int sayi = qx.nextInt();
    
        while (sayi != 0){
        
            factorial = factorial*sayi;
            sayi = sayi-1;
            System.out.println(factorial);
        
        }
    
    
        }
    
    
    
    
    }
Sonuç doğru fakat bana yaptığı işlemleride yazıyor örnek=

ayrıca sadece 12 ye kadar faktöriyel alabiliyor 13 yok :p negatif sayılara düşüyor :p
şu an kendim ayrı bir program cehennemiyle uğraşıyorum çok fazla bakamıyorum ama "while sayi != 0" yerine "while sayi > 0" kullanmak daha güvenli çünkü 0'a ulaşmadan eksiye düşerse önünü alamazsın :(
 
Üst