今回はPythonで文字を使ってsinとcosの波を表示させます。
サンプルコード
import hmath
θ = -1
from time import sleep
size = 30 # 波の横の長さ 画面入りきらない場合はこの値を小さくするとよい
print(" Sin Cos")
while True: # 無限ループ
θ += 1 # 角度(度数)
# 度をラジアンに変換し計算
sin = hmath.sin(hmath.radian(θ))
cos = hmath.cos(hmath.radian(θ))
# 小数点以下6桁までにする
new_sin = round(sin * 100000) / 100000
new_cos = round(cos * 100000) / 100000
# 文字数の長さをそろえるため0を追加する
new_cos = str(new_cos) + "0" * (7 - len(str(abs(new_cos))))
new_sin = str(new_sin) + "0" * (7 - len(str(abs(new_sin))))
# 文字の長さをそろえるため0以上だったら+をつける
if 0 <= cos:
new_cos = "+" + str(new_cos)
if 0 <= sin:
new_sin = "+" + str(new_sin)
# 表示するSとCの数
sin_ = round(sin * size + 0.5) + size
d = round(cos * size + 0.5) + size
# 一行表示
print(" " * (10 - len(str(θ))) + str(θ) + "°" + str("===" + "S" * sin_ + "s" * (size * 2 - sin_) + "~~~") + str(new_sin) + " " + str("C" * d + "c" * (size * 2 - d) + "~~~") + str(new_cos))
# 待つ
sleep(0.0025)
結果
0===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssssssssss~~~+0.00000 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+1.00000
1===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssssssssss~~~+0.01745 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99985
2===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssssssss~~~+0.03490 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99939
3===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssssssss~~~+0.05234 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99863
4===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssssssss~~~+0.06976 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99756
5===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssssssss~~~+0.08716 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99619
6===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssssss~~~+0.10453 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99452
7===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssssss~~~+0.12187 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99255
8===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssssss~~~+0.13917 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.99027
9===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssssss~~~+0.15643 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.98769
10===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssss~~~+0.17365 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.98481
11===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssssss~~~+0.19081 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.98163
12===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssss~~~+0.20791 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.97815
13===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSsssssssssssssssssssssss~~~+0.22495 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.97437
14===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssss~~~+0.24192 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC~~~+0.97030
15===SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSssssssssssssssssssssss~~~+0.25882 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCc~~~+0.96593
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~以下略~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ずっとみてられる