[C语言]给定直角三角形面积和斜边长
【A题】
翘课的HugeGun_
时间限制:1000ms 内存限制:65536kb
题目描述
HugeGun学姐很喜欢翘课。不幸的是,这一次她被发现了。
老师让她打扫了教室。当她把扫把靠在墙上时突然发现,由于灯光来自正上方,扫把与在墙面和地面的影子构成了一个直角三角形。
于是她想知道,对于一个直角三角形,给定斜边的边长和这个三角形的面积,如何计算直角边的边长。
睿智的你当然会帮助她。

输入
第一行一个整数nn表示数据组数
接下来nn行,每行2个整数l,Sl,S分别表示斜边长度和面积大小
输出
输出nn行
第ii行为第ii组数据的答案:
若不能找到直角边长满足条件,输出hhhg。
否则输出两个两位小数a,ba,b表示直角边长,其中需要满足a<=ba<=b
输入样例
3
5 6
7 8
1 2
输出样例
3.00 4.00
2.44 6.56
hhhg
数据范围
1≤l≤106
0≤S≤l2
【我的题解】
设三角形两边为a,b,斜边为l;
S=1/2*a*b;
l2=a2+b2;
解方程得答案。
#include<stdio.h>
#include<math.h>
#include<string.h>
int main(){
double a,b,l,s;
double gen1,gen2;
int n;
scanf("%d",&n);
while(n--){
scanf("%lf%lf",&l,&s);
if(l*l<*s) {
printf("hhhg\n");
continue;
}
gen1=sqrt(l*l-*s);
gen2=sqrt(l*l+*s);
a=(gen2+gen1)/;
b=(gen2-gen1)/;
printf("%.2lf %.2lf\n",b,a);
}
return ;
}
感谢浏览!❤
[C语言]给定直角三角形面积和斜边长的更多相关文章
- 【C语言】已知三角形三边长,求三角形面积
一. 数学基础: 已知三角形的三边,计算三角形面积,需要用到海伦公式: 即p=(a+b+c)/2 二. 算法: 输入三个边长,套用海伦公式计算面积,并输出. 可以先判断是否可以构成三角形,即任意两边之 ...
- C语言:已知三角形三边长求面积
//已知三角形三边长求面积 #include <stdio.h> #include <math.h> int main() { float a,b,c,p,s; int x=0 ...
- 用python计算直角三角形斜边长
直接上代码 import math def hypotenuse(a,b): return(math.sqrt(a**2+b**2)) side1 = int(input("第一条直角边:& ...
- python 语言打印直角三角形的几种方法
方法1:全部打印语句 print('*') print('**') print('***') print('****') 方法2:简单使用循环 for i in range(5): print('*' ...
- hdu1071(抛物线弓形面积阿基米德算法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1071 题意:给出抛物线的顶点和它与一直线的两交点,求他们围成的面积: 思路: 可以直接求出他们的方程式 ...
- c语言小练习(蛮好玩的)
1.求三个数的平均数,要求保留三位小数位 #include <conio.h> #include<stdio.h> int main(){ int a,b,c; float a ...
- C语言学习10
判断三角形的类型 根据输入的三角形的三条边判断三角形的类型,并输出它的面积. #include <stdio.h> #include <math.h> void judge_1 ...
- 【Java例题】2.6 三角形的面积
6. 用海伦公式计算三角形的面积. 设边长分别时a,b和c,s=(a+b+c)/2, 则三角形面积area=sqrt(s*(s-a)*(s-b)*(s-c)). package study; impo ...
- 2 JAVA语言的基本规则
1. 类名 类名需使用字母开头,使用驼峰命名法,如HelloWorld,对应的文件为 HelloWorld.java,与类名保持一致.编译好的字节码文件为 HelloWord.class. 2. 区分 ...
随机推荐
- Python逆向(五)—— Python字节码解读
一.前言 前些章节我们对python编译.反汇编的原理及相关模块已经做了解读.读者应该初步掌握了通过反汇编获取python程序可读字节码的能力.python逆向或者反汇编的目的就是在没有源码的基础上, ...
- CentOS 6.5开放端口方法
lsof -i tcp:80 列出所有端口 netstat -ntlp 1.开启端口(以80端口为例) 方法一: /sbin/iptables -I ...
- 记一次vue+vuex+vue-router+axios+elementUI开发(二)
开发环境跟脚手架初始完毕后,我们开始配置axios请求后台接口 axios使用说明:https://www.kancloud.cn/yunye/axios/234845 1.本人是在脚手架中的sr ...
- html5的source元素
html5的source元素 一.总结 一句话总结: 主要是解决视频播放时候的浏览器的兼容问题 二.html5的source元素 学习要点 掌握source元素的用法 source元素-解决浏览器额兼 ...
- Qt类关系一览表
- Looper: Looper,Handler,MessageQueue三者之间的联系
在Android中每个应用的UI线程是被保护的,不能在UI线程中进行耗时的操作,其他的子线程也不能直接进行UI操作.为了达到这个目的Android设计了handler Looper这个系统框架,And ...
- cordova run android 可能遇到的错误解决
运行: ionic cordova build 等待下载,然后根据提示 输入android或者ios平台,即可 运行cordova run android 报错: 最快捷的解决方法就是使用Androi ...
- Flutter Wrap 组件实现流布局
Wrap 可以实现流布局,单行的 Wrap 跟 Row 表现几乎一致,单列的 Wrap 则跟 Row 表 现几乎一致.但 Row 与 Column 都是单行单列的,Wrap 则突破了这个限制,main ...
- Linux下文件乱码问题
通常编码会在windows环境下进行,当把windows下的代码拷贝到linux环境时,会出现 error: “build.sh /bin/bash^M: 坏的解释器:没有那个文件或目录” 等等类似问 ...
- 004-行为型-07-备忘录模式(Memento)
一.概述 又叫做快照模式(Snapshot Pattern)或Token模式 保存对象的内部状态,并在需要的时候(undo/rollback)恢复对象以前的状态. 意图:在不破坏封装性的前提下,捕获一 ...