Rust语言编程实例100题-014
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。输出136的质因数。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
- 如果这个质数恰等于(小于的时候,继续执行循环)n,则说明分解质因数的过程已经结束,另外 打印出即可。
- 但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n.重复执行第二步。
- 如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
输出格式:输出一行。
知识点:循环
fn main() {
let mut n = 136;
print!("{} = ", n);
for i in 2..=n {
while n % i == 0 {
print!("{}", i);
n /= i;
if n != 1 {
print!(" * ")
}
}
}
println!();
}
程序执行结果:
136 = 2 * 2 * 2 * 17
Process finished with exit code 0
网友评论