算法提高 12-1三角形  
时间限制:1.0s   内存限制:256.0MB
    
问题描述
  为二维空间中的点设计一个结构体,在此基础上为三角形设计一个结构体。分别设计独立的函数计算三角形的周长、面积、中心和重心。输入三个点,输出这三个点构成的三角形的周长、面积、外心和重心。结果保留小数点后2位数字。
样例输出
与上面的样例输入对应的输出。
例:
数据规模和约定
  输入数据中每一个数的范围。
  例:doule型表示数据。
 
作者注释:本题不难,只是计算公式要知道——上百度查一下外心,重心,中心的公式咯。
代码如下:
 /*
求三角形的外接圆心坐标:O(x,y)
三角形:a(x1,y1) b(x2,y2) c(x3,y3)
满足:A1*x+B1y=C1;A2*x+B2y=C2;
根据克拉默法则:
x=((C1*B2)-(C2*B1))/((A1*B2)-(A2*B1));
y=((A1*C2)-(A2*C1))/((A1*B2)-(A2*B1));
*/
/*
求三角形的外心的坐标:
满足:A1*x+B1y=C1;A2*x+B2y=C2;
根据克拉默法则:
x=((C1*B2)-(C2*B1))/((A1*B2)-(A2*B1));
y=((A1*C2)-(A2*C1))/((A1*B2)-(A2*B1));
*/
#include<stdio.h>
#include<math.h>
#include<string.h>
int x[],y[];
void zc(){
double a=(x[]-x[])*(x[]-x[])+(y[]-y[])*(y[]-y[]);
double b=(x[]-x[])*(x[]-x[])+(y[]-y[])*(y[]-y[]);
double c=(x[]-x[])*(x[]-x[])+(y[]-y[])*(y[]-y[]);
printf("%.2lf\n",sqrt(a)+sqrt(b)+sqrt(c));
}
void mj(){
double a=(x[]-x[])*(x[]-x[])+(y[]-y[])*(y[]-y[]);
double b=(x[]-x[])*(x[]-x[])+(y[]-y[])*(y[]-y[]);
double c=(x[]-x[])*(x[]-x[])+(y[]-y[])*(y[]-y[]);
a=sqrt(a);
b=sqrt(b);
c=sqrt(c);
double s=(a+b+c)/;
s=s*(s-a)*(s-b)*(s-c);
printf("%.2lf\n",sqrt(s));
}
void waixin(double &a,double &b){
double A1=*(x[]-x[]);
double B1=*(y[]-y[]);
double C1=(x[]*x[]+y[]*y[]-x[]*x[]-y[]*y[]);
double A2=*(x[]-x[]);
double B2=*(y[]-y[]);
double C2=x[]*x[]+y[]*y[]-x[]*x[]-y[]*y[]; a=((C1*B2)-(C2*B1))/((A1*B2)-(A2*B1));
b=((A1*C2)-(A2*C1))/((A1*B2)-(A2*B1));
}
void zhongxin(double &c,double &d){
c=(x[]+x[]+x[])/3.0;
d=(y[]+y[]+y[])/3.0;
}
main(){
for(int i=;i<=;i++){
scanf("%ld%ld",&x[i],&y[i]);
}
zc();
mj();
double a,b;
waixin(a,b);
printf("%.2lf %.2lf\n",a,b);
double c,d;
zhongxin(c,d);
printf("%.2lf %.2lf",c,d);
}

