2014软专高级程序语言T4(三角形面积)

2023-11-05

平面有100个点,任意三个点可以构成一个三角形。编一个程序,输入100个点的坐标,输出在构成的所有三角形中,最大的三角形的面积。

代码如下:

#include<stdio.h>

double area(int x1,int y1,int x2,int y2,int x3,int y3)
{
	return (x1*y2-y1*x2+x2*y3-y2*x3+x3*y1-y3*x1)/2;
}

int main()
{
	int x[100]={
		1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,
		1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,
		1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,
		1,2,3,4,5,6,7,8,9,10
	};
	int y[100]={
		2,3,4,5,2,5,6,7,11,88,2,3,4,5,2,5,6,7,11,88,2,3,4,5,2,5,6,7,11,88,
		2,3,4,5,2,5,6,7,11,88,2,3,4,5,2,5,6,7,11,88,2,3,4,5,2,5,6,7,11,88,
		2,3,4,5,2,5,6,7,11,88,2,3,4,5,2,5,6,7,11,88,2,3,4,5,2,5,6,7,11,88,
		2,3,4,5,2,5,6,7,11,88
	};
	double maxx=0.0;
	for(int i=0;i<98;i++)//选第一个节点
	{
		for(int j=i+1;j<99;j++)//选第二个节点
		{
			for(int k=j+1;k<100;k++)//选第三个节点
			{
				double S=area(x[i],y[i],x[j],y[j],x[k],y[k]);
				if(S>maxx) maxx=S;
			}
		}
	}
	printf("%lf\n",maxx);
	return 0;
}

https://www.cnblogs.com/Running-Time/p/4753089.html

三点坐标求三角形的面积

方法1:行列式

设三角形的面积为S, 则S = (1/2)*(下面行列式)
|x1 y1 1| 
|x2 y2 1| 
|x3 y3 1|
即 S=(1/2)*(x1*y2+x2*y3+x3*y1-x1*y3-x2*y1-x3*y2) = (1 / 2) * ((x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1));

代码:

1

2

3

4

//行列式计算三角形面积

double area(Point p1, Point p2, Point p3)   {

    return fabs (0.5 * ((p2.x - p1.x) * (p3.y - p1.y) - (p3.x - p1.x) * (p2.y - p1.y)));

}

 

方法2:海伦公式

  S = sqrt (p * (p - a)(p - b)(p - c))  其中p = (a + b + c) / 2, abc为三角形三边长

  代码:

1

2

3

4

5

6

7

8

9

10

11

12

double dis(Point p1, Point p2)    {

    return sqrt ((p1.x - p2.x) * (p1.x - p2.x) + (p1.y - p2.y) * (p1.y - p2.y));

}

//海伦公式计算三角形面积

double area(Point p1, Point p2, Point p3)  {

    double a = dis (p1, p2);

    double b = dis (p2, p3);

    double c = dis (p3, p1);

    double p = (a + b + c) * 0.5;

    return sqrt (p * (p - a) * (p - b) * (p - c));

}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2014软专高级程序语言T4(三角形面积) 的相关文章

  • 破解一切模态,无限接近AGI!NUS开源全能「大一统」多模态大模型

    作者 好困 来源 新智元 继各类输入端多模态大语言模型之后 新加坡国立大学华人团队近期开源了一种支持任意模态输入和任意模态输出的 大一统 多模态大模型 火爆AI社区 继ChatGPT引爆2023年的AI潮后 各类开源LLM也陆续问世 紧接着
  • SEO如何通过围剿战术做覆盖率?

    很多SEO人员做排名 只懂得盯着主关键词 是不是只要把主关键词做上第一了 SEO人员的任务就算完成了呢 其实不是的 特别是一些中小型的企业产品站 主关键词可能每天流量只有几百 而且这几百的流量还要跟竞价 及前10名的竞争对手瓜分 最终进入自
  • LeetCode(力扣)968. 监控二叉树Python

    LeetCode968 监控二叉树 题目链接 代码 题目链接 https leetcode cn problems binary tree cameras description 代码 Definition for a binary tre
  • Python 3.9 安装及测试使用【手把手教你安装,亲测有用!】

    Python 3 9 安装及测试使用 本文首发于微信公众号 Python希望社 欢迎关注 完整详细的原文链接请点击这里 10月5日Python 3 9 已成功问世 在新的版本中 一些新的特性被开发了出来 其中主要包括了字典合并与更新 新的解
  • JAVA-单元测试、字段封装、构造器、方法重载

    单元测试 单元测试主要是用于提高编写代码质量 编写单元测试来对我们所编写的方法进行测试 单元测试是开发人员编写 单元测试依赖Junit 这个框架 单元测试方法上需加 Test assertXXX断言 主要是用于判断测试的通过的条件 字段封装
  • Flink项目1.1- 实时页面统计-热门页面topN

    1 需求 2 需求输出每个窗口访问量最大的5个地址 所以一定是无状态的输出 有两种办法 1 keyby后自己使用processfunction自己定义state 否则是有状态的输出 2 window后 windowAll方法 3 正常情况下
  • 华为云计算之FusionStorage虚拟机部署FSM

    华为云计算之FusionStorage虚拟机部署FSM 一 FusionStorage实际部署方式 1 融合部署 融合部署图示 融合部署建议 2 FusionStorage分离部署 分离部署图示 分离部署建议 二 FusionStorage
  • SpringBoot vue电影购票系统 电影院系统

    SpringBoot vue电影购票系统 电影院系统 SpringBoot 电影购票系统 电影院系统 功能介绍 首页 登录 注册 图片轮播 正在热播列表 热门榜单Top10 电影分类 按类型 地区展示 搜索 活动 留言 评价客服 购买电影票
  • LeetCode初级算法:数组--买卖股票的最佳时机 II

    以下是本人的C 算法学习笔记 记录在博客上以供自己随时查阅 题目描述 给定一个数组 它的第 i 个元素是一支给定股票第 i 天的价格 设计一个算法来计算你所能获取的最大利润 你可以尽可能地完成更多的交易 多次买卖一支股票 注意 你不能同时参
  • mavoneditor 显示html,Markdown编辑器 mavonEditor

    Markdown编辑器 mavonEditor 前端 HTML Markdown 627次浏览 0次点赞 2019 01 25 21 46 mavonEditor 是基于Vue的markdown编辑器 githup 项目地址 1 安装 np
  • html实现购物车全选,vue实现商品购物车全选与全不选项目实战

    项目需求 实现一个购物车 全选框实现对商家和商品的全选 商家全选框实现对当前商家所有商品的全选 取消其中一个商品则取消对应商家全选和全选框 选中一个商家下的所有商品则勾选对应商家的全选框 不勾选全选框 选中所有商品则勾选所有商家全选框和全选
  • 电脑不能正常启动windows怎么办,电脑系统无法正常启动

    在用电脑的时候 我们经常会碰到windows服务无法启动的问题 很多朋友也不知道怎么解决 加上导致电脑不能正常启动的因素有很多 所以 下面小编将和大家分享两种电脑无法正常启动windows解决方法 电脑不能正常启动windows怎么办 具体
  • Python做曲线拟合(一元多项式拟合及任意函数拟合)

    目录 1 一元多项式拟合 使用方法 np polyfit x y deg 2 任意函数拟合 使用 curve fit 方法 实例 1 初始化 x 和 y 数据集 2 建立自定义函数 3 使用自定义的函数生成拟合函数绘图 1 一元多项式拟合
  • pip 常用命令及控制台怎么查看python 及pip 和已安装包版本号

    在使用python的时候 经常使用到pip这个工具 可以很方便的线上安装依赖库 当然pip还有很多参数都可以帮我们去查询一些库信息 在安装python的时候 下载带有pip的安装包就可以直接安装pip啦 当然没有带pip的 也可以通过下载安
  • [C] 跨平台使用Intrinsic函数范例2——使用SSE2、AVX指令集 处理 双精度浮点数组求和

    作者 zyl910 本文面对对SSE等SIMD指令集有一定基础的读者 以双精度浮点数组求和为例演示了如何跨平台使用SSE2 AVX指令集 支持vc gcc编译器 在Windows Linux Mac这三大平台上成功运行 一 关键讲解 前文
  • 90道渗透测试面试题(附答案)

    2023年已经快过去一半了 不知道小伙伴们有没有找到自己心仪的工作呀 最近后台收到不少小伙伴说要我整理一些渗透测试的面试题 今天它来了 觉得对你有帮助的话记得点个赞再走哦 1 什么是渗透测试 渗透测试是一种评估计算机系统 网络或应用程序的安
  • 四.javascript对象

    目录 一 对象的介绍 1 对象的概念 2 对象的属性 3 对象的方法 二 创建对象 1 使用构造函数创建内置对象 2 直接创建自定义对象 3 使用自定义构造函数创建对象 三 对象的属性 1 设置对象的属性 2 存取对象属性 3 属性的枚举
  • 使用gpt和mindshow快速制作PPT

    目录 准备工具 PPT制作大体流程 工具 步骤 获取PPT大纲 注意 要markdown格式 编辑 打开MindShow 找不到的可以私信我 编辑 创建ppt 编辑 选择ppt基本样式 编辑 点击下载 不过要提前登录一下就好 编辑 添加动画
  • Qt(c++)调用python一直报错slot、hypot等

    最近在Qt里调用python代码 参考教程 https blog csdn net a137748099 article details 119217197 引入python的include libs之后 在c 里写了简单的调用python

