Skip to content

Commit

Permalink
Merge pull request #733 from apogeeoak/intro
Browse files Browse the repository at this point in the history
feat(intro): Proposal to add successfully compiling exercise as the first exercise.
  • Loading branch information
shadows-withal authored Feb 4, 2022
2 parents 9838892 + 9b8de65 commit 4cde788
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 6 deletions.
8 changes: 8 additions & 0 deletions exercises/intro/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Intro

Rust uses the `print!` and `println!` macros to print text to the console.

## Further information

- [Hello World](https://doc.rust-lang.org/rust-by-example/hello.html)
- [Formatted print](https://doc.rust-lang.org/rust-by-example/hello/print.html)
23 changes: 23 additions & 0 deletions exercises/intro/intro1.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// intro1.rs
// About this `I AM NOT DONE` thing:
// We sometimes encourage you to keep trying things on a given exercise, even
// after you already figured it out. If you got everything working and feel
// ready for the next exercise, remove the `I AM NOT DONE` comment below.
// Execute the command `rustlings hint intro1` for a hint.

// I AM NOT DONE

fn main() {
println!("Hello and");
println!(r#" welcome to... "#);
println!(r#" _ _ _ "#);
println!(r#" _ __ _ _ ___| |_| (_)_ __ __ _ ___ "#);
println!(r#" | '__| | | / __| __| | | '_ \ / _` / __| "#);
println!(r#" | | | |_| \__ \ |_| | | | | | (_| \__ \ "#);
println!(r#" |_| \__,_|___/\__|_|_|_| |_|\__, |___/ "#);
println!(r#" |___/ "#);
println!();
println!("This exercise compiles successfully. The remaining exercises contain a compiler");
println!("or logic error. The central concept behind Rustlings is to fix these errors and");
println!("solve the exercises. Good luck!");
}
9 changes: 9 additions & 0 deletions exercises/intro/intro2.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
// intro2.rs
// Make the code print a greeting to the world.
// Execute `rustlings hint intro2` for a hint.

// I AM NOT DONE

fn main() {
println!("Hello {}!");
}
8 changes: 2 additions & 6 deletions exercises/variables/variables1.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
// variables1.rs
// Make me compile! Execute the command `rustlings hint variables1` if you want a hint :)

// About this `I AM NOT DONE` thing:
// We sometimes encourage you to keep trying things on a given exercise,
// even after you already figured it out. If you got everything working and
// feel ready for the next exercise, remove the `I AM NOT DONE` comment below.
// Make me compile!
// Execute the command `rustlings hint variables1` if you want a hint :)

// I AM NOT DONE

Expand Down
16 changes: 16 additions & 0 deletions info.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
# INTRO

[[exercises]]
name = "intro1"
path = "exercises/intro/intro1.rs"
mode = "compile"
hint = """
Remove the I AM NOT DONE comment to move on to the next exercise."""

[[exercises]]
name = "intro2"
path = "exercises/intro/intro2.rs"
mode = "compile"
hint = """
Add an argument after the format string."""

# VARIABLES

[[exercises]]
Expand Down

0 comments on commit 4cde788

Please sign in to comment.