Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Ghostrider2004
Anmeldungsdatum: 25.02.2013 Beiträge: 2
|
Verfasst am: 25.02.2013, 18:48 Titel: Text diagonal versetzt ausgeben |
|
|
Guten Abend an alle,
Wir haben heut in der Schule mit Qbasic angefangen und auch ne Hausaufgabe aufbekommen die ich absolut nicht Hinbekomme
Und zwar:
SCREEN 13
DO
x = x + 1
LOCATE x, 2
COLOR x
PRINT x
LOOP UNTIL x = 10
Es erscheinen Bunt die Zahlen von 1-10 Untereinander... JETZT KOMMT MEINE EIGENTLICHE FRAGE: Wie bekomm ich das hin das die Zahlen nicht untereinander sondern Diagonal angezeigt werden ???
Bitte Bitte helft mir
Editiert durch Moderator: Ursprünglichen Thementitel "Hausaufgabe in Qbasic" ersetzt. (Sebastian) |
|
Nach oben |
|
|
St_W
Anmeldungsdatum: 22.07.2007 Beiträge: 949 Wohnort: Austria
|
Verfasst am: 25.02.2013, 18:54 Titel: |
|
|
Wie wärs wenn du ein paar Leerzeichen vor den Zahlen ausgeben würdest? Also in der ersten Zeile z.B. keins, in der zweiten 2, in der dritten 4, in der vierten 8, usw.
Wie viele Leerzeichen du brauchst kommt drauf an, wie schön diagonal bzw. wie schräg das ganze sein soll.
Um die Leerzeichen ohne Zeilenumbruch auszugeben ändere den PRINT Befehl z.B. auf: Code: | PRINT SPACE(x*2); x |
_________________ Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken) |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 25.02.2013, 19:25 Titel: |
|
|
Hallo und willkommen im Forum!
Ghostrider2004 hat Folgendes geschrieben: | Wie bekomm ich das hin das die Zahlen nicht untereinander sondern Diagonal angezeigt werden ??? |
Dazu musst du in deinem Quelltext nur ein einziges Zeichen ändern, nämlich die Spaltenangabe hinter LOCATE. Der LOCATE-Befehl positioniert den Textcursor auf deinem Bildschirm. Die erste Zahl gibt dabei die Zeile an, die zweite die Spalte. In deinem jetzigen Code ist als Spalte fest "2" angegeben. Wenn du hier statt der "2" auch "x" schreibst, wird auch die Spalte mit jedem Schleifendurchlauf größer.
Code: | SCREEN 13
DO
x = x + 1
LOCATE x, x
COLOR x
PRINT x
LOOP UNTIL x = 10 |
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 25.02.2013, 20:30 Titel: |
|
|
Wer dafür noch eine "schöne" Lösung hätte: Am besten in kleine SUB einpacken. Ergebnis (Version für den Textmodus):
http://beilagen.dreael.ch/QB/DIAGPRT.BAS
Bei Grafik wäre dann eine entsprechende SUB auf PSET und POINT()-Basis sinnvoll, damit auch die Buchstaben selber entsprechend gedreht werden. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
Ghostrider2004
Anmeldungsdatum: 25.02.2013 Beiträge: 2
|
Verfasst am: 25.02.2013, 20:39 Titel: |
|
|
Sebastian hat Folgendes geschrieben: | Hallo und willkommen im Forum!
Ghostrider2004 hat Folgendes geschrieben: | Wie bekomm ich das hin das die Zahlen nicht untereinander sondern Diagonal angezeigt werden ??? |
Dazu musst du in deinem Quelltext nur ein einziges Zeichen ändern, nämlich die Spaltenangabe hinter LOCATE. Der LOCATE-Befehl positioniert den Textcursor auf deinem Bildschirm. Die erste Zahl gibt dabei die Zeile an, die zweite die Spalte. In deinem jetzigen Code ist als Spalte fest "2" angegeben. Wenn du hier statt der "2" auch "x" schreibst, wird auch die Spalte mit jedem Schleifendurchlauf größer.
Code: | SCREEN 13
DO
x = x + 1
LOCATE x, x
COLOR x
PRINT x
LOOP UNTIL x = 10 |
Viele Grüße!
Sebastian |
Du bist der Hammer... Vielen Vielen Dank |
|
Nach oben |
|
|
|