Info-GK ab SJ 2016/17

Mitschrift zum Unterricht

Aufgaben

        • Hausaufgabe für Montag, den 27.08.2018:
          Folgendes Video hilft vielleicht: Video-Link.
          Den Turingmaschinen-Simulator findet ihr hier.
          1. Wenden Sie die folgende Turingmaschine auf die Eingabe xxxx an:

          0 x y r 1
          0 _ _ r halt
          1 x x r 1
          1 _ _ r 2
          2 x x r 2
          2 _ x l 3
          3 x x l 3
          3 _ _ l 3
          3 y y r 0

          2. Entwickeln Sie eine Turingmaschine, die als Eingabe beliebig viele x’se erhält und diese verdoppelt (getrennt von einem Leerzeichen), d.h.

          xx → xx xx

Das Internet

Einführung in die Programmierung

  • Beispiel Methoden (Würfelspiel):
    class Main implements ActionListener{
    	
    	GUI gui=new GUI(this);
    	int amZug;
    	int felder1;
    	int felder2;
    	int letzteZahl;
    	public static void main(String[] args){
    		new Main();
    	}
    	
    	Main(){
    		amZug=1;
    		felder1=20;
    		felder2=20;
    	}
    	
    	void wuerfeln(){
    		letzteZahl = Math.floor(Math.random()*6+1);
    	}
    	
    	boolean istZugMoeglich(){
    		int neuesFeld;
    		if(amZug==1){
    			neuesFeld=felder1-letzteZahl;
    			if(neuesFeld>=0 && neuesFeld!=felder2){
    				return true;
    			}else{
    				return false;
    			}
    		}else{
    			neuesFeld=felder2-letzteZahl;
    			if(neuesFeld>=0 && neuesFeld!=felder1){
    				return true;
    			}else{
    				return false;
    			}
    		}
    	}
    	
    	void geheNachVorne(){
    		if(amZug==1){
    			felder1=felder1-letzteZahl;
    		}else{
    			felder2=felder2-letzteZahl;
    		}
    	}
    	
    	boolean zielErreicht(){
    		if(amZug==1){
    			if(felder1==0){
    				return true;
    			}else{
    				return false;
    			}
    		}else{
    			if(felder2==0){
    				return true;
    			}else{
    				return false;
    			}
    		}
    	}
    	
    	void gewonnen(){
    		gui.status.setText("Spieler "+amZug+" hat gewonnen");
    		gui.wuerfeln.setText("Neues Spiel starten");
    	}
    	
    	void spielerWechsel(){
    		if(amZug==1){
    			amZug=2;
    		}else{
    			amZug=1;
    		}
    	}
    	
    	boolean jemandHatGewonnen(){
    		if(felder1==0 || felder2==0){
    			return true;
    		}else{
    			return false;
    		}
    	}
    	
    	void updateGUI(){
    		if(jemandHatGewonnen()==false){
    			gui.status.setText("Spieler "+amZug+" ist am Zug");
    		}
    		gui.spieler1.setText("Spieler 1 (übrig): "+felder1);
    		gui.spieler2.setText("Spieler 2 (übrig): "+felder2);
    	}
    	
    	public void actionPerformed(ActionEvent ev){
    		wuerfeln();
    		if(istZugMoeglich() == true){
    			geheNachVorne();
    			if(zielErreicht()==true){
    				gewonnen();
    			}else{
    				spielerWechsel();
    			}
    		}else{
    			spielerWechsel();
    		}
    		updateGUI();
    	}
    }
    

    	Spieler 1 am Zug
    	Spieler 1 (übrig): 20
    	Spieler 2 (übrig): 20
    	Würfeln
    	
    
    

Bloggen auf WordPress.com.

Nach oben ↑

%d Bloggern gefällt das: