标题:C++求面积方法
只看楼主
psyqin
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-7-15
结帖率:50%
 问题点数:0 回复次数:3 
C++求面积方法

两块瓷砖,一个长方形,长x cm,宽y cm,另一个是正方形,长方形瓷砖面积比正方形瓷砖面积大16cm2,问正方形瓷砖边长多少厘米(结果保留1位小数,四舍五入)?

我的做法是:

#include<iostream>
#include<cmath>
#include<cstdio>

using namespace std;
int main()
{
    int x,y,s;
    cin>>x>>y;
    s=sqrt(x*y-16);
    printf("%.1f",int(s*10+0.5)/10.0);

   
   
    return 0;
   
 }

但是提交答案后软件说不是最佳答案,什么样的做法才是合理的?请高手指点。
搜索更多相关主题的帖子: C++ 面积 正方形 include int 
2018-01-23 22:50
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1728
专家分:3216
注 册:2015-12-2
得分:0 
s是整型,sqrt返回double型
printf是c的打印函数。
c++中用cout

[此贴子已经被作者于2018-1-25 15:32编辑过]

2018-01-25 15:30
stop1204
Rank: 9Rank: 9Rank: 9
来 自:福建省
等 级:贵宾
威 望:22
帖 子:295
专家分:1151
注 册:2013-9-8
得分:0 
啥嘛.. 像这种 都是从1开始 ~无限试.
反正机器很快的不用几秒就出来了

hl928452957@gmail点com

2018-01-26 10:25
stop1204
Rank: 9Rank: 9Rank: 9
来 自:福建省
等 级:贵宾
威 望:22
帖 子:295
专家分:1151
注 册:2013-9-8
得分:0 
软件估计是会给出一些数字 测试你的代码..
是不是类似 codewars 的东西?
如果只是简单求出来的话 这样就好了.
程序代码:
    double x = 0.1, y = 0.1, s = 0.0;
        while (y < 200.0) {
            if (x * y > 16) {
                s = sqrt (x * y - 16.0);
                cout << x << "-" << y << "-" << s << endl;
            }
            y += 0.1;
        }
//0.1-160.2-0.141421
//0.1-160.3-0.173205
//0.1-160.4-0.2
//0.1-160.5-0.223607
//0.1-160.6-0.244949
//0.1-160.7-0.264575
//0.1-160.8-0.282843
//0.1-160.9-0.3
//0.1-161-0.316228
//0.1-161.1-0.331662
//0.1-161.2-0.34641
//0.1-161.3-0.360555
//0.1-161.4-0.374166
//0.1-161.5-0.387298
//0.1-161.6-0.4



如果是随机给出数字测试你.  你只要给你代码加上 (x * y > 16)的条件
然后 return sqrt (x * y - 16.0);  应该就能过了

hl928452957@gmail点com

2018-01-26 11:46



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-484418-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.118962 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved