⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 programme.java

📁 Java编写的模仿图灵机的程序源代码
💻 JAVA
字号:
package Moteur;

import java.util.ArrayList;

import Affichage.AffichageCallBack;

/**
 * @author emiliendreyfus@msn.com
 *
 */
public class Programme {
	ArrayList<Regle> regles;
	ArrayList<Integer> terminaux;
	ArrayList<Variable> variables;
	
	
	public void addVar(Variable v){
		variables.add(v);
	}
	
	public void removeVar(int v){
		variables.remove(v);
	}
	
	AffichageCallBack aff;
	
	public void registerInterface(AffichageCallBack a){
		aff=a;
	}

	int etatCourant;

	public Curseur curseur=new Curseur();
	
	public Programme(){
		regles=new ArrayList<Regle>();
		terminaux=new ArrayList<Integer>();
		variables=new ArrayList<Variable>();
	}

	public boolean isTerminal(int etat) {
		for(int i=0;i<terminaux.size();i++)
			if(terminaux.get(i).equals(etat))return true;

		return false;
	}
	
	public ArrayList<Integer> getTerminaux() {
		return terminaux;
	}

	private int trouveRegle(int etat, char lettre){
		//On parcourt les regles
		for(int i=0;i<regles.size();i++){
			//Si l'閠at est le meme
			if(regles.get(i).etat==etat ){
				//et si la lettre est la meme
				if(regles.get(i).lettreLue==lettre)
					return i;  //On retourne l'indice
				
				//On parcourt les variables
				for(int j=0;j<variables.size();j++)
					//Si la lettre est dans une des variables
					if(variables.get(j).isIn(lettre)){
						return i;  //On retourne le numero de la regle
					}
			}
			
		
			
		}
		
		
		
		return -1;

		
	}

	public void setEntree(String s){
		curseur.setBande(new StringBuffer(s));
	}

	public boolean isReady(){
		if( curseur.getEntreeAvecCurseur()!=null){
			System.out.println("donn閑s en entr閑 pr閟entes");
			if( regles.size()>0){
				return true;
			}else System.out.println("pas assez de r鑗les dans le programme");
		}else System.out.println("Entr閑 non pr閟ente");
			return false;
	}


	public boolean run(){
		if(isReady()){
			aff.newLine("Systeme pr阾, lancement du programme:");
			//Je remet le curseur 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -