9

In most programming languages, you can mix and match strings with variables during output. However, I can't seem to find a good way to do so. Here is my code:

Prompt A,B
√(A^2+B^2)->C
If iPart(C)≠C
Then
Disp "C = √(",C
Else
Disp "C = ",C
End
Goto ED

Label ED

Unfortunately, with this code, it ends up printing like so:

A? 3
B? 5
C = √(
              34
            Done

This is not what I want. I would love to be able to have it print C = √(34), but I currently can't find any way to mix variables and strings. Any help would be appreciated.

jaysoncopes
  • 805
  • 3
  • 13
  • 26

5 Answers5

7

I know this is a little late, but it might help others as well. The Output(... command would be used in this case.

Prompt A,B
√(A^2+B^2)->C
If iPart(C)≠C
Then
Disp "C = √(",C
Output(3,7,C
Else
Disp "C = ",C
End

Just remember that the home display is 16x8 characters, which you may need as you plan out how and where to display your results.

Simon East
  • 55,742
  • 17
  • 139
  • 133
Richard Chase
  • 71
  • 1
  • 2
  • Yes, this is the best way. Although just be aware that if your output is long (like many digits or decimal places), some characters might get truncated ("chopped off") and they won't be rounded. – Simon East Feb 25 '22 at 08:21
4

In ti-basic for the ti-83 the plus (+) is used to concatenate strings. Like this:

Disp "foo"+" "+"bar"

Will output:

"foo bar"

You must remember to convert numbers to strings using string() though:

Disp "C=√("+string(c)+")"

Will output:

"C=√(34)"

Disp "C=√("+c+")" (no string()) will throw an error.

PGmath
  • 381
  • 3
  • 16
4

Unfortunatelly the "string" command suggested by PGmath doesn't exist on the Ti-83/84/85/86. Actually there is no function for converting a number into a string.

But a possible solution is given here: http://tibasicdev.wikidot.com/number-to-string2

2

Since version 5.2.0 the ti-83 and 84 (possibly others as well) got the toString( command which can be used to turn a variable into a string. This piece of code will display the variable C with the correct text on the screen.

Disp "Variable C: "+toString(C

Make sure your calculator is using this version though, otherwise you're going to have a hard time finding this command.

1

I know this thread is very dead but for posterity:

If you have a TI-84+CE on version 5.2 or later, you can use the toString( function. If you do not, if the output string will always be the same size, simply use Output(. If this does not generate the desired effect, you can use:

:{0,.5,1→L₁
:NL₁→L₂
:Med-Med Y₁
:Equ►String(Y₁,Str1
:sub(Str1,1,length(Str1)-3→Str1