C de matemetik fonksiyonları etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
C de matemetik fonksiyonları etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

17 Temmuz 2013 Çarşamba

C de Bankamatik Para Ayrıştırma Programı

Bu programdaki amacımız; kullanıcının ATM den para çektiğini varsayarak paranın en az kağıt kullanacak şekilde kişiye ödemenin yapılmasını sağlamaktır.

Öncelikle kullanıcıdan çekmek istediği para miktarını girmesini istiyoruz ve parayı parçalamaya başlıyoruz. Tabi ki parçalamadan önce girilen miktarı kontrol etmemiz gerekiyor. Eğer kullanıcı 10’ un katlarında bir miktar girmezse gerekli bildirimi ekrana yazdırmamız lazım. Kullanıcın 10’un katlarında bir miktar girdiğini varsayarsak; paranın içinde kaç adet 200 TL olduğunu bulmalıyız ilk önce. Bunu yaparken de parayı 200’e bölüp bölüm sayısını tutmalıyız, eğer bölüm sayısı 0-1 arasındaysa 200 lira içermiyordur demektir.200 liranın araştırmasından sonra kalan parayı bulmalıyız. Bunun için de ilk girilen para miktarının 200 liraya göre modunu almalıyız. Kalan miktarı da bulduktan sonra aynı işlemleri sırasıyla 100,50,20 ve 10 TL için yapmalıyız. En son ise paranın nasıl en az kağıt para kullanılarak verilmesi gerektiğini kullanıcıya bildirmeliyiz. 

Programın Kodu:  

Programın Ekran Çıktıları:




C de ikinci dereceden denklemin köklerini bulma

ax^2+bx+c şeklinde olan ikinci dereceden bir denklemin köklerini bulmak için bir kok yazmak istersek hangi yolları izlemeliyiz. Öncelikle denklemin katsayılarını ve sabit terimi kullanıcıdan almalıyız(a,b ve c değerleri). Sırasıyla sayıları aldıktan sonra delta değerini bulmalıyız. Bu delta değeri bize kök için yol gösterecek. Eğer delta değeri sıfırdan küçükse kök bulurken delta değerinin kökü tanımsız olacağı için reel kökü bulunmadığını, delta değeri sıfırsa birbirine eşit iki kökün bulunduğunu, delta değeri sıfırdan büyükse de iki farklı kökün olduğunu anlamamız gerekecek. Delta değerini bulduktan sonra da gerekli ekran bildirimlerini yapıp varsa kökleri ekrana yazdırmamız gerekecek. Kök bulma işlemlerini de kodda göreceğimiz gibi gerekli matematiksel işlemlerle buluyoruz. Ayrıca koda bir while döngüsü kullanarak yeni kök bulma işlemleri için programdan çıkmaktan kurtulmayı ve görsel güzelliği sağlayacağız. 

Programın Kodu:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]){
float a,b,c,Dx,kokDelta,devam=1;
char sec;
while(devam==1){
printf("ikinci dereceden terimin katsayisini girin:\n");
scanf("%f",&a);
printf("birinci dereceden terimin katsayisini girin:\n");
scanf("%f",&b);
printf("sabit terimi girin:\n");
scanf("%f",&c);
Dx=b*b-4*a*c;
kokDelta=sqrt(Dx);
  if(Dx<0){
    printf("Denklemin reel koku bulunmamaktadir!\n");
  }
  else{
    if(Dx==0){
      printf("Denklemin esit iki koku vardir!\n");
      printf("Iki kok de  : %f   dir!!\n",(-1*b)/(2*a));
    }
    else{
      printf("Denklemin farkli iki koku vardir!\n");
      printf("Kokler : %f   ve %f  dir!!\n",((-1*b)+kokDelta)/(2*a),((-1*b)-kokDelta)/(2*a));
    }
  }
  printf("\nAna menuye donmek istiyorsaniz 'E' yada 'e' girin\n\n");
  sec=getch();
  if(sec=='E'||sec=='e'){
  }
  else{
    devam=0;
  }
}
system("PAUSE");
return 0;
}





Programın Ekran Çıktısı: