Showing posts with label rolling dice. Show all posts
Showing posts with label rolling dice. Show all posts

Sunday, July 18, 2021

TI-84 Plus CE: Rolling Fate Dice

 TI-84 Plus CE: Rolling Fate Dice 



Fate Dice:  Evil Hat Productions

Website:  https://www.evilhat.com/home/fate-dice/


Roll Your Fate!


Fate Dice, a fudge dice, are used in many role-playing games.  The dice pictured above is just one variety of fudge dice used.   These Fate Dice are four six-sided dice consisting of two pluses, two blanks, and two minuses on each die.


Therefore, on a single roll of a die, the roller has 1/3 chance of getting a plus, blank, or minus on each roll.  The program FATEDICE below takes this account and uses a random number generator between -1 (for minus), 0 (for blank), and 1 (for plus).  The program draws the result of the four dice on the graphic screen.   


The resulting graphic screen has the following parameters:


* All functions and plots turned off.

* All drawing is cleared.

* Xmin = 0, Xmax = 13, Xscl = 1 (x scale)

* Ymin = 0, Ymax = 7,  Yscl = 1 (y scale)


 TI-84 Plus CE Program:  ROLLFATE

Version 5.x or higher required (Wait command)


"EWS 2021-05-15"

ClrHome

Disp "FATE DICE"

FnOff 

PlotsOff 

randInt(­1,1,4)→L₆

Disp "ROLLING..."

Wait .5

ClrDraw

0→Xmin:13→Xmax:1→Xscl

0→Ymin:7→Ymax:1→Yscl

For(I,1,10,3)

(I+2)/3→J

Line(I,3,I+2,3,NAVY)

Line(I,1,I+2,1,NAVY)

Line(I,3,I,1,NAVY)

Line(I+2,3,I+2,1,NAVY)

If abs(L₆(J))=1

Line(I+.5,2,I+1.5,2,GREEN)

If L₆(J)=1

Line(I+1,2.5,I+1,1.5,GREEN)

End

TextColor(BLUE)

Text(10,10,"HERE IS YOUR ROLL:")



Eddie


All original content copyright, © 2011-2021.  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. 


Sunday, March 7, 2021

Fun with the TI-73 Part II: Rolling Two Dice, Numerical Derivative, Rectangular/Polar Conversions

Fun with the TI-73 Part II: Rolling Two Dice, Numerical Derivative, Rectangular/Polar Conversions


TI-73 Program:  TWODICE - Rolling Two Dice


Introduction:


The program TWODICE will roll two regular dice and give the sum of those dice in three lists:


L_1: die 1

L_2: die 2

L_3: total


If there are seven rolls or less, the program displays the rolls.  In any case, the results are stored in the above lists.


Access L_1 by pressing [ 2nd ] [ STAT ] (LIST), 1

Access L_2 by pressing [ 2nd ] [ STAT ] (LIST), 2

Access L_3 by pressing [ 2nd ] [ STAT ] (LIST), 3


Program:


"EWS 2021"

Disp "ROLL THE DICE"

Input "ROLLS? ",X

dice(X)→L_1

dice(X)→L_2

L_1+L_2→L_3

If X≤7

Then

ClrScreen

For(A,1,X)

Output(A,1,L_1(A))

Output(A,3,L_2(A))

Output(A,6,L_3(A))

End

Pause

End

ClrScreen

Disp "L_1 = DIE 1","L_2 = DIE 2","L_3 = TOTAL"

Pause


Your results will vary.


TI-73 Program:  DERIVY1 - Numerical Derivative of y1(x)


The simple program DERIVY1 calculates the numerical derivatives of the equation stored in Y_1.  


Access Y_1 by pressing [ 2nd ] [ APPS ] (VARS), 2, 1


Program:


"EWS 2021"

Disp "D/DX Y_1"

Prompt X

10^(-8)→H

(2*H)^-1*(Y_1(X+H)-Y_1(X-H))→D

Disp "APPROX D/DX"

Pause D


Example:


Y_1 = (X^2-3)^2 + 1

Derivative at x = 0.95, Result:  -7.9705

Derivative at x = 2, Result:  8


Y_1 = e^(X^3/4)

Derivative at x = 0.46, Result: 0.16261

Derivative at x = 1.55, Result:  4.571295


TI-73 Program: RECPOL - Rectangular/Polar Conversion


This program has two conversions:


1.  >RECT:  Polar (r, θ) to Rectangular (x, y)

2.  >POLAR:  Rectangular (x, y) to Polar (r, θ)


This program works in either Degree or Radian mode.


I take a different approach to calculate angle than the atan2 method.  Approached this as calculating the angle between the vectors [ x, 0 ] and [ x, y].  The angle between vectors v1 and v2 is:


θ = acos( dot(v1, v2) / ( norm(v1) * norm(v2) ) = acos( x / √(x^2 + y^2))


The angle is negative if y<0.   


Like the argument and angle conversions, the point (0,0) is defined to have an angle of 0.


Since there is no theta character (θ) on the TI-73, I use the variable A instead.


Program:


"EWS 2021"

Lbl 0

Menu("MENU",">RECT",1,">POLAR",2,"EXIT",3)

Lbl 1

Input "R? ",R

Input "ANG? ",A

R*cos(A)→X

R*sin(A)→Y

Disp "X= ",X,"Y= ",Y

Pause

Goto 0

Lbl 2

Input "X? ",X

Input "Y? ",Y

√(X^2+Y^2)→R

If X=0 and Y=0

Then

0→A

Else

cos^-1(X/√(X^2+Y^2))→A

If Y<0

-A→A

End

Disp "R=",R,"ANG=",A

Pause

Goto 0

Lbl 3


Examples:


Examples are in Degree mode.


R = 19, ANG = 87.3°

Result:  X = 0.8950225635, Y = 18.97890762


X = -11.5, Y = 2.4

Result:  R = 1.74776575, ANG = 168.2118167



Eddie


All original content copyright, © 2011-2021.  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. 


My International Casio Collection (So Far)

 Pictured: Pic 1:  Casio fx-991CN X (China)  Pic 2:  Casio fx-570SPX II Iberia (Spain) Pic 3:  Casio fx-92 Collège (France) All original co...