Ana içeriğe atla

ATM Projesi

* Proje
Bu projede aşağıdaki ATM ile ilgili listelenen işlevleri fonksiyonları kullanarak uygulayınız.
  • Kullanıcıya Menünün Gösterilmesi
  • Hesap Bilgileri Gösterme (Gösterilecek bilgileri siz belirleyeceksiniz: Ad, Soyad, IBAN, Sube, Banka adı, v.b.)
  • Bakiye Sorgulama
  • Para Çekme
  • Para Yatırma
  • Para Gönderme (5% komisyon)
#include <stdio.h>
#include <stdlib.h>
#include <strings.h>
#include <math.h>
#include <conio.h>
#include <locale.h>
#include <unistd.h> // Sleep fonksiyonu için bu kütüphaneyi tanımladık

struct banka /* tüm fonksiyonlarda verilere erişebilmek için Struct yapısı oluşturduk. */
{
	char ad[30];
	char soyad[30];
	char CepTel[30];
	char Iban[30];
	char Dogum_tarihi[30];
	char kizlik_soyadi[30];
	char e_posta[30];
	float bakiye1;	
}banka={"Yusuf","XXX","5313313131","TR77777777777777","07.03.2000","AAAAAA","yusufxxx@gmail.com",27300}; /* Struct yapısına veriler girdik*/
void menu();
void bakiye_sorgula(float bakiye);
int para_cekme(float bakiye);
int para_yatirma(float bakiye);
int para_gonderme(float bakiye);
void hesap_bilgisi(char ad[20], char soyad[20],char CepTel[10],char Iban[26],char Dogum_tarihi[10],char kizlik_soyadi[20],char e_posta[BUFSIZ],float bakiye);


main()
{
	
	system("color 3e"); 
	system("cls"); 
	menu();	
	
	}	
			
	void menu(){
		printf("\n Yusuf XXX");
	char islem; 
	int secim;		
	printf("\n\t\t\t   VEFA BANKASINA HOSGELDINIZ.\t\n");
	
	printf("\t\t\t|\t     MENU");
	printf("\t\t|\n"),
	printf("\t\t\t|-------------------------------|\n");
	printf("\t\t\t|1-Hesap Bilgilerini Goster");
	printf("\t|\n");
	printf("\t\t\t|2-Bakiye Sorgulama"); 
	printf("\t\t|\n");
	printf("\t\t\t|3-Para Cekme");
	printf("\t\t\t|\n");
	printf("\t\t\t|4-Para Yatirma");
	printf("\t\t\t|\n");
	printf("\t\t\t|5-Para Gonderme");
	printf("\t\t|\n");
	printf("\t\t\t|7-Cikis");
	printf("\t\t\t|\n"),
	printf("\t\t\t|-------------------------------|\n");
	printf("\t\t\tYapmak istediginiz islemi seciniz:");
	
	scanf("%d",&secim);

	if(secim==1)
	{
		hesap_bilgisi(banka.ad,banka.soyad,banka.CepTel,banka.Iban,banka.Dogum_tarihi,banka.kizlik_soyadi,banka.e_posta,banka.bakiye1); /*Struct yapılarındaki verileri okumak için
		dizilerin başına " banka. " eklendi. */
	}
	else if(secim==3)
	{
		
		 banka.bakiye1=para_cekme(banka.bakiye1);
		
		main();
	}
	else if(secim==2)
	{
		bakiye_sorgula(banka.bakiye1);
		
	}
	else if(secim==4)
	{
		banka.bakiye1=para_yatirma(banka.bakiye1);
		main();
	}
	else if(secim==5)
	{
		banka.bakiye1=para_gonderme(banka.bakiye1);
		main();
	}
	else if(secim==7)
	{
		exit(1);
	}
	else
	{
		
	}
}


void bakiye_sorgula(float bakiye)
{
	char devam;
	printf("Musterinin Toplam Bakiyesi: %5.2f \n",bakiye);
	while(1){
	
	printf("\n Menuye donmek icin D/d tusuna basiniz.\n");
		devam=getche();
		if((tolower(devam)=='d' )) 
		{
		
		main();
		}
		else
		{
			printf("Hatali Islem Yaptiniz.Menuye Yonlendiriliyorsunuz.");
			sleep(5); /*Programı 5 saniye durduruyor. Üstteki Hatalı işlem yaptınız yazısını göstermek için bu kodu kullandık.Kullanmasaydık maine hemen dönecekti
			 ve system(cls) kodundan dolayı Hatalı işlem yaptınız yazısı görünmeyecekti.*/
			main();
		}
		}
	
}

int para_cekme(float bakiye)
{
	char devam;
	float miktar;
while(1){
	printf("Su an ki Bakiyeniz:%5.2f\n",bakiye);
	printf("Cekmek istediginiz bakiye miktarini giriniz:\n");
	scanf("%f",&miktar);
	float hesaplama=bakiye-miktar;
	printf("Paraniz basariyla cekilmistir.\n");
	printf("Su an ki Bakiyeniz:%5.2f\n",hesaplama);
	

	printf("\n Menuye donmek icin D/d tusuna basiniz.\n");
		devam=getche();
		if((tolower(devam)=='d' ))
		{	
		return hesaplama;		
		}
		else
		{
			printf("Hatali Islem Yaptiniz.Menuye Yonlendiriliyorsunuz.");
			sleep(5);/*Programı 5 saniye durduruyor. Üstteki Hatalı işlem yaptınız yazısını göstermek için bu kodu kullandık.Kullanmasaydık maine hemen dönecekti
			 ve system(cls) kodundan dolayı Hatalı işlem yaptınız yazısı görünmeyecekti.*/
			main();
		}
		}
}
	

int para_yatirma(float bakiye)
{
		
	char devam;
	float miktar, hesaplama;
	while(1)
	{
	printf("Su an ki Bakiyeniz:%5.2f\n",bakiye);
	printf("Yatirmak istediginiz bakiye miktarini giriniz:\n");
	scanf("%f",&miktar);
	hesaplama=bakiye+miktar;
	printf("Paraniz basariyla yatirilmistir.\n");
	printf("Su an ki Bakiyeniz:%5.2f\n",hesaplama);
	

	printf("\n Menuye donmek icin D/d tusuna basiniz.\n");
		devam=getche();
		if((tolower(devam)=='d' )) 
		{	
		return hesaplama;		
		}
		else
		{
			printf("Hatali Islem Yaptiniz.Menuye Yonlendiriliyorsunuz.");
			sleep(5);/*Programı 5 saniye durduruyor. Üstteki Hatalı işlem yaptınız yazısını göstermek için bu kodu kullandık.Kullanmasaydık maine hemen dönecekti
			 ve system(cls) kodundan dolayı Hatalı işlem yaptınız yazısı görünmeyecekti.*/
			main();
	}
	}
	}

int para_gonderme(float bakiye)

{
	char Iban2[30];
	char CepTel2[30];
	char devam;
	char devam2;
	float miktar, hesaplama;
	while(1)
	{
	printf("Su an ki Bakiyeniz:%5.2f\n",bakiye);

	printf("Gondermek istediginiz hesabin IBAN numarasini giriniz:\n");
	fflush(stdin); /* Gets komutunu kullandığımızda kaynaklanan , veriyi almadan direk atlatığından dolayı 
	 Internetten araştırdığımda gets(); komutundan once fflush(); yazdığımızda sorun olmadığından kullandım.*/
	gets(Iban2);
	geri: 
	printf("\nGondermek istediginiz bakiye miktarini giriniz:\n");
	scanf("%f",&miktar);
	bakiye=bakiye-miktar;
	hesaplama=bakiye-((bakiye*5)/100); /*komisyon alıyoruz*/
	
	printf("Gondermek Istediginiz\n---> IBAN:%s\n--->Telefon Numaraniz:%s\n",Iban2,banka.CepTel);
	
	printf("---->Islemi onaylamak icin E/e tusuna basiniz.\n");	
	printf("---->Para miktarini duzeltmek icin G/g tusuna basiniz\n");
	printf("---->Islemden vazgecmek icin V/v tusuna basiniz\n");
	devam=getche();
	if((tolower(devam)=='e' ))
	{
	printf("Paraniz basariyla gonderilmistir.\n");
	printf("Su an ki Bakiyeniz:%5.2f\n",hesaplama);
	

	printf("\n Menuye donmek icin D/d tusuna basiniz.\n");
		devam2=getche();
		if((tolower(devam2)=='d' ))
		{	
		return hesaplama;		
		}
		else
		{
			printf("Hatali Islem Yaptiniz.Menuye Yonlendiriliyorsunuz.");
			sleep(5);/*Programı 5 saniye durduruyor. Üstteki Hatalı işlem yaptınız yazısını göstermek için bu kodu kullandık.Kullanmasaydık maine hemen dönecekti
			 ve system(cls) kodundan dolayı Hatalı işlem yaptınız yazısı görünmeyecekti.*/
			main();
		}	
	}
	
	if((tolower(devam)=='g' ))
	{
		goto geri; 
	}
	if((tolower(devam)=='v' ))
	{
		main();
	}
	
	
}
}



