1 분 소요

📌 난이도

⭐️

💡 문제

차량이 일정 거리를 일정 시간 동안 이동했습니다. 이동한 거리(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);를 사용하여 소수점 두 자리까지 출력합니다.

맨 위로 올라가기

저의 글을 읽어 주셔서 감사합니다. 문제가 있으면 저의 메일로 연락 주시면 감사하겠습니다. 댓글과 피드백 또한 감사합니다.
Thank you for visiting my blog. If you have any problems, please contact me by e-mail. Thanks also for the comments and feedback.

태그: , , , ,

카테고리: ,

업데이트:

댓글남기기