You are not logged in.

  • Login

1

Sunday, December 14th 2008, 12:23pm

4 gewinnt

hi bin student an der uni darmstadt und wir haben gerade mit java angefangen
nun habe ich folgende hausübung abzugeben das spiel 4 gewinnt

code:
in diesem code soll noch nun putInColumn erstellen sowie prüfen ob hasfor vertically und so weiter zutrifft. ich habe keinen plan welcher code da rein muss , hilfe erwünscht :-)

Java Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
public class ConnectFour extends ConsoleProgram /* DialogProgram */{
  // state variables of this object
  int width = 7;
  int height = 6;
  char[][] board = new char[width][height];
 
  /**
   * Main loop of the program. Let players take turns entering moves until one
   * player wins or the board is full, in which case the game is a draw.
   */
  public void run() {
    int player = 1;
    println("---- 4 GEWINNT -----");
 
    // no winner yet.
    int winner = 0;
 
    while (winner == 0 && !isFull()) {
      // print the current board
      printBoard();
      // prompt the current player to enter a move
      promptPlayerMessage(player);
      // read the move from the player
      int x = readInt();
 
      // terminate when -1 is entered
      if (x == -1)
        System.exit(0);
 
      // players count from 1, Java from 0
      x--;
 
      // is input in correct range?
      if (x >= 0 && x < width) {
        // valid move, perform it
        int y = putInColumn(x, player);
        if (y == -1)
        // output row is full message
          rowFullMessage(x);
        else if (hasWon(x, y))
          winner = player;
        else
          // next player
          player = 3 - player;
      } else
        // invalid move
        errorMessage();
 
    }
    // game has ended, either we have a winner or a draw
    if (winner == 0)
 
      drawMessage();
    else
      winMessage(winner);
  }
 
  /**
   * Initializes the Connect Four Game
   *
   */
  public ConnectFour() {
    init();
  }
 
  /**
   * Returns the char that represents a player (i.e. x or o)
   *
   * @param playerNo
   *          number of the player, i.e. 1 or 2
   * @return the char for the player
   */
  public char getPlayerChar(int playerNo) {
    char[] playerChars = { 'x', 'o' };
    return playerChars[playerNo - 1];
  }
 
  /**
   * Prints the current board For example:
   * |
   * |
   * |
   * | o x
   * | o x x
   * |o x x o x
   * -------------
   *  1 2 3 4 5 6 7
   *
   */
  public void printBoard() {
      StringBuffer sb = new StringBuffer();
      for (int i = 0; i < height; i++) {
        // start of a line
        sb.append("|");
        for (int j = 0; j < width; j++) {
          sb.append(board[j][i]).append(' ');
        }
        // end of a line
        sb.append('\n');
      }
      sb.append(" -------------\n");
      sb.append(" 1 2 3 4 5 6 7");
      println(sb.toString());
  }
 
  /**
   * Checks whether the game is won and who won the game
   *
   * @return the number of the winner (i.e. 1 or 2) or 0 if no one has yet won
   *         the game
   */
  public boolean hasWon(int x, int y) {
    return (hasFourHorizontally(x, y) || hasFourVertically(x, y)
        || hasFourDiagonally(x, y));
   }
 
  /**
   * Checks whether another game piece can be added
   *
   * @return true if the board is full
   */
  public boolean isFull() {
    for (int x = 0; x < width; x++)
      if (board[x][0] == '_')
        return false;
    return true;
  }
 
 
 
  /**
   * Test whether there are four gaming pieces with the given char above each
   * other. Only checking column x needed as this is the only column a vertical
   * four-in-a-row could have been created in this turn.
   *
   * @param x
   *          column of the last added piece
   * @param y
   *          row of the last added piece
   * @return whether their are four gaming pieces above each other
   */
  public boolean hasFourVertically(int x, int y) {
    //TODO implement
    return false;
  }
 
