**TI-74 and Python (Casio fx-9750GIII): A Treasure of Programs**

Today's programs illustrates an approach from both the BASIC and Python programming languages.

**Skiing Stars**

This program paves a ski path by randomly plotting a path. A slight difference: the TI-74 version goes indefinitely until the user presses a key and uses one line. The Python version goes 50 steps and the result must be scrolled up after the program completes. I optimized the program to fit each screen.

**TI-74 BASICALC Program**

100 REM "Skiing Stars"

102 RANDOMIZE RND

104 P=14

106 PRINT "Press any key to stop.": PAUSE .25

120 CALL KEY(K,S)

122 IF S<>0 THEN 140

124 R=RND

126 IF R<.4 AND P>0 THEN LET P=P-1

128 IF R>.4 AND P<26 THEN LET P=P+1

130 DISPLAY ERASE ALL AT(P),"*****": PAUSE .15

132 GOTO 120

140 PRINT RPT$("*",31): PAUSE .25

142 STOP

**Python (Casio fx-9750GIII): skistar.py**

# skiing stars

from random import *

rnd=int(10000000*random())

seed(rnd)

p=8

for i in range(50):

r=random()

if r<.4 and p>0:

p-=1

if r>.6 and p<14:

p+=1

print(" "*p+"*****")

print("scroll up")

**Phase Speed of a Wave**

Equation:

c = √( g * λ / (2 * π) * tanh(2 * π * d / λ))

c = phase speed

λ = wavelength

d = water depth

g = Earth's gravity = 9.80665 m/s = 32.174049 ft/s

Source:

"Wind Wave" Wikipedia. Last Edited January 28, 2023. Accessed February 14, 2023. https://en.wikipedia.org/wiki/Wind_wave#:~:text=In%20fluid%20dynamics%2C%20a%20wind,is%20known%20as%20the%20fetch.

**TI-74 BASICALC Program**:

400 REM Phase Speed

402 PRINT "U.S. units used": PAUSE .25

404 T=2*PI: G=32.174049

406 INPUT "Depth (ft)? "; D

408 INPUT "Wavelength (ft)? "; L

410 C=SQR(G*L/T*TANH(T*D/L))

412 PRINT "Phase Speed (ft/s)=": PAUSE .25

414 PRINT C: PAUSE

416 STOP

**Python (Casio fx-9750GIII): phspeed.py **

# phase speed

from math import *

print("U.S units used")

t=2*pi

g=32.174049

print("Depth (ft)?")

d=float(input())

print("Wavelength?")

l=float(input())

c=sqrt(g*l/t*tanh(t*d/l))

print("Phase speed (ft/s)=")

print(c)

Example:

Depth: 2.26 ft

Wavelength: 18.9 ft

Result:

Phase Speed: 7.845145563 ft/s

**Horsepower Generated by a Wave**

p = 0.0329 * h^2 * √( l * (1 - 4.935 * (h^2/l^2))

h = wave height (ft)

l = length of a wave (ft)

p = horsepower

Source:

Rosenstein, Morton. __Strategies for Scientific Calculating Casio__. January 1982.

**TI-74 BASICALC Program**:

500 REM horsepower of a wave

502 PRINT "U.S. units used": PAUSE .25

504 INPUT "Wave height (ft)? ";H

506 INPUT "Length of wave (ft)? "; L

508 P=.0329*H^2*SQR(L*(1-4.935*(H^2/L^2)))

510 PRINT "Horsepower = ": PAUSE .25

512 PRINT P: PAUSE

514 STOP

**Python (Casio fx-9750GIII): hpwave.py**

# horsepower of a wave

from math import *

print("U.S. units used")

print("Wave height (ft)?")

h=float(input())

print("Length of a wave?")

l=float(input())

p=.0329*h**2*sqrt(l*(1-4.935*(h**2/l**2)))

print("horsepower = ")

print(p)

Example:

Wave height: 1.26 ft

Length of wave: 24.04 ft

Result:

Horsepower = .2543549811 hp

Until next time,

Eddie

All original content copyright, © 2011-2023. Edward Shore. Unauthorized use and/or unauthorized distribution for commercial purposes without express and written permission from the author is strictly prohibited. This blog entry may be distributed for noncommercial purposes, provided that full credit is given to the author.