[java] DFA

Viewer

  1. package contohdfa;
  2.  
  3. import java.util.Scanner;
  4.  
  5. public class ContohDFA {
  6.  
  7.     static int dfa = 0;
  8.     
  9.     static void q0(char c){
  10.         if(== 'a'){
  11.             dfa = 1;
  12.         }else if(== '0' || c == '1'){
  13.             dfa = 2;
  14.         }else{
  15.             dfa = -1;
  16.         }
  17.     }
  18.     
  19.     static void q1(char c){
  20.         if(== 'a' || c == '0' || c == '1'){
  21.             dfa = 1;
  22.         }else{
  23.             dfa = -1;
  24.         }
  25.     }
  26.     
  27.     static void q2(char c){
  28.         if(== 'a' || c == '0' || c == '1'){
  29.             dfa = 2;
  30.         }else{
  31.             dfa = -1;
  32.         }
  33.     }
  34.     
  35.     static boolean isAccepted(char input[]){
  36.         int i;
  37.         for (= 0; i < input.length; i++) {
  38.             if(dfa == 0)
  39.                 q0(input[i]);
  40.             else if(dfa == 1)
  41.                 q1(input[i]);
  42.             else if(dfa == 2)
  43.                 q2(input[i]);
  44.             else
  45.                 return false;
  46.         }
  47.         if(dfa == 1)
  48.             return true;
  49.         else
  50.             return false;
  51.     }
  52.     
  53.     public static void main(String[] args) {
  54.         Scanner scan = new Scanner(System.in);
  55.         String input = scan.nextLine();
  56.         char arrayInput[] = input.toCharArray();
  57.         if(isAccepted(arrayInput))
  58.             System.out.println("Accepted");
  59.         else
  60.             System.out.println("Not Accepted");
  61.         
  62.     }   
  63. }
  64.  

Editor

You can edit this paste and save as new:


File Description
  • DFA
  • Paste Code
  • 10 Apr-2021
  • 1.4 Kb
You can Share it: