mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
938 B
50 lines
938 B
2 years ago
|
## negative_spelling
|
||
|
|
||
|
### Instructions
|
||
|
|
||
|
In this exercise, you'll create the function `neg_spell` that will spell a negative number.
|
||
|
|
||
|
Here are some examples of what your function should return:
|
||
|
|
||
|
- `-1` -> `"minus one"`
|
||
|
- `-14` -> `"minus fourteen"`
|
||
|
- `-348` -> `"minus three hundred forty-eight"`
|
||
|
- `-1002` -> `"minus one thousand two"`
|
||
|
|
||
|
> Only negative numbers will be accepted, up to `"minus one million"`.
|
||
|
> If a positive number is passed the function should return `"error: positive number"`.
|
||
|
|
||
|
### Expected function
|
||
|
|
||
|
```rust
|
||
|
pub fn neg_spell(n: i64) -> String {
|
||
|
|
||
|
}
|
||
|
```
|
||
|
|
||
|
### Usage
|
||
|
|
||
|
Here is a program to test your function.
|
||
|
|
||
|
```rust
|
||
|
use spelling::*;
|
||
|
|
||
|
fn main() {
|
||
|
println!("{}", neg_spell(-1234));
|
||
|
println!("{}", neg_spell(100));
|
||
|
}
|
||
|
```
|
||
|
|
||
|
And its output:
|
||
|
|
||
|
```console
|
||
|
$ cargo run
|
||
|
minus one thousand two hundred thirty-four
|
||
|
error: positive number
|
||
|
$
|
||
|
```
|
||
|
|
||
|
### Notions
|
||
|
|
||
|
- [patterns](https://doc.rust-lang.org/book/ch18-00-patterns.html)
|