C Programlama ATM Örneği

Bugün C programlama dilini kullanarak switch case yapısını daha iyi anlamamıza sebep olacak ATM örneği yapacağız.

Kullanıcının birden fazla işlem yapabilmesi için while döngümüzü oluşturduk. “Yeniden” değişkenimizi “e” harfine eşitlememizin sebebi ise herhangi bir işlem yapmadan direk while döngüsünün içine girebilmek ve switch case yapımız bittikten sonra “Yeniden islem yapmak ister misiniz? e/h” sorumuza “h” cevabını verdiğimizde döngümüzün sona ermesi.

While döngümüzün içerisinde kullanıcıdan yapacağı işlemin değerini alıyoruz ve switch case’e sokuyoruz. Switch case yapımızın işleme mantığı ise şu şekilde: switch(değer) parantez içine yazdığımız değer, case’lerden hangisine eşit ise o case’deki işlemi gerçekleştiriyor. Kodumuzdan yola çıkacak olursak, Kullanıcı para çekme işlemi gerçekleştirmek istiyor ise; İşlemi sorduğumuz zaman 2 rakamını tuşlayacak ve islem değişkenimiz 2’ye eşit olacak. Switch yapmıza girdiği zaman, case’in 2 olduğu durumdaki işlemleri gerçekleştirecek.

case 2:
printf(“Miktar giriniz: “);
scanf(“%d”,&miktar);
bakiye-=miktar;
printf(“Bakiyeniz %d tl’dir.”,bakiye);
break;

Yani bu blog çalışacak ve buradaki işlemler gerçekleştirilecek.

Default ise girdiğimiz case’lerin dışında bir değer girdiğimiz zaman işleme giriyor.

Ve case’lerdeki break komutu ile switch case yapımızı sonlandırıyoruz ve kullanıcıdan yeniden işlem yapıp yapmayacağı bilgisini alıyoruz. Kullanıcı “e” harfini girer ise while döngümüz “yeniden==e” şartıyla döneceği için değişen bir şey olmaz ve yeniden for döngüsüne gireriz. Ama “h” girer ise kullanıcı “yeniden==h” olacağı için while döngüsüne girmeyiz ve programımız sonlanır.

 

KOD:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
int islem,miktar,bakiye=1000;
char yeniden='e';
printf("1-Bakiye sorgulaman2-Para cekmen3-Para yatirman");

while(yeniden=='e'){
printf("Lutfen isleminizi giriniz: ");
scanf("%d",&islem);
switch(islem){
case 1:
printf("Bakiyeniz %d tl'dir.",bakiye);
break;
case 2:
printf("Miktar giriniz: ");
scanf("%d",&miktar);
bakiye-=miktar;
printf("Bakiyeniz %d tl'dir.",bakiye);
break;

case 3:
printf("Miktar giriniz: ");
scanf("%d",&miktar);
bakiye+=miktar;
printf("Bakiyeniz %d tl'dir.",bakiye);
break;
default:
printf("Gecersiz bir islem girdiniz!");
break;
}
printf("nYeniden islem yapmak ister misiniz? e/h");
scanf("%s",&yeniden);
}
printf("Gorusmek dilegiyle...");
} 

Tahsin ALTINTAŞ

Computer science 4 life mottosuyla yola çıkmış bir bilgisayar mühendisi.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir