HP 113394 User Guide - Page 129

Conditional Branching

Page 129 highlights

Section 9: Branching and Looping 129 Keystrokes t t(or any key) Display -592.25 -190.22 -190.22 Portion of third month's payment applied to interest. Portion of third month's payment applied to principal. Halts program execution. Conditional Branching Often there are situations when it is desirable for a program to be able to branch to different lines in program memory, depending on certain conditions. For example, a program used by an accountant to calculate taxes might need to branch to different program lines depending on the tax rate for the particular income level. The hp 12c platinum provides two conditional test instructions that are used in programs for conditional branching: z go tests whether the number in the X-register (represented by the x in the key symbol) is less than or equal to the number in the Y-register (represented by the y in the key symbol). As discussed in Appendix A, the number in the X-register is simply the number that would, if the calculator were in Run mode, be currently in the display; and the number in the Y-register is the number that would, if the calculator were in Run mode, have been in the display when \ was pressed. For example, pressing 4\5 would place the number 4 in the Y-register and the number 5 in the X-register. z gm tests whether the number in the X-register is equal to zero. The possible results of executing either of these instructions are: z If the condition tested for is true when the instruction is executed, program execution continues sequentially with the instruction in the next line of program memory. z If the condition tested for is false when the instruction is executed, program execution skips the instruction in the next line of program memory and continues with the instruction in the following line. File name: hp 12c pt_user's guide_English_HDPMF123E27 Page: 129 of 275 Printed Date: 2005/8/1 Dimension: 14.8 cm x 21 cm

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278

Section 9: Branching and Looping
129
File name: hp 12c pt_user's guide_English_HDPMF123E27
Page: 129 of 275
Printed Date: 2005/8/1
Dimension: 14.8 cm x 21 cm
Keystrokes
Display
t
–592.25
Portion of third month’s payment
applied to interest.
–190.22
Portion of third month’s payment
applied to principal.
t
(or any key)
–190.22
Halts program execution.
Conditional Branching
Often there are situations when it is desirable for a program to be able to branch
to different lines in program memory, depending on certain conditions. For
example, a program used by an accountant to calculate taxes might need to
branch to different program lines depending on the tax rate for the particular
income level.
The hp 12c platinum provides two
conditional
test instructions that are used in
programs for conditional branching:
go
tests whether the number in the X-register (represented by the
x
in the
key symbol) is less than or equal to the number in the Y-register (represented
by the
y
in the key symbol). As discussed in Appendix A, the number in the
X-register is simply the number that would, if the calculator were in Run mode,
be currently in the display; and the number in the Y-register is the number
that would, if the calculator were in Run mode, have been in the display
when
\
was pressed. For example, pressing 4
\
5 would place the
number 4 in the Y-register and the number 5 in the X-register.
gm
tests whether the number in the X-register is equal to zero.
The possible results of executing either of these instructions are:
If the condition tested for is true when the instruction is executed, program
execution continues sequentially with the instruction in the next line of
program memory.
If the condition tested for is false when the instruction is executed, program
execution skips the instruction in the next line of program memory and
continues with the instruction in the following line.