์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- ์ฐ๋ถํฌ
- OS
- Reversing
- ํ์ด์ฌ ์ฑ๋ฆฐ์ง
- ๋ฐฑ์ค
- C
- java
- ์ค๋ผํดDB
- Python
- ๋ฌ์คํธ ํ๋ก๊ทธ๋๋ฐ ๊ณต์ ๊ฐ์ด๋
- ์ด์์ฒด์
- ๋ฌ์คํธ ์์
- ํ์ด์ฌ
- data communication
- ๋ฌ์คํธ
- Rust
- ์๋ฐ
- Database
- ์๋ฐ ๊ธฐ์ด
- ๋ฐ์ดํฐ ํต์
- ubuntu
- ์ค๋ผํด
- ํ์ด์ฌ ์๊ณ ๋ฆฌ์ฆ
- ์๊ณ ๋ฆฌ์ฆ
- Python challenge
- ์๋ฐ ๊ฐ๋
- ํ์ด์ฌ ์ฒผ๋ฆฐ์ง
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๋ฐฑ์ค ๋ฌ์คํธ
- Operating System
Archives
- Today
- Total
IT’s Portfolio
[Rust] Start Rust (Day 16) - Rust Example Script 4 [Pig Latin] ๋ณธ๋ฌธ
Development Study/Rust
[Rust] Start Rust (Day 16) - Rust Example Script 4 [Pig Latin]
f1r3_r41n 2023. 2. 25. 14:18728x90
๋ฐ์ํ
๐ฆ Rust Day 16
๐ณ๏ธ Rust Example Script 4 - Pig Latin
1๏ธโฃ Description
- ๋ฌธ์์ด์
ํผ๊ทธ ๋ผํด(Pig Latin)
์ผ๋ก ๋ฐ๊พธ๋ ํ๋ก๊ทธ๋จ ์์ฑ ํผ๊ทธ ๋ผํด(Pig Latin)
- ๋จ์ด๊ฐ ์์์ผ๋ก ์์ํ ๊ฒฝ์ฐ ํด๋น ์์์ ๋จ์ด์ ๋์ผ๋ก ์ด๋ํ๊ณ "ay" ๋ฅผ ๋ง๋ถ์
first -> irst-fay
- ๋ชจ์์ผ๋ก ์์ํ ๊ฒฝ์ฐ ๋จ์ํ ๋์ "hay" ๋ฅผ ๋ง๋ถ์
apple -> apple-hay
- ๋จ์ด๊ฐ ์์์ผ๋ก ์์ํ ๊ฒฝ์ฐ ํด๋น ์์์ ๋จ์ด์ ๋์ผ๋ก ์ด๋ํ๊ณ "ay" ๋ฅผ ๋ง๋ถ์
2๏ธโฃ how it works
- ์์ด ๋จ์ด ๋ฌธ์์ด ์ ๋ ฅ๋ฐ๊ธฐ
- ๋ฌธ์์ด์ ์กฐ๊ฑด์ ๋ง๊ฒ ๊ฒฐ๊ณผ ์ถ๋ ฅ
3๏ธโฃ Code
// src/main.rs
use std::io;
// ๋ชจ์์ ๋ํ ์์ VOWEL ์ ์ธ
const VOWEL: [char; 5] = ['a', 'e', 'i', 'o', 'u'];
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).
expect("No input!");
println!(
"{}",
// ๋ฐํ๋ฐ์ bool๋ก ๊ฐ ์ํฉ์ ๋ฐ๋ผ ์ถ๋ ฅํ๋ match ํํ์
match compare(&input) {
false => {
format!("{}-{}ay",
String::from(&input.trim()[1..]), &input[..1])
},
true => {
format!("{}-hay",
input.trim())
},
}
);
}
// ๋ฌธ์์ด์ ์ฒซ ๋ฒ์งธ ์๋ฆฌ๊ฐ ์์์ธ์ง ๋ชจ์์ธ์ง ์์์ ๋น๊ตํ๋ ํจ์
fn compare(msg: &String) -> bool {
// ๋ณ์ f_word๋ ๋ฌธ์์ด ์ฌ๋ผ์ด์ฑ์ ์ฌ์ฉํด &str ํ์
let f_word = &msg[..1];
let mut dis = false;
for c in &VOWEL {
// ๋ณ์ c๋ &char ํ์
์ด๊ธฐ์ to_string() ๋ฉ์๋๋ก ํ์
๋ณ๊ฒฝ์ด ํ์ํจ
if c.to_string() == f_word {
dis = true;
break;
}
}
dis
}
4๏ธโฃ Result
- first
first // input irst-fay // output
- apple
apple // input apple-hay // output
- Rust
Rust // input ust-Ray // output
728x90
๋ฐ์ํ
'Development Study > Rust' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Comments