PAT基础编程题目集 7-1 厘米换算英尺英寸 (15分)

如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。

输入格式:

输入在一行中给出1个正整数,单位是厘米。

输出格式:

在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。

输入样例:

170

输出样例:

5 6

很简单的一道题,就是简单的计算,然后取商取余数,但是有几个坑的问题:

  • 给出的公式是英尺,要求输入的却是厘米
  • 除了最后的英尺和英寸,其他不能有任何输出,包括输入提示,否则就判错
  • 虽然专门强调输入是一个正整数,但是在静态类型的语言如C++中,却要保存到浮点类型的变量中,否则厘米转米的过程中就会出错.(声明为int,最后的结果是3 3,我想不明白是怎么算出来的)

我的代码:

Python

def main():
	m=int(input())/100# 转换成米
	inch=int(m/0.3048*12)
	print(f"{int(inch/12)} {int(inch%12)}")
main()

C++

#include <iostream>
using namespace std;

int main ()
{
    float cm;
    int inch;
    cin >> cm;
    inch=cm/100/0.3048*12;
    printf("%d %d",inch/12,inch%12);
}

java

import java.util.Scanner;
public class Main {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        float cm =in.nextInt();
        int inch;
        inch=(int) (cm/100/0.3048*12);
        System.out.printf("%d %d",inch/12,inch%12);

    }
}

©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页