// Liefert die Diagonale, die von rechts oben nach links unten durch die
// angegebene Zeile und Spalte geht.
Liefert die Diagonale, die von rechts oben nach links unten durch die
angegebene Zeile und Spalte geht.
// Liefert die Diagonale die von rechts oben nach links unten durch die // angegebene Zeile und Spalte geht .
func GetDiagonal2(board [][]string, row, col int) []string {
	var result []string
	for r, c := 0, col+row; r < len(board); r, c = r+1, c-1 {
		if c >= 0 && c < len(board[r]) {
			result = append(result, board[r][c])
		}
	}
	return result
}
func GetDiagonal2 ( board [ ] [ ] string , row , col int ) [ ] string { var result [ ] string for r , c := 0 , col + row ; r < len ( board ) ; r , c = r + 1 , c - 1 { if c >= 0 && c < len ( board [ r ] ) { result = append ( result , board [ r ] [ c ] ) } } return result }
Liefert die Diagonale, die von rechts oben nach links unten durch die
angegebene Zeile und Spalte geht.
Liefert die Diagonale die von rechts oben nach links unten durch die angegebene Zeile und Spalte geht .
// Ähnlicher Ansatz wie bei GetDiagonal1(), aber wir benutzen dieses mal nicht das // Minimum, sondern wir setzen für den Start bedingungslos die Zeile auf 0. // Die Schleife läuft durch alle Zeilen. Dabei kann es sein, dass die Spalte // zu klein (negativ) oder zu groß (größer als die Länge) ist. Dies wird in der // Schleife geprüft.