2016 New Spec
AS Question 5
The algorithm, represented using pseudo-code in Figure 4, describes a method to calculate the additive or multiplicative persistence of a two-digit integer. The examples below illustrate how additive and multiplicative persistence are calculated.
Example: calculating the additive persistence of 87
8 + 7 = 15 1 + 5 = 6
After 2 steps the method results in a one digit answer so the additive persistence of 87 is 2.
Example: calculating the multiplicative persistence of 39
3 * 9 = 27 2 * 7 = 14 1 * 4 = 4
After 3 steps the method results in a one digit answer so the multiplicative persistence of 39 is 3.
Figure 4
OUTPUT "Enter integer (0-99): "
INPUT Value
OUTPUT "Calculate additive or multiplicative persistence (a or m)? "
INPUT Operation
Count = 0
WHILE Value > 9
- IF Operation = "a" THEN
- Value = (Value DIV 10) + (Value MOD 10)
- Value = (Value DIV 10) + (Value MOD 10)
- ELSE
- Value = (Value DIV 10) * (Value MOD 10)
- Value = (Value DIV 10) * (Value MOD 10)
- ENDIF
- Count = Count + 1
ENDWHILE
OUTPUT "The persistence is: "
OUTPUT Count
The MOD operator calculates the remainder resulting from an integer division, for example, 10 MOD 3 = 1. The DIV operator calculates integer division, for example 10 DIV 3 = 3.
What you need to do
- Write a program for the algorithm in Figure 4.
- Test the program by showing the result of entering 47, followed by m when prompted by the program.
- Test the program by showing the result of entering 77, followed by a when prompted by the program.