首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将结果显示为十进制

如何将结果显示为十进制
EN

Stack Overflow用户
提问于 2022-10-02 21:28:29
回答 2查看 128关注 0票数 -3

这是家庭作业的问题:

编写了一个计算速度的程序:取距离(米)和时间(三个数字:小时、分钟、秒),计算速度,以米每秒、公里/小时和英里/小时(提示:1英里= 1609米)。打印结果到控制台。

这是我的代码:

代码语言:javascript
运行
复制
int distanceInMeters, hours, minutes, seconds;
Console.WriteLine("Please type distance in meters: ");
distanceInMeters = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Please type time in hours: ");
hours = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Please type time in minutes: ");
minutes = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Please type time in seconds: ");
seconds = Convert.ToInt32(Console.ReadLine());

int metersSecond, kmH, milesH;

metersSecond = distanceInMeters / ((hours * 3600) + (minutes * 60) + seconds);
kmH = (distanceInMeters / 1000) / (hours + (minutes / 60) + (seconds / 3600));
milesH = (distanceInMeters / 1609) / (hours + (minutes / 60) + (seconds / 3600));

Console.WriteLine("Your speed in meters/seconds is: " + metersSecond);
Console.WriteLine("Please speed in km/h is: " + kmH);
Console.WriteLine("Please speed in miles/h is: " + milesH);
EN

Stack Overflow用户

回答已采纳

发布于 2022-10-02 21:51:00

以下计算中的所有变量:

代码语言:javascript
运行
复制
metersSecond = distanceInMeters / ((hours * 3600) + (minutes * 60) + seconds);

是int型(整数)。因此,小数位将被削减。您可以通过执行以下操作来解决此问题:

代码语言:javascript
运行
复制
metersSecond = 1.0 * distanceInMeters / ((hours * 3600.0) + (minutes * 60.0) + seconds)

另外,metersSecond应该被声明为double、float或Dec十进制,这些类型支持您想要的十进制位置。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73929465

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档