Dzwebs.Net

撰写电脑技术杂文十余年

rust在match枚举项中添加if条件的实例

Admin | 2023-2-14 14:52:06 | 被阅次数 | 1011

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  如题所示,本文为大家讲解的是,如何在match枚举项中添加if条件,下面,我们要做的就是通过输入一个数(该数首先必须为三位数),判断该数是否是水仙花数,并给出相应的输出提示。

  先普及一下什么叫水仙花数,即一个数,它的百位上的数、十位上的数、个位上的数,三者的三次方之和刚好等于该数本身,即为水仙花数。

  println!("请输入一个数:");
let mut mydata = String::new();
std::io::stdin().read_line(&mut mydata).expect("read line error !");
match mydata.trim().parse::<u32>(){
Ok(data) =>{
match data{
data if (data<=99 || data >999) => println!("该数不在范围内"),
data if (100..=999).contains(&data) =>{
let gw = data % 100 % 10 ;
let sw = data % 100 / 10;
let bw = data / 100;
if gw*gw*gw + sw*sw*sw + bw*bw*bw == data{
println!("该数为水仙花数:{}",data);
}else{
println!("该数不是水仙花数!");
}
},
_ => panic!("无效之数"),
}
},
Err(e) => {
panic!("输入错误了");
}
}

  运行如上代码,如下图所示的结果:

  请输入一个数:
  153
  该数为水仙花数:153


该杂文来自: 最新技术

上一篇:rus之dbg!与Display与format!的使用

下一篇:rust读ini配置文件节点信息的代码

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计