C语言 · 三角形的更多相关文章

  1. C语言 · 三角形面积

     算法提高 三角形面积   时间限制:1.0s   内存限制:256.0MB      问题描述 由三角形的三边长,求其面积. 提示:由三角形的三边a,b,c求面积可以用如下的公式: s=(a+b+c ...

  2. 【OpenGL4.0】GLSL渲染语言入门与VBO、VAO使用:绘制一个三角形 【转】

    http://blog.csdn.net/xiajun07061225/article/details/7628146 以前都是用Cg的,现在改用GLSL,又要重新学,不过两种语言很多都是相通的. 下 ...

  3. C 语言实例 - 创建各类三角形图案

    C 语言实例 - 创建各类三角形图案 创建三角形图案. 实例 - 使用 * 号 #include <stdio.h> int main() { int i, j, rows; printf ...

  4. C语言 · 数字三角形 · 算法训练

    问题描述 (图3.1-1)示出了一个数字三角形. 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大. ●每一步可沿左斜线向下或右斜线向下走: ●1<三角形行数≤100: ...

  5. 【C语言】判断三角形类型

    根据输入的三角形的三边判断三角形的类型,并输出其面积和类型. #include<stdio.h> #include<stdlib.h> #include<math.h&g ...

  6. C语言 · 数字三角形

    算法训练 数字三角形   时间限制:1.0s   内存限制:256.0MB      问题描述 (图3.1-1)示出了一个数字三角形. 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字 ...

  7. 用c语言打印一个三角形

    #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h&g ...

  8. 【C语言】已知三角形三边长,求三角形面积

    一. 数学基础: 已知三角形的三边,计算三角形面积,需要用到海伦公式: 即p=(a+b+c)/2 二. 算法: 输入三个边长,套用海伦公式计算面积,并输出. 可以先判断是否可以构成三角形,即任意两边之 ...

  9. C 语言实例 - 判断三边能否构成三角形

    原理: 要判断输入的三条边能否够成三角形,只需满足条件两边之和大于第三边即可. #include<stdio.h> int main() { printf("请输入三个边长:\n ...

随机推荐

  1. PHP生成缩略图、加水印

    <?php class ThumbWaterImages{ /** * 生成缩略图/加水印 * classname ThumbWaterImages * datetime:2015-1-15 * ...

  2. [Python]项目打包:5步将py文件打包成exe文件(转)

    1.下载pyinstaller并解压(可以去官网下载最新版): http://nchc.dl.sourceforge.net/project/pyinstaller/2.0/pyinstaller-2 ...

  3. windows平台安装redis服务

    有时候我们需要在windows平台上使用redis作为缓存服务,这个时候就需要将redis安装为window服务. 现在将我安装过程记录下来,方便自己或者有类似需求的同学参考.主要是参考网上现有的例子 ...

  4. OGG_GoldenGate日常维护(案例)

    2014-03-12 Created By BaoXinjian

  5. Error parsing XML: not well-formed (invalid token) 报错

    鼠标右键选择Source然后再选Format 就可以解决此问题

  6. Gitbook 生成 pdf 中文字体错乱问题解决办法

    Gitbook 生成 pdf 中文字体错乱问题解决办法   用过 Gitbook 的都知道, Gitbook 会自动生成 pdf 以提供下载, 但十分遗憾的是自动生成的 pdf 对中文的支持并不好, ...

  7. Android --------------------ActionBar 与 ViewPager 和 ActionTab 切换 的源代码实现

    參考网址: 点击打开链接 源代码实现: package com.example.actionbardemo2; import android.app.ActionBar; import android ...

  8. 批处理学习笔记6 - 重定向符>和>>

    重定向符大概有6,7种,和%符号差不多各有各的用途.这里学习>和>> >  是左边的值把右边的值覆盖 >> 是左边的值添加在右边的值上面 rem 是批处理的注释,类 ...

  9. Xcode真机调试报错:The application could not be verified.

    今天真机调试的时候遇到这个错误: The application could not be verified. 这还是第一次遇到,应该是手机上的app的证书跟如今的证书不一致导致. 解决方法有两个 x ...

  10. SQL Server 创建约束图解 唯一 主键

    SQLServer中有五种约束,Primary Key约束.Foreign Key约束.Unique约束.Default约束和Check约束,今天使用SQL Server2008来演示下这几种约束的创 ...