随机推荐

  • 各种通信方式对比

    各种通信方式对比 2011年11月09日 16 58 25 horatio2010 阅读数 444 通信名称 连接端 通信方式 传输顺序 通信速度 I2C scl sda 2 串行 高位 低位 标准模式速度100kbit s 快速模式
  • 前后端常见的几种鉴权方式

    本文链接 https blog csdn net wang839305939 article details 78713124 最近在重构公司以前产品的前端代码 摈弃了以前的session cookie鉴权方式 采用token鉴权 忙里偷闲
  • C#深拷贝和浅拷贝的区别

    先上代码 后解释 public class Person public int Age public DateTime BirthDate public string Name public IdInfo IdInfo
  • C++ Templates:实例化

    延迟实例化 当隐式实例化类模板时 同时也实例化了该模板的每个成员声明 但并没有实例化相应的定义 然而 存在例外 1 如果类模板包含了一个匿名的union 那么该union定义的成员同时也被实例化了 2 作为实例化类模板的结果 虚函数的定义可
  • react ref和组件API

    介绍 昨天学习到了生命周期 今天我们接着昨天的知识点继续学习 今天学习一下state setState以及ref和组件API 大家感兴趣的话可以跟随文章进行学习呦 state和setState state 组件自身状态 setState u
  • 【100%通过率 】【华为OD机试真题】模拟商场优惠打折(一)【2022 Q4

    华为OD机试 题目列表 2023Q1 点这里 2023华为OD机试 刷题指南 点这里 题目描述 模拟商场优惠打折 有三种优惠券可以用 满减券 打折券和无门槛券 满减券 满100减10 满200减20 满300减30 满400减40 以此类推
  • 辛普森悖论

    本系列主要为大家带来一整套的博弈论问题 广义 因为在面试的过程中 除了常规的算法题目 我们经常也会被问到一些趣味题型来考察思维 而这类问题中 很多都有博弈论的影子存在 这些公司里以FLAG Facebook LinkedIn Amazon
  • webpack5.x性能优化之 代码分包 配置文件分离 多入口 SplitChunks cacheGroups runtimeChunk dynamic import(动态导入) 懒加载 魔法注释

    webpack优化 文章目录 webpack优化 代码分离 认识代码分离 多入口起点 Entry Dependencies 入口依赖 SplitChunks chunks 其他的splitChunks属性 很少手动配置 minSize和ma
  • java多线程---C++没有内置的多线程机制,因此必须调用操作系统的多线程功能来进行多线程程序的设计。

    多线程 Java 的特点之一就是内置对多线程的支持 多线程允许同时完成多个任务 实际上多线程使人产生多个任务在同时执行的错觉 因为目前的计算机的处理器在同一时刻只能执行一个线程 但处理器可以在不同的线程之间快速地切换 由于处理器速度非常快
  • uni-app 和 spring boot 实现通知栏消息推送 (第二版)

    背景 上次第一版打包上线后 无法使用推送失效 第一版使用的是 websocket h5puls 原因 估计是云打包后对这个做了一些编译处理 导致失效 解决方案 用官网的教程 走个推服务器 取消后端自己的websocket实现 虽然麻烦 但是
  • 深度学习入门(四):经典网络架构(Alexnet、Vgg、Resnet)

    一 经典网络架构 Alexnet 2012年ImageNet竞赛冠军 8层神经网络 5层卷积层 3层全连接 二 经典网络架构 Vgg 2014 年ImageNet 竞赛冠军 VGG 最大的特点就是它在之前的网络模型上 通过比较彻底地采用 3
  • Excutor线程池原理详解

    目录 一 线程池的创建以及参数 二 任务提交的方法 三 线程池参数解释 四 线程池原理 五 线程池原理图 六 execute方法执行流程图 一 线程池的创建以及参数 public ThreadPoolExecutor int corePoo
  • vue3.0版本给对象新增属性

    对象新增属性 Reflect set 目标对象 属性名 值 Reflect set val middle middle
  • Spring Cloud Alibaba 2021.0.1.0 版本发布啦

    01 什么是 Spring Cloud Alibaba Aliware Spring Cloud Alibaba 是由阿里巴巴 后文简称 阿里 中间件团队于 2018 年 7 月开源 为业界提供的一套基于阿里内部分布式技术的一站式微服务构建
  • JavaWeb学习-Servlet处理解析JSON文件导出Excel实例

    文章目录 前言 一 实例要求 二 主要问题点 1 保存请求中的文件 2 JSON的简单处理 3 Servlet共享数据 实现勾选信息导出为excel 三 源码 总结 前言 这里是javaweb小白第一次尝试写博客 主要是想记录一下自己在学习
  • vue 简单实现vuex原理

    效果图如下 1 准备好环境 使用 vue cil 初始化项目配置 npm install g vue cli 全局安装 vue cli vue create demo vue 创建项目 yarn add vuex安装vuex创建一个stor
  • 什么是区块链?区块链相关知识区入门

    初识区块链 1 区块链家族 一 去中心化 父亲 基本概念 中心化和去中心化就是集权与分权 去中心化是一种哲学中思想 在人类存在时即有 主旨为弱化中心 实现人与人之间的直接沟通 交易的一种方式 去中心化 不是不要中心 而是由节点来 自由选择中
  • 使用gdb调试出现 No debugging symbols found in a.out

    使用常规的gcc编译或者使用带调式信息 g的编译都有可能会在使用gdb工具的时候出现No debugging symbols found in a out错误 1 常规编译 使用常规编译生成的可执行文件正常一定会出现No debugging
  • 服务器强制关机后,无法开机

    服务器强制关机后 开不了机 开机后显示 dev sda1 recovering journal dev sda1 clean 3905813 58720032 files 193134708 234422272 blocks 经询问 是由强
  • 2014软专高级程序语言T4(三角形面积)

    平面有100个点 任意三个点可以构成一个三角形 编一个程序 输入100个点的坐标 输出在构成的所有三角形中 最大的三角形的面积 代码如下 include