2017-04-03 3 views
-1

Zeichnen Sie unter Matrix mit C++. Problem erfordern eine Funktion, die in die main() aufgerufen werden könnte.Wie zeichne gewünschte Matrix mit C++?

x!x!x 
~~~~~ 
x!x!x 
~~~~~ 
x!x!x 

Ich habe versucht, den Standort 0,2,4 zu vergleichen. und habe versucht zu drucken, aber gibt es noch eine andere Möglichkeit, dieses Problem zu lösen?

+1

Incoming Kritiker auf die Frage in 3..2..1 – ZivS

+2

Eine andere "mache meine Hausaufgaben" -Frage – RoiHatam

+0

1) Verwenden Sie 2 verschachtelte Schleifen, eine für Zeilen und eine für Spalten. 2) Nachschlagen 'Std :: Breite' oder 'std :: cout.width' 3) Verwenden Sie eine 'if'-Anweisung, um Trennzeichen in Zeilen zu platzieren 4) Durchsuchen Sie das Internet nach" C++ tic-tac-toe example "für ähnliche Beispiele. –

Antwort

0

Wenn die Matrix Zeichen sind, können Sie so etwas tun könnte:

char board[] = 
    "x|x|x\n" 
    "-+-+-\n" 
    "x|x|x\n" 
    "-+-+-\n" 
    "x|x|x\n" 
    ; 

Die Spalten mit den Zeichen 'x' bei Indizes befinden sich 0, 2, 4, 14, 16, 18, 26, 28, 30. Zeilenindizes sind 0, 14 und 28.

Hinweis: Es gibt 6 Zeichen pro Zeile.
Hinweis: Spalten-Indizes sind (Zeile * (Zeichen pro Zeile)) + ((Spalte - 1) * (2 Zeichen pro Zeile))

Dies hat den schönen Vorteil einzige Anforderung eine Aussage zu drucken:

std::cout.write(&board[0], sizeof(board) - 1U); 

die - 1U ist so, dass der Abschluss nul nicht zu cout gesendet wird.