void hesap_bilgisi(char ad[20], char soyad[20],char CepTel[10],char Iban[26],char Dogum_tarihi[10],char kizlik_soyadi[20],char e_posta[BUFSIZ],float bakiye)
{
	char devam;
	while(1){	
	printf("Musteri Bilgileri: Ad:%s \tSoyad:%s\tCep:%s\tIBAN:%s\tDogum Tarihi:%s\tAnne Kizlik Soyadi:%s\tE-Postasi:%s\tBakiyesi:%5.2f\t\n ",ad,soyad,CepTel,Iban,Dogum_tarihi,kizlik_soyadi,e_posta,bakiye);
	
	
	printf("\n Menuye donmek icin D/d tusuna basiniz.\n");
	
		
		devam=getche();
		if((tolower(devam)=='d' )) 
		{
		
		main();	
		}
		else
		{
			printf("Hatali Islem Yaptiniz.Menuye Yonlendiriliyorsunuz.");
			sleep(5);/*Programı 5 saniye durduruyor. Üstteki Hatalı işlem yaptınız yazısını göstermek için bu kodu kullandık.Kullanmasaydık maine hemen dönecekti
			 ve system(cls) kodundan dolayı Hatalı işlem yaptınız yazısı görünmeyecekti.*/
			main();
		}
		}
}

Bu blogdaki popüler yayınlar

C Programlama Dili ile Otomat Makinesi Yapmak

 İşte en sevdiğim, göz bebeğim, favori C projem  Otomat Makinesi Programı . Bağlantıya tıklayarak ilgili sayfaya uçuş gerçekleştirebilir ve bu şaheserime ve bana saygı duyarak kendinize fayda sağlayacak şekilde kullanabilirsiniz. Bu programda fonksiyonlar, göstergeler ve diziler kullanılmıştır. Programın gereksinimleri ve kaynak kodları ilgili sayfada yer almaktadır. Normalde öve öve bitiremeyeceğim canım projemle sizi baş başa bırakayım ve keyifle uygulamanızı temenni edeyim. İyi öğrenmeler!

C Programlama Dili ile Basit Bir Kazanç Hesaplama Programı

 Biraz da hesabımızı bilelim değil mi? Tekrardan selamlar, bu sefer C programlama dili ile  Ürün Fiyatına Göre Kazanç Hesaplayan Program  yaptık. Bağlantıya tıklayarak ilgili sayfaya gidebilir ve konsol uygulamasının kaynak kodlarına ulaşabilirsiniz. İsmi böyle ahım şahım haşmetli bir şey gibi gözükse de içeriği sadece birkaç kıyafetin fiyatına göre ürün başına %2 kazanç sağlayacak şekilde hesaplama yapan bir konsol programı. İyi öğrenmeler!

C Programlama Dili ile ATM Projesi

 Selamlar herkese, diğer paylaştıklarıma oranla daha ağır bir projeyle sizi baş başa bırakıyorum ve  ATM Projesi  başlıklı bağlantıya tıklayarak ulaşmanızı sağlıyorum. Bu projede kodların detayları yorum satırlarında belirtiliyor. Projede istenen durumların açıklaması da mevcut. Projede altın, dolar gibi yatırım hesaplama zımbırtıları da vardı fakat kodlar çok olunca syntax highlighter ile birtakım problem yaşadım ve komisyon kısmını kesip attım. Böylesi de işinizi fazlasıyla görecektir. Ki zaten bu kadarını aldıktan sonra uygulamayı anlayacağınıza, gerekli eklentileri yapabileceğinize inanıyorum. İyi öğrenmeler!