Advertisement
Guest User

Untitled

a guest
Jan 18th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. #include <vector>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7. vector<char> states;
  8. for(char i = 'A'; i<= 'E'; i++){
  9. states.push_back(i);
  10. }
  11. // for(int i=0; i<states.size(); i++){
  12. // cout << states[i] << " ";
  13. // }
  14. string input;
  15. cin>>input;
  16.  
  17. int idx = 0;
  18. cout << "Starting state : "<<states[idx]<<endl;
  19. for(int i=0; i<input.size(); i++){
  20. if(input[i] == '0'){
  21. switch(idx){
  22. case 0: idx = 1; break;
  23. case 1: idx = 4; break;
  24. case 2: idx = 0; break;
  25. case 3: idx = 2; break;
  26. case 4: idx = 4; break;
  27. }
  28. }
  29. if(input[i] == '1'){
  30. switch(idx){
  31. case 0: idx = 0; break;
  32. case 1: idx = 0; break;
  33. case 2: idx = 4; break;
  34. case 3: idx = 3; break;
  35. case 4: idx = 3; break;
  36. }
  37. }
  38. if(input[i] == '2'){
  39. switch(idx){
  40. case 0: idx = 1; break;
  41. case 1: idx = 2; break;
  42. case 2: idx = 3; break;
  43. case 3: idx = 4; break;
  44. case 4: idx = 0; break;
  45. }
  46. }
  47. cout << "Input alphabet : "<< input[i] <<endl;
  48. cout << "Current State : " << states[idx] << endl;
  49. if(idx == 4){
  50. cout << "State is accepted\n";
  51. }else{
  52. cout << "State is not accepted\n";
  53. }
  54. cout << endl;
  55. }
  56. return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement