厘米换算英寸英尺(PTA题解)

您所在的位置:网站首页 寸等于什么 厘米换算英寸英尺(PTA题解)

厘米换算英寸英尺(PTA题解)

2023-11-06 13:02| 来源: 网络整理| 查看: 265

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

输入格式:

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

输出格式:

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

输入样例:

170

输出样例:

5  6

思路:

这题想了很久,发现这B题没点常识就会缺失一个条件:即1米等于英尺*0.3048,这是很关键的一步。

1英尺(foot)等于12英寸(inch)         米(meter)== 英尺*0.3048==100厘米(centimetre)== (foot+inch/12)×0.3048     

推导:英尺==100厘米/0.3048==30.48cm,注意这是一个double类型的值,而等式中的foot是int型的,所以,英寸-foot==inch/12,则inch==(int)((英寸-foot)*12)

即:英尺(foot)==厘米/30.48  ,让输入的厘米除以30.48,便是带小数的英尺,直接取整便是所得英尺。将小数部分乘以12并取整,便为英寸。

不过我还是想不通题中的条件:1英尺等于12英寸有什么用?各位知道的麻烦评论区告知一下,谢谢!

下面我给出Java编写的答案: package com.znzz.JavaTest; import java.util.Scanner; public class LengthConversion { public static void main(String[] args) { // TODO Auto-generated method stub int cm;//厘米数 int foot,inch;//foot、inch分别为英尺、英寸 Scanner sc=new Scanner(System.in); cm=sc.nextInt(); foot=(int)(cm/30.48); inch=(int)((cm/30.48-foot)*12); System.out.println(foot+" "+inch); sc.close(); } } 采用C编写: #include int main() { int cm=0; scanf("%d",&cm); //输入的cm int foot = cm/30.48; /* 1英尺等于30.48厘米 */ int inch = (cm/30.48 - foot) * 12; printf("%d %d",foot,inch); return 0; }

 

 



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3