ユーザー入力の値を使用して for ループ内の用語を制限するにはどうすればよいでしょうか。このプログラムの目的は、ユーザーが項数、開始値、カウント間隔を入力できるようにすることです。ありがとう!
2 に答える
TIBasicDev、具体的にはInput
、Prompt
、およびのページを参照することで、質問に簡単に答えることができますFor(
。Input
自明Prompt
です。これらは、ユーザーからの入力を取得する 2 つの手段として機能します。For(
必要な動作を示す引数を取ることができます。
Prompt
Prompt
より小さく、より汚れています。プログラム
Prompt A
次の出力が得られます。
A=?
Input
Input
は、大きくてきれいなオプションです。プログラム
Input "ENTER VALUE:",A
次の出力が得られます
ENTER VALUE:
For
TIBasicDev から取得:
For ループは、変数 (AZ または theta)、開始値、終了値、増分の 4 つの引数を取ります。指定した増分で開始値から終了値までカウントします。
...
Format :For(variable,start,end[,increment]) :Command(s) :End
プログラムを作成するには、入力コマンドを使用してユーザー入力を取得し、for ループを使用して目的の効果を作成するだけです。
dohaqatar7 が言ったように、基本的な入力コマンドを使用して目標を達成できます。ただし、ユーザーが一度に値をコンマで区切って入力できるようにする (少し高度な) 方法もあります。これを行うには、文字列を入力し、それを のような組み込みの文字列変数に格納してから、数値のリストに変換し、最後にループ内Str1
のパラメーターのリストの各要素にアクセスします。For(
Input "START,END,STEP: ",Str1 //Whatever is input goes into Str1 as a string
//For example, "1,100,2"
expr("{"+Str1 //Then it is converted into a list like {1,100,2}
For(X,Ans(1),Ans(2),Ans(3) //Evaluates to For(X,1,100,2
[your code]
End
expr(
式を意味し、基本的に電卓に渡された文字列を評価するように指示します。ただし、最初に a{
が前に追加されるため、電卓はそれをリストとして解釈し、Ans 変数に格納されます。リストの個々の要素は [リスト名] (位置) の形式でアクセスされるためAns(1)
、リストの最初の要素 (この場合は開始値 1) などを取得します。