Jawabnya bisa!
Untuk mewarnai huruf, dapat digunakan ANSI yang berupa Escape Control. Sedangkan untuk bendera digunakan fungsi sinus()
Tampilan Output
Source Code
<code>
import math
import time
import random
def sin_translate(x, **kwarg):
xtrans=kwarg.get('xtrans', 1)
ytrans=kwarg.get('ytrans', 1)
x1 = x * xtrans
sin = math.sin(math.radians(x1)) * ytrans
return x1, sin
def flag(x,w):
grid = []
ytrans = random.randint(10,20)/10
for x in range(x, x+w):
d, y = sin_translate(x, xtrans=10, ytrans=ytrans) #math.radians(x))
#print(f'x={x}, d={d:0.2f}, y={y:0.2f}')
y = round(y)
grid.append((y-6, y, y+7))
#print(grid)
print('\033[2J')
ymin = round(-ytrans-6)
ymax = round(ytrans +7)
for y in range(ymin, ymax
+1):
+1):
for g in grid:
a, m, b = g
if a <= y <= m:
print('\033[31;41mM', end='')
elif m < y <= b:
print('\033[37;47m:', end='')
else:
print('\033[39;49m ', end='')
print('\033[39;49m')
x = 0
while True:
flag(x, 60)
print('INDONESIA TANGGUH, INDONESIA TUMBUH')
x += 1
time.sleep(0.1)
</code>