Skip to content

Instantly share code, notes, and snippets.

@dlecan
Created December 13, 2016 14:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dlecan/50dd95b321be87b4ea07068e29d2e271 to your computer and use it in GitHub Desktop.
Save dlecan/50dd95b321be87b4ea07068e29d2e271 to your computer and use it in GitHub Desktop.
use std::env;
struct Division {
numerateur: i32,
denominateur: i32,
}
impl Division {
fn calculer(&self) -> i32 {
match self.denominateur {
0 => panic!("Division par 0"),
1 => self.numerateur,
_ => self.numerateur / self.denominateur
}
}
}
fn main() {
let numerateur = match env::args().nth(1) {
Some(argument) => argument,
None => panic!("Argument obligatoire manquant : le numérateur")
};
let numerateur = match numerateur.parse::<i32>() {
Ok(numerateur) => numerateur,
Err(error) => panic!("Impossible de convertir notre argument. Raison: {}", error)
};
let division = Division(numerateur: numerateur, denominateur: 2);
let resultat = division.calculer();
println!("Résultat : {}", resultat);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment