```rust
fn приветствие() {
println!("Привет, мир!");
}
```
Эта функция выводит на экран строку "Привет, мир!". Мы можем вызвать эту функцию из любой части программы, используя её имя:
```rust
fn main() {
приветствие();
}
```
**Параметры функций**
Функции могут принимать параметры, которые позволяют нам передавать данные в функцию. Параметры определяются в круглых скобках после имени функции. Например:
```rust
fn приветствие(имя: &str) {
println!("Привет, {}!", имя);
}
```
Эта функция принимает один параметр `имя` типа `&str` (ссылка на строку). Мы можем вызвать эту функцию, передавая ей строку:
```rust
fn main() {
приветствие("Иван");
}
```
**Возвращаемые значения**
Функции могут возвращать значения, которые могут быть использованы в других частях программы. Возвращаемое значение определяется с помощью ключевого слова `->`. Например:
```rust
fn сложение(a: i32, b: i32) -> i32 {
a + b
}
```
Эта функция принимает два параметра `a` и `b` типа `i32` и возвращает их сумму. Мы можем вызвать эту функцию и использовать возвращаемое значение:
```rust
fn main() {
let результат = сложение(2, 3);
println!("Результат: {}", результат);
}
```
**Модули**
Модули – это способ организовать наш код в более крупные единицы. Модуль – это файл или директория, содержащая связанный код. Модули позволяют нам разделять наш код на более мелкие части и повторно использовать его в разных частях программы.
В Rust модули определяются с помощью ключевого слова `mod`. Например:
```rust
mod математика {
pub fn сложение(a: i32, b: i32) -> i32 {
a + b
}
}
```
Этот модуль содержит одну функцию `сложение`. Мы можем использовать эту функцию в других частях программы, импортируя модуль:
```rust
use математика;
fn main() {
let результат = математика::сложение(2, 3);
println!("Результат: {}", результат);
}
```
В этой главе мы познакомились с функциями и модулями в Rust. Мы узнали, как определять функции, передавать параметры и возвращать значения. Мы также узнали, как организовать наш код в модули и использовать их в разных частях программы. В следующей главе мы поговорим о структурах данных и алгоритмах.