zoukankan      html  css  js  c++  java
  • ZOJ Problem Set–1813 Biker's Trip Odometer

    Time Limit: 2 Seconds      Memory Limit: 65536 KB


    Most bicycle speedometers work by using a Hall Effect sensor fastened to the front fork of the bicycle. A magnet is attached to one of the spokes on the front wheel so that it will line up with the Hall Effect switch once per revolution of the wheel. The speedometer monitors the sensor to count wheel revolutions. If the diameter of the wheel is known, the distance traveled can be easily be calculated if you know how many revolutions the wheel has made. In addition, if the time it takes to complete the revolutions is known, the average speed can also be calculated.

    For this problem, you will write a program to determine the total distance traveled (in miles) and the average speed (in Miles Per Hour) given the wheel diameter, the number of revolutions and the total time of the trip. You can assume that the front wheel never leaves the ground, and there is no slipping or skidding.

    Input

    Input consists of multiple datasets, one per line, of the form:

    diameter revolutions time

    The diameter is expressed in inches as a floating point value. The revolutions is an integer value. The time is expressed in seconds as a floating point value. Input ends when the value of revolutions is 0 (zero).

    Output

    For each data set, print:

    Trip #N: distance MPH

    Of course N should be replaced by the data set number, distance by the total distance in miles (accurate to 2 decimal places) and MPH by the speed in miles per hour (accurate to 2 decimal places). Your program should not generate any output for the ending case when revolutions is 0.

    Constants

    For p use the value: 3.1415927.
    There are 5280 feet in a mile.
    There are 12 inches in a foot.
    There are 60 minutes in an hour.
    There are 60 seconds in a minute.
    There are 201.168 meters in a furlong.

    Sample Input

    26 1000 5
    27.25 873234 3000
    26 0 1000

    Sample Output

    Trip #1: 1.29 928.20
    Trip #2: 1179.86 1415.84


    Source: Greater New York 2003

    #include<iostream>
    
    #include<iomanip>
    
    using namespace std;
    
    const double pi = 3.1415927;
    
    int main(void)
    
    {
    
      double diameter,revolutions,time;
    
      int trip = 1;
    
      while(cin>>diameter>>revolutions>>time && revolutions)
    
      {
    
        cout<<"Trip #"<<trip<<": ";
    
        double cir = pi*diameter/(12*5280);
    
        double distance = cir*revolutions;
    
        
    
        cout<<fixed<<setprecision(2)<<distance<<" ";
    
        double mph = distance/(time/3600);
    
        cout<<fixed<<setprecision(2)<<mph<<endl;
    
        trip++;
    
      }
    
      return 0;
    
    }
  • 相关阅读:
    关于任意文件下载及上传漏洞
    一文掌握XSS
    WEB层知识点
    课程交流网站项目架构
    docker容器中启动uwsgi秒退
    mongoDB中update_one与find_one_update异同
    Vue集成CKEditor5源代码
    Vue的index.html与其他静态文件分离部署
    scrapy-redis分布式爬虫使用及docker swarm集群部署
    django中form组件的校验时raise ValidationError与self.add_error异同
  • 原文地址:https://www.cnblogs.com/malloc/p/2487710.html
Copyright © 2011-2022 走看看