3 SEEING, HEARING, AND TOUCHING COMPUTER ALGORITHMS...
|
|
|
| a
rwhile | ?
| rfor | rwhile ( ? ){
| | | I?
| | tm}
| rwhile | ?
| | m}
| 4 ?
Im rfor ( ? ; ? 7 ? ) (
rfor | ?
| m}
Im ?
(a) (b)
s = 0; cin >> nr;
rwhile (nr != 0 ){
prime = 1;
pfor (i= 2 ; i <= sqrt(nr) ; ++i ){
| if (nr % i == 0) { prime = 0; break; }
Lm}
if (nr > 1 && prime == 1 ){
p=1;
|
|
|
|
|
|
| rwhile ( nr != 0 ){
| | p *= nr $ 10; nr /= 10;
|
|
|
|
m}
S += p;
}
cin >> nr;
Lm}
prime = 1;
pfor (i= 2 ; i <= sqrt(s) ; ++i ){
| if (s $ i == 0) { prime = 0; break; }
Lm}
if (s > 1 && prime == 1 ){ cout << ”PRIME”; }
else { cout << "NOT PRIME"; )
Figure 3.1. The loop skeleton of the algorithm and the equivalent C/C++
program: (a) step 1; (b) intermediate step; (c) step 3