Java ile 311 satırlık efsane mobil bankacılık programı;

Nisan 3, 2020 0 Yazar: alikperislam
package helloworld;
import java.util.Random;
import java.util.Scanner;
public class bankamatik_algoritması {
    public static void main(String [] args){
        Scanner scan=new Scanner(System.in);
        String islemler,secenek,islem,islem1,islem2,onaylama,telefon,sys_telefon,banka1,banka2;
        int sifre,yeni_sifre,sys_sifre,giris_hakki;
        double hesap_bakiyem,kullanılabilir_bakiyem,hesap_borc,hesap_asgariborc,para_cek,kredi_cek,
                cekilen_para, gonderilen_para,cekilen_kredi,havale1,eft1,kredi_limiti;
        System.out.print("Bakiyenizi giriniz :");
        hesap_bakiyem=scan.nextDouble();
        System.out.print("Borcunuzu giriniz :");
        hesap_borc=scan.nextDouble();
        hesap_asgariborc=(hesap_borc/2.5);
        kullanılabilir_bakiyem=(hesap_bakiyem-hesap_asgariborc);
        sifre=1479;
        cekilen_para=0;
        gonderilen_para=0;
        kredi_limiti=(kullanılabilir_bakiyem*3);
        cekilen_kredi=0;
        telefon="05384910460";
        giris_hakki=3;
        islemler=("\nBakiyeniz için : 2\n"+
                "Hesap borcunuz için : 3\n"+
                "Hesap asgari borcunuz için : 4\n"+
                "Para aktarma ekranı için : 5\n"+
                "Para çekme ekranı için : 6\n"+
                "Kredi çekme ekranı için : 7\n"+
                "Bilgiler ekranı için : 8\n"+
                "Çıkış yapmak için: q\n");
        System.out.println("********************* Ziraat Bank ATM'ye Hoş Geldiniz *********************");
        System.out.print("Lütfen 4 haneli şifrenizi doğru bir şekilde giriniz :");
        sys_sifre=scan.nextInt();
        while(true){
            if(sys_sifre==sifre){
                System.out.println("Şifre doğru giriş yapılıyor lütfen bekleyiniz...");
                System.out.println("ZİRAAT BANK ATM ANA EKRANINA HOŞ GELDİNİZ.");
                System.out.println("Ana sayfa için : 1'e basınız.");
                System.out.print("Yapmak istediğiniz işlemi giriniz :");
                islem=scan.nextLine();
                while(islem.equals("1")){
                    System.out.println("Ana sayfadasınız.");
                    System.out.println(islemler);
                    System.out.print("Lütfen yapmak istediğiniz işlemi giriniz :");
                    islem1=scan.nextLine();
                    if (islem1.equals("2")) {
                        System.out.println("Ana sayfa -----> Bakiyem");
                        System.out.println("Bakiye ekranına hoş geldiniz...");
                        System.out.println("Hesabınızda ki kullanılabilir bakiyeniz : " + kullanılabilir_bakiyem); }
                    else if(islem1.equals("3")){
                        System.out.println("Ana sayfa -----> Hesap borcu");
                        System.out.println("Hesap borcu ekranına hoşgeldiniz...");
                        System.out.println("Hesabınızda ki ödemeniz gereken net boç tutarı : "+hesap_borc); }
                    else if(islem1.equals("4")){
                        System.out.println("Ana sayfa -----> Hesap asgari borcu");
                        System.out.println("Hesap asgari boç ekranına hoş geldiniz...");
                        System.out.println("Hesabınızda ki ödemeniz gereken asgari borcunuz : "+hesap_asgariborc); }
                    else if(islem1.equals("5")){
                        System.out.println("Ana sayfa -----> Para aktarma");
                        System.out.println("Para aktarma ekranına hoş geldiniz...\n" +
                                "\nHavale yapmak için : 1\n" +
                                "Eft yapmak için : 2");
                        System.out.print("Yapmak istediğiniz işlemi giriniz :");
                        islem2=scan.nextLine();
                        if(islem2.equals("1")){
                            System.out.println("Ana sayfa -----> Para aktarma ekranı -----> Havale ekranı");
                            System.out.print("Havale yapılacak olan banka hesabını giriniz :");
                            banka1=scan.nextLine();
                            System.out.print("Ne kadar havale yapılacak :");
                            havale1=scan.nextInt();
                            if(havale1<=kullanılabilir_bakiyem){
                                System.out.println("Havale edilecen banka : "+banka1
                                        +"\nHavale edilen miktar : "+havale1);
                                kullanılabilir_bakiyem-=havale1;
                                gonderilen_para+=havale1;
                            }
                            else{
                                System.out.println("Malesef bu işlem için bakiyeniz yetersiz.");
                            }
                        }
                        else if(islem2.equals("2")){
                            System.out.println("Ana sayfa -----> Para aktarma ekranı -----> Eft ekranı");
                            System.out.print("Eft yapılacak bankayı giriniz :");
                            banka2=scan.nextLine();
                            System.out.print("Ne kadar eft yapılacak :");
                            eft1=scan.nextDouble();
                            if(eft1<=kullanılabilir_bakiyem){
                                System.out.println("Eft yapılan banka : "+banka2+
                                        "\nEft edilen miktar : "+eft1);
                                gonderilen_para+=eft1;
                                kullanılabilir_bakiyem-=eft1;
                            }
                            else{
                                System.out.println("Malesef bu işlem için bakiyeniz yetersiz.");
                            }} }
                    else if(islem1.equals("6")){
                        System.out.println("Ana sayfa -----> Para çekme");
                        System.out.println("Para çekme ekranına hoş geldiniz...");
                        System.out.print("Lütfen hesabınızdan çekmek istediğiniz tutarı giriniz :");
                        para_cek=scan.nextDouble();
                        if(para_cek<=kullanılabilir_bakiyem){
                            System.out.println("Çekmek istediğiniz miktar : "+para_cek);
                            System.out.print("Onaylıyor musunuz (evet veya hayır) :");
                            onaylama=scan.nextLine();
                            if(onaylama.equals("hayır")){
                                System.out.println("Onaylamadığınız için işlem yapılamadı.");
                                 }
                            else{
                                System.out.println("para çekme işleminiz yapılmıştır, iyi günler dileriz...");
                                kullanılabilir_bakiyem-=para_cek;
                                cekilen_para+=para_cek;
                                 }
                        }
                        else{
                            System.out.println("Malesef bu işlem için bakiyeniz yetersiz.");
                        } }
                    else if(islem1.equals("7")){
                        System.out.println("Ana sayfa -----> Kredi çekme");
                        System.out.println("Kredi çekme ekranına hoşgeldiniz...");
                        System.out.print("Ne kadar kredi çekmek istiyorsunuz :");
                        kredi_cek=scan.nextDouble();
                        if(kredi_cek<=kredi_limiti){
                            System.out.println("Çekilecek kredi tutarı : "+kredi_cek);
                            System.out.print("Onaylıyor musunuz(evet veya hayır):");
                            onaylama=scan.nextLine();
                            if(onaylama.equals("hayır")){
                                System.out.println("Onaylamadığınız için işlem yapılamadı.");
                                 }
                            else{
                                System.out.println("Kredi çekme işleminiz yapılmıştır, iyi günler dileriz...");
                                kredi_limiti-=kredi_cek;
                                cekilen_kredi+=kredi_cek;
                                 } }
                        else{
                            System.out.println("Malesef bu işlem için kredi limitiniz yetersiz.");
                        }
                    }
                    else if(islem1.equals("8")){
                        System.out.println("Ana sayfa -----> Makbuz ekranı");
                        System.out.println("********** MAKBUZ EKRANINA HOŞ GELDİNİZ **********");
                        System.out.println("Bakiyeniz : "+kullanılabilir_bakiyem+
                                "\nHesabınızın borcu : "+hesap_borc
                                +"\nAsgari borç : "+hesap_asgariborc
                                +"\nGönderilen para : "+gonderilen_para
                                +"\nÇekilen para : "+cekilen_para
                                +"\nKredi limiti : "+kredi_limiti
                                +"\nÇekilen kredi tutarı : "+ cekilen_kredi);
                        break;
                    }
                    else if(islem1.equals("q")){
                        System.out.println("Ana sayfa -----> çıkış işlemi");
                        System.out.println("Sistemden çıkış yapılıyor....\nÇıkış işlemi gerçekleştirildi.");
                        break; }
                    else{
                        System.out.println("Yanlış bir işlem yaptınız tekrar deneyiniz !!!"); } }
                 }
            else {
                giris_hakki-=1;
                if(giris_hakki==0){
                    System.out.println("Giriş hakkınız doldu kartınız bloke edilmüştir, lütfen şubeniz ile görüşünüz !!!");
                    break;
                }
                System.out.println("4 haneli şifrenizi yanlış girdiniz 3 kez deneme hakınız var,\n" +
                        "Deneme hakkınız dolarsa kartınız bloke edilecektir !!!\n");
                while(true){
                    System.out.print("Şifrenizi değiştirmek istiyor musunuz (evet veya hayır) :");
                    secenek=scan.nextLine();
                    if(secenek.equals("evet")){
                        System.out.print("lütfen telefon numaranızı giriniz :");
                        sys_telefon=scan.nextLine();
                        if(sys_telefon.equals(telefon)){
                            Random rastgele = new Random();
                            int rastgeleSayi = rastgele.nextInt(9999)+1000;
                            System.out.println("Yeni şifre = "+rastgeleSayi);
                            sifre=rastgeleSayi;
                            System.out.print("Yeni şifreyi giriniz :");
                            yeni_sifre=scan.nextInt();
                            while (yeni_sifre==rastgeleSayi){
                                System.out.println("Yeni şifre ile sisteme başarıyla giriş yaptınız.");
                                System.out.println("ZİRAAT BANK ATM ANA EKRANINA HOŞ GELDİNİZ.");
                                System.out.println("Ana sayfa için : 1");
                                System.out.print("Yapmak istediğiniz işlemi giriniz :");
                                islem=scan.nextLine();
                                while (islem.equals("1")){
                                    System.out.println("Ana sayfadasınız.");
                                    System.out.println(islemler);
                                    System.out.print("Lütfen yapmak istediğiniz işlemi giriniz :");
                                    islem1=scan.nextLine();
                                    if (islem1.equals("2")) {
                                        System.out.println("Ana sayfa -----> Bakiyem");
                                        System.out.println("Bakiye ekranına hoş geldiniz...");
                                        System.out.println("Hesabınızda ki kullanılabilir bakiyeniz : " + kullanılabilir_bakiyem); }
                                    else if(islem1.equals("3")){
                                        System.out.println("Ana sayfa -----> Hesap borcu");
                                        System.out.println("Hesap borcu ekranına hoşgeldiniz...");
                                        System.out.println("Hesabınızda ki ödemeniz gereken net boç tutarı : "+hesap_borc); }
                                    else if(islem1.equals("4")){
                                        System.out.println("Ana sayfa -----> Hesap asgari borcu");
                                        System.out.println("Hesap asgari boç ekranına hoş geldiniz...");
                                        System.out.println("Hesabınızda ki ödemeniz gereken asgari borcunuz : "+hesap_asgariborc); }
                                    else if(islem1.equals("5")){
                                        System.out.println("Ana sayfa -----> Para aktarma");
                                        System.out.println("Para aktarma ekranına hoş geldiniz...\n" +
                                                "Havale yapmak için : 1\n" +
                                                "Eft yapmak için : 2");
                                        System.out.print("Yapmak istediğiniz işlemi giriniz :");
                                        islem2=scan.nextLine();
                                        if(islem2.equals("1")){
                                            System.out.println("Ana sayfa -----> Para aktarma ekranı -----> Havale ekranı");
                                            System.out.print("Havale yapılacak olan banka hesabını giriniz :");
                                            banka1=scan.nextLine();
                                            System.out.print("Ne kadar havale yapılacak :");
                                            havale1=scan.nextInt();
                                            if(havale1<=kullanılabilir_bakiyem){
                                                System.out.println("Havale edilecen banka : "+banka1
                                                        +"\nHavale edilen miktar : "+havale1);
                                                kullanılabilir_bakiyem-=havale1;
                                                gonderilen_para+=havale1;
                                            }
                                            else{
                                                System.out.println("Malesef bu işlem için bakiyeniz yetersiz.");
                                            }
                                        }
                                        else if(islem2.equals("2")){
                                            System.out.println("Ana sayfa -----> Para aktarma ekranı -----> Eft ekranı");
                                            System.out.print("Eft yapılacak bankayı giriniz :");
                                            banka2=scan.nextLine();
                                            System.out.print("Ne kadar eft yapılacak");
                                            eft1=scan.nextDouble();
                                            if(eft1<=kullanılabilir_bakiyem){
                                                System.out.println("Eft yapılan banka : "+banka2+
                                                        "\nEft edilen miktar : "+eft1);
                                                gonderilen_para+=eft1;
                                                kullanılabilir_bakiyem-=eft1;
                                            }
                                            else{
                                                System.out.println("Malesef bu işlem için bakiyeniz yetersiz.");
                                            }} }
                                    else if(islem1.equals("6")){
                                        System.out.println("Ana sayfa -----> Para çekme");
                                        System.out.println("Para çekme ekranına hoş geldiniz...");
                                        System.out.print("Lütfen hesabınızdan çekmek istediğiniz tutarı giriniz :");
                                        para_cek=scan.nextDouble();
                                        if(para_cek<=kullanılabilir_bakiyem){
                                            System.out.println("Çekmek istediğiniz miktar : "+para_cek);
                                            System.out.print("Onaylıyor musunuz (evet veya hayır) :");
                                            onaylama=scan.nextLine();
                                            if(onaylama.equals("hayır")){
                                                System.out.println("Onaylamadığınız için işlem yapılamadı.");
                                                 }
                                            else{
                                                System.out.println("para çekme işleminiz yapılmıştır, iyi günler dileriz...");
                                                kullanılabilir_bakiyem-=para_cek;
                                                cekilen_para+=para_cek;
                                                 } }
                                        else{
                                            System.out.println("Malesef bu işlem için bakiyeniz yetersiz.");
                                        } }
                                    else if(islem1.equals("7")){
                                        System.out.println("Ana sayfa -----> Kredi çekme");
                                        System.out.println("Kredi çekme ekranına hoşgeldiniz...");
                                        System.out.print("Ne kadar kredi çekmek istiyorsunuz :");
                                        kredi_cek=scan.nextDouble();
                                        if(kredi_cek<=kredi_limiti){
                                            System.out.println("Çekilecek kredi tutarı : "+kredi_cek);
                                            System.out.print("Onaylıyor musunuz(evet veya hayır):");
                                            onaylama=scan.nextLine();
                                            if(onaylama.equals("hayır")){
                                                System.out.println("Onaylamadığınız için işlem yapılamadı.");
                                            }
                                            else{
                                                System.out.println("Kredi çekme işleminiz yapılmıştır, iyi günler dileriz...");
                                                kredi_limiti-=kredi_cek;
                                                cekilen_kredi+=kredi_cek;
                                                 }
                                        }
                                        else{
                                            System.out.println("Malesef bu işlem için kredi limitiniz yetersiz.");
                                        }
                                    }
                                    else if(islem1.equals("8")){
                                        System.out.println("Ana sayfa -----> Makbuz ekranı");
                                        System.out.println("********** MAKBUZ EKRANINA HOŞ GELDİNİZ **********");
                                        System.out.println("Bakiyeniz : "+kullanılabilir_bakiyem+
                                                "\nHesabınızın borcu : "+hesap_borc
                                                +"\nAsgari borç : "+hesap_asgariborc
                                                +"\nGönderilen para : "+gonderilen_para
                                                +"\nÇekilen para : "+cekilen_para
                                                +"\nKredi limiti : "+kredi_limiti
                                                +"\nÇekilen kredi tutarı : "+ cekilen_kredi);
                                        break;
                                    }
                                    else if(islem1.equals("q")){
                                        System.out.println("Ana sayfa -----> çıkış işlemi");
                                        System.out.println("Sistemden çıkış yapılıyor....\nÇıkış işlemi gerçekleştirildi.");
                                        break; }
                                    else{
                                        System.out.println("Yanlış bir işlem yaptınız tekrar deneyiniz !!!"); }
                                }
                            }
                        }
                        else{
                            System.out.println("Telefon numaranızı yanlış girdiniz lütfen tekrar deneyiniz...");
                        break;}
                    }
                }
            }
        }
    }
}