问题标题: 酷町堂 1348

1
0
已解决
王子翔
王子翔
新手光能
新手光能
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    double a,m,n,x,y;
    cin>>m>>n>>a;
    x=m/n;
    y=n/a;
    printf("%.1f",x*y);
    return 0;
}

怎么写,求大神回答


-1
已采纳
马佳滢
马佳滢
新手天翼
新手天翼

如果是1348;

错误1、

cin>>m>>n>>a;

原因:输入为一行,为2个整数,第一个数为长方形瓷砖的长x,第二个数为长方形瓷砖的宽y,中间用空格隔开。(0<x,y≤1000)。

(你输入了3个整数

改为:

cin>>m>>n;

错误2、

x=m/n;
y=n/a;

(注意:头文件加“#include <math.h>”)改为:

a=sqrt(m*n-16);

错误3、

printf("%.1f",x*y);

输出为一行,为正方形瓷砖的边长

改为:

printf("%.1lf\n",a);

如果是1732;

错误1、

x=m/n

改为:

x=m/a

直接输出x*y(不要保留一位小数)

1
朱智霖
朱智霖
新手守护
新手守护

核心

procedure zhu;
begin
    readln(x,y);
end;
procedure zhi;
begin
    zhu;
    a:=x*y-16;
end;
procedure lin;
begin
    zhi;
    a:=sqrt(a);
end;
begin
    lin;
    writeln(a:0:1);
0
吴峻逸
吴峻逸
初级守护
初级守护

你这是1732程序吧?只要把x=m/n改为x=m/a再用cout直接输出x*y,不要保留一位小数就可以了。

0
我要回答