Drucken Sie eine kontinuierliche Sinuswelle, die vertikal auf einem Terminal gescrollt wird. Das Programm sollte nicht beendet werden und die Welle kontinuierlich nach unten rollen (außer bis es irgendwie unterbrochen wird). Sie können davon ausgehen, dass ein Überlauf kein Problem darstellt (dh Sie können Endlosschleifen mit inkrementierenden Zählern oder eine Endlosrekursion verwenden).
Die Welle sollte die folgenden Eigenschaften erfüllen:
- Amplitude = 20 Zeichen (Spitzenamplitude)
- Periode = 60 bis 65 Zeilen (inklusive)
- Die Ausgabe sollte nur aus Leerzeichen, Zeilenvorschub und bestehen
|
- Halten Sie nach jeder Ausgabezeile eine Pause von 50 ms ein
Beispielausgabe:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Die obige Ausgabe sollte für immer eingeschaltet bleiben, sofern nichts anderes unterbrochen wird, z. B. SIGINT oder SIGKILL oder das Schließen des Terminalfensters, oder Sie schalten Ihre Maschine aus, oder die Sonne verschluckt die Erde usw.
Kürzester Code gewinnt.
Hinweis. Ich kenne ein ähnliches Problem bei Display Scrolling Waves, aber das ist nicht genau dasselbe. Bei meinem Problem soll die Welle nicht "an Ort und Stelle" gescrollt werden - sondern nur auf einem Terminal ausgegeben werden. Dies ist auch ein Ascii-Art-Problem, verwenden Sie also nicht Mathematica, um es zu zeichnen.