Turing Machine(Sonlu Otomata)

Pazartesi, 15 Eylül 2008 16:33 NEO
Yazdır

AÇIKLAMA

Bu program sonlu otomata olarak bilinen bir yapıdır.

Bu programda 4 adet durum bulunmaktadır.
Bunlar A,B,C,D
ve gelen 0 veya 1 değerine göre hangi durumda ise ya başka bir duruma geçer
yada kendi durumunda kalır,yazılan program şu algoritmaya göre çalışmaktadır.

Eğer durum A ise 0 geldiğinde C durumuna 1 geldiğinde B durumuna gitsin
Eğer durum B ise 0     "      D    "     1     "      B durumunda kalsın
Eğer durum C ise 0     "      B    "     1     "      A durumuna gitsin
Eğer durum D ise 0     "      C    "     1     "      A durumuna gitsin.

Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz.

Program Kodu:

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5. #include <stdio.h>
  6. #include <conio.h>
  7. //---------------------------------------------------------------------------
  8.  
  9. #pragma argsused
  10. int main(int argc, char* argv[])
  11. {
  12.   char durum;    int giris=0;
  13. printf("Lutfen ilk durumu giriniz(A,B,C,D):");
  14. scanf("%c",&durum);
  15. while(giris!=2)
  16. {
  17. printf("Lutfen bir input giriniz(0,1)(2 Cikmak Icin):");
  18. scanf("%d",&giris);
  19. if((giris==1)||(giris==0))
  20. {
  21.  
  22. if(durum=='A')
  23. {
  24. if(giris==0)
  25. {
  26. durum='C';
  27. printf("Simdiki durum %c\n",durum);
  28. }
  29. if(giris==1)
  30. {
  31. durum='B';
  32. printf("Simdiki durum %c\n",durum);
  33. }
  34. }
  35. else if(durum=='B')
  36. {
  37. if(giris==0)
  38. {
  39. durum='D';
  40. printf("Simdiki durum %c\n",durum);
  41. }
  42. if(giris==1)
  43. {
  44. durum='B';
  45. printf("Simdiki durum %c\n",durum);
  46. }
  47. }
  48. else if(durum=='C')
  49. {
  50. if(giris==0)
  51. {
  52. durum='B';
  53. printf("Simdiki durum %c\n",durum);
  54. }
  55. if(giris==1)
  56. {
  57. durum='A';
  58. printf("Simdiki durum %c\n",durum);
  59. }
  60. }
  61. else if(durum=='D')
  62. {
  63. if(giris==0)
  64. {
  65. durum='C';
  66. printf("Simdiki durum %c\n",durum);
  67. }
  68. if(giris==1)
  69. {
  70. durum='A';
  71. printf("Simdiki durum %c\n",durum);
  72. }
  73. }
  74.  
  75.  
  76.  
  77. }
  78. else
  79. {
  80. printf("Gecersiz giris....\n");
  81. }
  82. }
  83.         return 0;
  84. }
  85. //---------------------------------------------------------------------------
  86.  

Yorumlar
Yeni Ekle Ara
+/-
Yorum yaz
Adınız:
E-posta:
 
Web Sayfas1:
Başlık:
UBB Kodu:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Lütfen resimdeki güvenlik kodunu giriniz.

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Son Güncelleme ( Cuma, 03 Nisan 2009 00:08 )