add 84 (WIP)
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
[package]
|
||||
name = "euler84"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
rand = "0.8.5"
|
||||
@@ -0,0 +1,89 @@
|
||||
use rand::prelude::*;
|
||||
use rand::seq::IteratorRandom;
|
||||
|
||||
enum Squares {
|
||||
Go = 0,
|
||||
A1 = 1,
|
||||
CC1 = 2,
|
||||
A2 = 3,
|
||||
T1 = 4,
|
||||
R1 = 5,
|
||||
B1 = 6,
|
||||
Ch1 = 7,
|
||||
B2 = 8,
|
||||
B3 = 9,
|
||||
Jail = 10,
|
||||
C1 = 11,
|
||||
U1 = 12,
|
||||
C2 = 13,
|
||||
C3 = 14,
|
||||
R2 = 15,
|
||||
D1 = 16,
|
||||
CC2 = 17,
|
||||
D2 = 18,
|
||||
D3 = 19,
|
||||
FP = 20,
|
||||
E1 = 21,
|
||||
Ch2 = 22,
|
||||
E2 = 23,
|
||||
E3 = 24,
|
||||
R3 = 25,
|
||||
F1 = 26,
|
||||
F2 = 27,
|
||||
U2 = 28,
|
||||
F3 = 29,
|
||||
G2j = 30,
|
||||
G1 = 31,
|
||||
G2 = 32,
|
||||
Cc3 = 33,
|
||||
G3 = 34,
|
||||
R4 = 35,
|
||||
Ch3 = 36,
|
||||
H1 = 37,
|
||||
T2 = 38,
|
||||
H2 = 39,
|
||||
}
|
||||
|
||||
enum CommunityChest {
|
||||
AdvanceToGo,
|
||||
GoToJail,
|
||||
}
|
||||
|
||||
enum Chance {
|
||||
AdvanceToGo,
|
||||
GoToJail,
|
||||
GoToC1,
|
||||
GoToE3,
|
||||
GoToH2,
|
||||
GoToR1,
|
||||
GoToNextR,
|
||||
GoToNextRAgain,
|
||||
GoToNextU,
|
||||
GoBack3Squares,
|
||||
}
|
||||
|
||||
enum Dice {
|
||||
FourSided = 4,
|
||||
SixSided = 6,
|
||||
}
|
||||
|
||||
impl Dice {
|
||||
fn throw(&self, rng: &mut ThreadRng) -> isize {
|
||||
match self {
|
||||
Self::SixSided => (1..=6).choose(rng).unwrap(),
|
||||
Self::FourSided => (1..=4).choose(rng).unwrap(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct Monopoly {
|
||||
position: Squares,
|
||||
dice: Dice,
|
||||
}
|
||||
|
||||
impl Monopoly {
|
||||
fn throw_dice(&mut self) {
|
||||
let mut rng = rand::thread_rng();
|
||||
let result: isize = (0..2).map(|_| self.dice.throw(&mut rng)).sum();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fn main() {
|
||||
println!("Hello, world!");
|
||||
}
|
||||
Reference in New Issue
Block a user