[C & RUST] V-Code/평균 속도 계산
📌 난이도
⭐️
💡 문제
차량이 일정 거리를 일정 시간 동안 이동했습니다. 이동한 거리(km)와 걸린 시간(시간)이 주어질 때, 평균 속도(km/h)를 계산하는 프로그램을 작성하세요.
입력
두 개의 실수로 이루어져 있으며, 첫 번째 숫자는 이동한 거리(km), 두 번째 숫자는 걸린 시간(시간)입니다.
출력
평균 속도를 소수점 둘째 자리까지 출력하세요.
입력 예시
150 3
출력 예시
50.00
📝 풀이
주어진 거리와 시간을 이용하여 평균 속도를 계산하면 됩니다. 평균 속도는 거리 / 시간으로 구할 수 있으며, 소수점 둘째 자리까지 출력하기 위해 format 함수를 사용합니다.
📃 소스코드
// C
#include <stdio.h>
int main() {
double distance, time, average_speed;
// Read the distance and time from input
scanf("%lf %lf", &distance, &time);
// Calculate the average speed
average_speed = distance / time;
// Print the average speed up to two decimal places
printf("%.2lf\n", average_speed);
return 0;
}
설명
실수(소수점이 있는 숫자)를 처리하기 위해서는 double을 사용합니다. scanf(“%lf %lf”, &distance, &time);는 두 개의 실수를 입력받습니다. printf(“%.2lf\n”, average_speed);는 결과를 소수점 두 자리까지 출력합니다.
// rust
use std::io::{self, BufRead};
fn main() {
// Read the input line
let stdin = io::stdin();
let input = stdin.lock().lines().next().unwrap().unwrap();
// Split the input into tokens and parse them into f64 numbers
let nums: Vec<f64> = input
.split_whitespace()
.map(|s| s.parse().unwrap())
.collect();
let distance = nums[0];
let time = nums[1];
// Calculate the average speed
let average_speed = distance / time;
// Print the average speed up to two decimal places
println!("{:.2}", average_speed);
}
설명
stdin.lock().lines().next()를 사용하여 표준 입력에서 한 줄을 읽습니다. 입력된 줄은 공백으로 구분된 토큰들로 나눠집니다. 각 토큰은 f64(부동 소수점 숫자)로 변환됩니다. 평균 속도를 계산한 후 println!(“”, average_speed);를 사용하여 소수점 두 자리까지 출력합니다.
댓글남기기