Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmInSv 229 of 373 menu
◀ ▶

Ввод нескольких значений в Rust

Два целых можно прочитать из одной строки. Между ними ставят пробел. Строку делят на куски, и каждый кусок переводят в i32:

use std::io; fn main() { println!("enter two numbers: "); let mut line = String::new(); let _ = io::stdin().read_line(&mut line); let line = line.trim(); let mut parts = line.split_whitespace(); let num1 = match parts.next() { Some(text) => match text.parse::<i32>() { Ok(n) => n, Err(_) => 0, }, None => 0, }; let num2 = match parts.next() { Some(text) => match text.parse::<i32>() { Ok(n) => n, Err(_) => 0, }, None => 0, }; println!("{}", num1 + num2); }

Те же два числа можно прочитать двумя вызовами read_line. Второй раз строку объявляют заново: вызов дописывает текст в конец, а не заменяет его.

use std::io; fn main() { println!("enter number: "); let mut line = String::new(); let _ = io::stdin().read_line(&mut line); let num1 = match line.trim().parse::<i32>() { Ok(n) => n, Err(_) => 0, }; println!("enter number: "); let mut line = String::new(); let _ = io::stdin().read_line(&mut line); let num2 = match line.trim().parse::<i32>() { Ok(n) => n, Err(_) => 0, }; println!("{}", num1 + num2); }

Прочитайте два целых и выведите их сумму.

Прочитайте три целых и выведите третье.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить