Pc Programlama Programlama Sitesi C++ Builder Java C C++ Php .Net

Anasayfa Programlama C / C++ Lig Maçları Skor Girişi ve Puan Tablosu


Lig Maçları Skor Girişi ve Puan Tablosu

AÇIKLAMA

Bu programda C veya C++ derleyicisinde lig maç skorları girişi ve puan tablosu (liderlik durumu) gibi parçaları bulunan bir futbol maç programı tasarlanmıştır. Lig programında ilgili maç skorları girildikten sonra sırasız olan kısımda takımların skor sonuçlarına göre verileri gösterilmektedir. Lig puan tablosu seçilirse veriler liderlik durumuna göre sıralanmaktadır. Program içindeki gets fonksiyonu konsoldan karakter dizisi(katar) okurken, atoi fonksiyonu ise karakter tipinde alınan rakamları tamsayı tipine çevirir. getchar fonksiyonu ise gets fonksiyonun scanf ile kullanılmasından dolayı oluşan  hatayı ( ikisi birlikte kullanıldığında scanf fonksiyonu bir newline karakter oluşturuyor gets fonksiyonu da onu görüp kullanıcıdan veri almadan direk programa devam ediyor) önlemek amacıyla kullanılmıştır.

Program Kodu:

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5. #include <conio.h>
  6. #include <stdio.h>
  7. int anamenu();
  8. //---------------------------------------------------------------------------
  9.  
  10. #pragma argsused
  11. int main(int argc, char* argv[])
  12. {
  13. String takimlar[10]={"Trabzonspor","Galatasaray","Besiktas","Fenerbahce","Sivasspor","Kayserispor","Ankaragucu","Antalyaspor","Malatyaspor","Bursaspor"};
  14. int puandurumu[10]={0,0,0,0,0,0,0,0,0,0};
  15. int averaj[10]={0,0,0,0,0,0,0,0,0,0};
  16. char skor[3];
  17. int takimbir,takimiki,birinci,ikinci;
  18. for(int i=0;i<3;i++)
  19. skor[i]=' ';
  20. int averaji;
  21. int donecezmi;
  22.  
  23. while((donecezmi=anamenu())!=3)
  24. {
  25. if(donecezmi==1)
  26. {
  27.  
  28. for(int i=0;i<10;i++)
  29. printf("%d.Takim %s\n",i+1,takimlar[i]);
  30. printf("\n");
  31. printf("1.Takimi Giriniz(1 ile 10 Arasinda Bir Sayi):");
  32. scanf("%d",&takimbir);
  33. getchar();
  34. printf("2.Takimi Giriniz(1 ile 10 Arasinda Bir Sayi):");
  35. scanf("%d",&takimiki);
  36. getchar();
  37. printf("\n");
  38. printf("%s ile %s Arasindaki Skoru Giriniz(Ornek 3-0):",takimlar[takimbir-1],takimlar[takimiki-1]);
  39. gets(skor);
  40. int skor1=atoi(&skor[0]);
  41. int skor2=atoi(&skor[2]);
  42.  
  43. printf("\n");
  44. if(skor1>skor2)
  45. {
  46.  averaji=skor1-skor2;
  47.  puandurumu[takimbir-1]+=3;
  48.  averaj[takimbir-1]+=averaji;
  49.  averaj[takimiki-1]-=averaji;
  50. }
  51. else if(skor2>skor1)
  52. {
  53.  averaji=skor2-skor1;
  54.  puandurumu[takimiki-1]+=3;
  55.  averaj[takimiki-1]+=averaji;
  56.  averaj[takimbir-1]-=averaji;
  57. }
  58. else if(skor1==skor2)
  59. {
  60. puandurumu[takimbir-1]+=1;
  61. puandurumu[takimiki-1]+=1;
  62. }
  63. printf("\n Takimlar      Puan   Averaj\n");
  64. for(int i=0;i<10;i++)
  65. printf("%s %d %d\n",takimlar[i],puandurumu[i],averaj[i]);
  66. }//ilk if
  67. if(donecezmi==2)
  68. {
  69. int puansiralamasi[10];
  70. String takimsiralamasi[10];
  71. int takimaveraji[10];
  72. for(int z=0;z<10;z++)
  73. {
  74.  puansiralamasi[z]=puandurumu[z];
  75.  takimsiralamasi[z]=takimlar[z];
  76.  takimaveraji[z]=averaj[z];
  77. }
  78.  for(int i=0;i<10;i++)
  79.   {
  80.    for(int j=i+1;j<10;j++)
  81.    {
  82.      if(puansiralamasi[i]<puansiralamasi[j])
  83.      {
  84.         String temp=takimsiralamasi[i];
  85.         takimsiralamasi[i]=takimsiralamasi[j];
  86.         takimsiralamasi[j]=temp;
  87.         int gecici=puansiralamasi[i];
  88.         puansiralamasi[i]=puansiralamasi[j];
  89.         puansiralamasi[j]=gecici;
  90.         int tampon=takimaveraji[i];
  91.         takimaveraji[i]=takimaveraji[j];
  92.         takimaveraji[j]=tampon;
  93.      }
  94.      else if(puansiralamasi[i]==puansiralamasi[j])
  95.      {
  96.       if(takimaveraji[i]<takimaveraji[j])
  97.       {
  98.         String temp=takimsiralamasi[i];
  99.         takimsiralamasi[i]=takimsiralamasi[j];
  100.         takimsiralamasi[j]=temp;
  101.         int gecici=puansiralamasi[i];
  102.         puansiralamasi[i]=puansiralamasi[j];
  103.         puansiralamasi[j]=gecici;
  104.         int tampon=takimaveraji[i];
  105.         takimaveraji[i]=takimaveraji[j];
  106.         takimaveraji[j]=tampon;
  107.       }
  108.      }
  109.    }
  110.   }
  111.  
  112.  
  113.  
  114. printf("LIDERLIK DURUMU\n Takimlar      Puan   Averaj\n");
  115. for(int i=0;i<10;i++)
  116. printf("%s %d %d\n",takimsiralamasi[i],puansiralamasi[i],takimaveraji[i]);
  117.  
  118.  
  119. }  //ikinci if
  120. } //while
  121. printf("Iyi Günler");
  122. getche();
  123. return 0;
  124. }
  125. //---------------------------------------------------------------------------
  126. int anamenu()
  127. {
  128. int secim;
  129. printf("\n");
  130. printf("Skor Girmek Icin (1)\nLig Puan Tablosu Icin (2)\nCikis (3)\n\nSeciminizi Giriniz:");
  131. scanf("%d",&secim);
  132. getchar();
  133. printf("\n");
  134. return secim;
  135. }
  136. //---------------------------------------------------------------------------
  137.  
  138.  
Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Çarşamba, 07 Eylül 2011 02:07 )  

PC PROGRAMLAMA GİRİŞ



Kimler Çevrimiçi

Yok