  /**
   * Test whether there are four gaming pieces with the given char next to each
   * other. Only checking column x needed as this is the only column a horizontal
   * four-in-a-row could have been created in this turn.
   *
   * @param x
   *          column of the last added piece
   * @param y
   *          row of the last added piece
   * @return whether their are four gaming pieces next to each other
   */
  public boolean hasFourHorizontally(int x, int y) {
    //TODO implement
    return false;
  }
 
 
  /**
   * Test whether there are 4 gaming pieces next to each other on a diagonal.
   * Only checking column x needed as this is the only column a horizontal
   * four-in-a-row could have been created in this turn.
   *
   * @param x
   *          column of the last added piece
   * @param y
   *          row of the last added piece
   * @return whether there are 4 gaming pieces next to each other on a diagonal
   */
  public boolean hasFourDiagonally(int x, int y) {
    //TODO implement
    return false;
  }
 
 
  /**
   * Initialize the board with blanks
   *
   */
  public void init() {
    //TODO implement
	  board[6][5] = '_'; 
 
  }
 
 
  /* messages */
  private void promptPlayerMessage(int p) {
    //TODO implement
	  println("Spielerszug "+p);
  }
 
  private void rowFullMessage(int x) {
    //TODO implement
	  println("Die Reihe ist voll");
  }
 
  private void winMessage(int p) {
    //TODO implement
	  println("Es gewinnt Spieler" +p);
  }
 
  private void drawMessage() {
    //TODO implement
	  println("unentschieden keiner gewinnt ihr Affen");
  }
 
  private void errorMessage() {
    //TODO implement
	  showErrorMessage("Eingabe falsch etwas stimmt nicht!!!");
 
  }
 
  /**
   * Put a gaming piece on top of the gaming pieces in the given column by the
   */
  public int putInColumn(int column, int playerNo) {
    //TODO put piece of player in column
 
    return -1;
  }
 
 
  /**
   * Main method. This is automatically called by the environment when your
   * program starts.
   *
   * @param args
   */
  public static void main(String[] args) {
    new ConnectFour().run();
  }
}

This post has been edited 1 times, last edit by "danny_k" (Dec 14th 2008, 10:10pm)


2

Sunday, December 14th 2008, 1:00pm

Der JavaDOC-Kommentar für putInColumn() scheint nicht vollständig zu sein. Entweder du hast nicht alles hier ein gepostet, oder es wurde etwas vergessen. Dann solltest du den Aufgabensteller einmal nach dem vollständigen Java-DOC Kommentar fragen. Die drei hasFour-Methoden sind so deutlich beschrieben, dass du sie auch allein lösen kannst.

Edit:
ich habe mit das Programm mal näher angeschaut und weiß nun was du in putInColumn tun musst. Einen neuen Spielstein des übergebenen Spielers in der übergebenen Spalte platzieren. Wenn die Spalte schon voll ist, dann gibst du -1 zurück, ansonsten 0.

This post has been edited 2 times, last edit by "Hafner" (Dec 14th 2008, 1:09pm)


3

Sunday, December 14th 2008, 1:10pm

Bitte benutze doch Code Tags zur Schonung der Augen deiner Leser. Danke

4

Sunday, December 14th 2008, 3:00pm

hi

ja danke erstmal

leider bin ich noch ziemicher anfänger und habe noch nicht so wirklich plan was ich für die hasFour funktion genau implementieren soll bsp. wäre sehr gut

Sorry Wie funktioniert das mit den tags

5

Sunday, December 14th 2008, 4:29pm

Sorry Wie funktioniert das mit den tags

Du hast unter deinem Edit Feld, wenn du einen Beitrag erstellst, eine Reihen bunter Symbole, welche zum Reiter Syntax gehören. da gibt es unter anderem Bash, D und C++, C#, etc. Da drauf klicken und dann zwischen syntax="***"] und [/syntax deinen code einfügen.

6

Sunday, December 14th 2008, 6:29pm

RE: hi


leider bin ich noch ziemicher anfänger und habe noch nicht so wirklich plan was ich für die hasFour funktion genau implementieren soll bsp. wäre sehr gut

Aber was über den Funktionen steht hast du dir durchgelesen, oder? Ich weiß nicht was ich da noch mehr dazu sagen soll. Die Typen int und boolean sind dir bekannt oder? Wo liegt den dein Problem konkret? Fällt dir keine algorithmische Lösung ein? Bezüglich der Syntax hast du ja in dem von dir geposteten Code selbst genug Beispiele.

Die fertige Lösung wirst du von mir hier nicht pressentiert bekommen. Bei konkteten Problemen helfe ich dagegen gern.

7

Sunday, December 14th 2008, 9:00pm

hi,

ja es geht um die algorythmsche lösung. int arrays char ok, aber wie prüfe ich ob nun eine diagonale oder verticale auf irgendeiner position besteht . es fällt mir etwas schwer da die die genaue lösung für die funktionen zu verstehen.

wie prüfe ich also ob 4 steine übereinstimmen auf irgendeinem platz in reihe. for schleife ? while? eventuell . spielernummer dazu?

8

Sunday, December 14th 2008, 9:18pm

Also, du hast ja bei z.B. hasFourHorizontally die 2 Koordinaten. Mittels x und y und dem board Array kannst du ja raus finden was für ein Stein das ist (also von welchem Spieler), denn der Stein ist ja schon gesetzt. Wenn du also den char aus dem Board ausgelesen hast, musst du also nur noch prüfen ob auf der selben Reihe vier gleiche chars sind.
Was in deinem Array Reihen und was Spalten sind, solltest du eigentlich in der printBoard()-Methode am besten nachvollziehen können. Allerdings scheint die Methode nicht völlig richtig zu sein. Hast du die implementiert oder wurde die so vorgegeben?
Das

Java Quellcode

1
sb.append(board[j]).append(' ');

sieht nicht ganz richtig aus. Ich würde eher sowas

Java Quellcode

1
sb.append(board[j][i]).append(' ');

erwarten.

Edit:
Da das board so initialisiert wird:

Java Quellcode

1
char[][] board = new char[width][height];

sollte klar sein was Zeilen und was Spalten sind.

This post has been edited 1 times, last edit by "Hafner" (Dec 14th 2008, 9:33pm)


9

Sunday, December 14th 2008, 10:15pm

wir studenten haben eine package bekommen das bsp. println beeinhaltet

es is alles vorgegebn bis auf

System.out.println Ausgabe die durch das println hier angeben sind. Sprich die meldung gewinner unentschieden etc. das kommt von mir

die init prozedur ebenfalls von mir der rest ist vorgegeben

sb.append ist mir auch nicht so klar was das macht append fügt doch mehrere Felder zusammen oder?

so mein code für FourHorizontally der kann nicht stimmen denk ich aber bewge ich mich auf die richtige lösung zu??

Java Quellcode

1
2
3
4
5
6
public boolean hasFourHorizontally(int x, int y) {
		// TODO implement
		for (x = 0; x < 4; x++)
			if (board[x][y] == 'x')
					return true;
		return false;


ok wie lese ich mit char den letzt gelegenen stein aus? erstmal das :-<
ja das mit dem stringbuffer ist von der uni vorgegeben

This post has been edited 5 times, last edit by "danny_k" (Dec 15th 2008, 12:35am)


10

Monday, December 15th 2008, 12:07am

Ja, append hängt nur etwas am ende des StringBuffers an. Warum man überhaupt StringBuffer und nicht String verwendet und dann nicht einfach den plus-Operator ist mir schleierhaft. Das ist aber nicht das, was ich meinte. Ich meinte die Adressierung der Zelle im Array, die meiner Meinung nach unvollständig ist.

Was deinen Code-Ausschnitt angeht:
Du weißt wie eine for-Scheife funktioniert? "x = 0;" überschreibst erst einmal die dir übergebene x-Variable mit 0 (damit verlierst du schon mal die Spalte des aktuell gelegten Steins). Dann gehst du für 0, 1, 2, 3, 4 (warum für 5 Werte?) die for-Scheife durch. Jetzt prüfst du ob ob die Zelle den char 'x' enthält. Warum x? Es könnte ja auch der andere Spieler gewesen sein. Lese doch erst mal den char des zuletzt gelegten Steins aus dem board aus, damit du weist wer zuletzt dran war. Zudem gibst du 0 als Wert für die Zeile des boards an. Wie kommst du auf 0? Ich denke es wäre hier sinnvoll die Zeilennummer des zuletzt gelegten Steines zu verwenden, also y. Nun wird es noch kurioser, wenn "board[x][0] == 'x'" wirklich wahr sein sollte, dann prüfst du noch "board[x][0] == 'o'". Beides zusammen kann gar nicht wahr sein. Deine Methode gibst also immer false zurück.

This post has been edited 1 times, last edit by "Hafner" (Dec 15th 2008, 12:24am)


11

Monday, December 15th 2008, 12:45am

Java Quellcode

1
2
3
4
5
6
7
8
public boolean hasFourHorizontally(int x, int y) {
		// TODO implement
		int playerChars = x;
		for (x = 0; x <= 4; x++)
			if (board[x][0] == y)
					return true;
		return false;
	}


Was meint ihr dazu ? :-<(

12

Monday, December 15th 2008, 1:18am

board[x][0] == y ???
Das compiliert doch nicht oder? Warum sollte der char von board[x][0] der selbe sein wie die int-y-Koordinate des zuletzt gelegten Steins? Bist du dir bewusst, dass bei einem return die Methode verlassen wird, völlig egal ob du noch in Schleifen bist oder nicht?

Also, ich formuliere es mal in Worten:
1. Den char des zuletzt gelegten Steines mit Hilfe der x und y Koordinaten aus dem board-Array holen.
2. Zählen, wie viele Steine nacheinander (!) links und rechts von dem aktuellen Stein den selben char im board-Array haben.
3. Wenn die Summe der gezählten Steine links, der gezählten Steine rechts größer/gleich als 3 ist, dann gibst du true zurück ansonsten false (3 deshalb, da der gerade gelegte Stein ja auch einer ist).

13

Wednesday, December 17th 2008, 5:14pm

hi,

So leut ich hab das jetzt so gelöst

Java Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
import acm.program.ConsoleProgram;
import acm.program.DialogProgram;
 
public class ConnectFour extends ConsoleProgram /* DialogProgram */{
	// state variables of this object
	int width = 7;
	int height = 6;
	char[][] board = new char[width][height];
 
	/**
	 * Main loop of the program. Let players take turns entering moves until one
	 * player wins or the board is full, in which case the game is a draw.
	 */
	public void run() {
		int player = 1;
		println("---- 4 GEWINNT -----");
 
		// no winner yet.
		int winner = 0;
 
		while (winner == 0 && !isFull()) {
			// print the current board
			printBoard();
			// prompt the current player to enter a move
			promptPlayerMessage(player);
			// read the move from the player
			int x = readInt();
 
			// terminate when -1 is entered
			if (x == -1)
				System.exit(0);
 
			// players count from 1, Java from 0
			x--;
 
			// is input in correct range?
			if (x >= 0 && x < width) {
				// valid move, perform it
				int y = putInColumn(x, player);
				if (y == -1)
					// output row is full message
					rowFullMessage(x);
				else if (hasWon(x, y))
					winner = player;
				else
					// next player
					player = 3 - player;
			} else
				// invalid move
				errorMessage();
 
		}
		// game has ended, either we have a winner or a draw
		if (winner == 0)
 
			drawMessage();
		else
			winMessage(winner);
	}
 
	/**
	 * Initializes the Connect Four Game
	 * 
	 */
	public ConnectFour() {
		init();
	}
 
	/**
	 * Returns the char that represents a player (i.e. x or o)
	 * 
	 * @param playerNo
	 *            number of the player, i.e. 1 or 2
	 * @return the char for the player
	 */
	public char getPlayerChar(int playerNo) {
		char[] playerChars = { 'x', 'o' };
		return playerChars[playerNo - 1];
	}
 
	/**
	 * Prints the current board For example: | | | |o x |o x x |o x x o x
	 * ------------- 1 2 3 4 5 6 7
	 * 
	 */
	public void printBoard() {
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < height; i++) {
			// start of a line
			sb.append("|");
			for (int j = 0; j < width; j++) {
				sb.append(board[j][i]).append(' ');
			}
			// end of a line
			sb.append('\n');
		}
		sb.append(" -------------\n");
		sb.append(" 1 2 3 4 5 6 7");
		println(sb.toString());
	}
 
	/**
	 * Checks whether the game is won and who won the game
	 * 
	 * @return the number of the winner (i.e. 1 or 2) or 0 if no one has yet won
	 *         the game
	 */
	public boolean hasWon(int x, int y) {
		return (hasFourHorizontally(x, y) || hasFourVertically(x, y) || hasFourDiagonally (x, y));}
 
	/**
	 * Checks whether another game piece can be added
	 * 
	 * @return true if the board is full
	 */
	public boolean isFull() {
		for (int x = 0; x < width; x++)
			if (board[x][0] == '_')
				return false;
		return true;
	}
 
	/**
	 * Test whether there are four gaming pieces with the given char above each
	 * other. Only checking column x needed as this is the only column a
	 * vertical four-in-a-row could have been created in this turn.
	 * 
	 * @param x
	 *            column of the last added piece
	 * @param y
	 *            row of the last added piece
	 * @return whether their are four gaming pieces above each other
	 */
	public boolean hasFourVertically(int x, int y) {
		int win = 0;
		for (int i = 0; i < height; i++) {
			if (board[x][i] == board[x][y])
				win++;
			else
				win = 0;
			if (win == 4)
				return true;
		}
		return false;
	}
 
	/**
	 * Test whether there are four gaming pieces with the given char next to
	 * each other. Only checking column x needed as this is the only column a
	 * horizontal four-in-a-row could have been created in this turn.
	 * 
	 * @param x
	 *            column of the last added piece
	 * @param y
	 *            row of the last added piece
	 * @return whether their are four gaming pieces next to each other
	 */
	public boolean hasFourHorizontally(int x, int y) {
		// TODO implement
		// int playersymbol = board [x][y];
		int win = 0;
		for (int i = 0; i < width; i++) {
			if (board[i][y] == board[x][y])
				win++;
			else
				win = 0;
			if (win == 4)
				return true;
		}
 
		return false;
	}
 
	/**
	 * Test whether there are 4 gaming pieces next to each other on a diagonal.
	 * Only checking column x needed as this is the only column a horizontal
	 * four-in-a-row could have been created in this turn.
	 * 
	 * @param i
	 *            column of the last added piece
	 * @param j
	 *            row of the last added piece
	 * @return whether there are 4 gaming pieces next to each other on a
	 *         diagonal
	 */
 
 
	public boolean hasFourDiagonally(int x, int y) {
		int playerSymbol = board[x][y];
		int i = x;
		int j = y;
		int count = 0;
 
		while ((i > 0) && (j > 0)) {
			i--;
			j--;
		}
 
		while ((i <= 6) && (j <= 5)) {
			if (board[i][j] == playerSymbol)
				count++;
			else
				count = 0;
			i++;
			j++;
		}
		if (count == 4)
			return true;
		return false;
	}
 
	/**
	 * Initialize the board with blanks
	 * 
	 */
	public void init() {
		for (int i = 0; i < width; i++) { // i = höhe
			for (int j = 0; j < height; j++) { // j = breite
				board[i][j] = '_';
			}
		}
	}
 
	/* messages */
	private void promptPlayerMessage(int p) {
		// TODO implement
		println("Spielerszug " + p);
	}
 
	private void rowFullMessage(int x) {
		// TODO implement
		println("Die Reihe ist voll");
	}
 
	private void winMessage(int p) {
		printBoard();
		// TODO implement
		println("Es gewinnt Spieler " + p);
	}
 
	private void drawMessage() {
		// TODO implement
		println("unentschieden keiner gewinnt ihr Affen");
	}
 
	private void errorMessage() {
		// TODO implement
		showErrorMessage("Eingabe falsch etwas stimmt nicht!!!");
 
	}
 
	/**
	 * Put a gaming piece on top of the gaming pieces in the given column by the
	 */
	public int putInColumn(int column, int playerNo) {
		// Zählt die höhe herunter bis auf 0
		for (int y = height - 1; y >= 0; y--) {
			// Wenn array '_' das entspricht
			if (board[column][y] == '_') {
				board[column][y] = getPlayerChar(playerNo);
				return y;
			}
		}
		return -1;
	}
 
	/**
	 * Main method. This is automatically called by the environment when your
	 * program starts.
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		new ConnectFour().start();
	}
}

14

Wednesday, December 17th 2008, 6:51pm

Kann es sein das du bei hasFourDiagonally nur eine der 2 Diagonalen prüfst?

15

Thursday, December 18th 2008, 10:50am

Ja genau so sieht das aus. Verticcaly prüft nur eine Richtung der Verticale also von oben links nach recht unten, nicht aber von unten links nach rechts oben.
Neue prozedur muss her und ein paar variablen ändern bei der Vertically und dann müsste es gehen

16

Saturday, January 3rd 2009, 4:10pm

und weiter 4 Gewinnt

Hi Leute ich mal für dieses 4 Gewinnt eine prozedur geschrieben die 4 Vertikale also von links unten nach rechts oben einen sieg bringen soll.

Geht aber nicht schaut euch bitte mal den code an und erklärt mir mal bitte wo der fehler liegt ich weiß es echt nicht. Danke

Java Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public boolean hasFourDiagonally(int x, int y) {
		int playerSymbol = board[x][y];
		int Spalte = x;
		int Hoehe = y;
		int count = 0;
 
		while ((Spalte >= 0) && (Hoehe <= 5)) {
			Spalte--;
			Hoehe++;
 
		}
		while ((Spalte < 6) && (Hoehe >= 5)) {
			if (board[Spalte][Hoehe] == playerSymbol)
				count++;
			else
				count = 0;
			Spalte++;
			Hoehe--;
		}
		if (count == 4)
			return true;
		return false;
 
	}


Also meine Überlegung ist halt mit der ersten while Schleife setze ich den start der prozedur fest, dass wäre dann in dem graph links unten.
dann soll er halt prüfen ob es vier diagonale überseisntimmen. wenn ja true also sieg wenn nicht dann halt false

17

Saturday, January 3rd 2009, 7:55pm

Wie bist du denn an das Problem herangegangen?
Ich würde dir empfehlen die count ausgaben zum Debuggen in die Matrix zu schreiben..

Source code

16
17
18
19
				count = 0;
			board[Spalte][Hoehe] = count;
			Spalte++;
			Hoehe--;


Außerdem sollte die True-Bedingung >= 4 sein.

Kleinigkeit :Als Konvention schreibt man Variablennamen einfacher Datentypen klein.

18

Saturday, January 3rd 2009, 8:20pm

AAlso oben ist der komplette code mit einer gethorizontally prozedur die von unten rechts nach oben links die punkte zählt und funktioniert. so etwa sollte das eigentlich mit der engegengesetzten funktionieren

Similar threads

Social bookmarks