精华内容
下载资源
问答
  • 问题: ...求圆半径R和圆心坐标(X,Y) X,Y,R为未知数, x1,y1,x2,y2,x3,y3为常数 则由圆公式: (x1-X)²+(y1-Y)²=R²(1)式 (x2-X)²+(y2-Y)²=R²(2)式 (x3-X)²+(y3-Y)²=R²(3)式 (1)-(2)...

    问题:

    已知圆上三个点坐标分别为(x1,y1)、(x2,y2)、(x3,y3)

    求圆半径R和圆心坐标(X,Y)

    X,Y,R为未知数,

    x1,y1,x2,y2,x3,y3为常数

    则由圆公式:

    (x1-X)²+(y1-Y)²=R²     (1)式

    (x2-X)²+(y2-Y)²=R²     (2)式

    (x3-X)²+(y3-Y)²=R²     (3)式

    (1)-(2),就是左边减左边,右边减右边,得到

      x1²-2Xx1+X²+(y1²-2Yy1+Y²)-(x2²-2Xx2+X²)-(y2²-2Yy2+Y²)=R²-R²

    整理得

      x1²-x2²-2*x1*X+2*x2*X+y12-y22-2*y1*Y+2*y2*Y=0

    (2)-(3)整理得:

      x2²-x3²-2*x2*X+2*x3*X+y22-y32-2*y2*Y+2y3*Y=0

    再整理上面两式得 (2x2-2x1)X+(2y2-2y1)Y=x2²-x1²+y2²-y1² (2x3-2x2)X+(2y3-2y2)Y=x3²-x2²+y3²-y2²

    令: a=2x3-2x2;b=2y3-2y2;c=x3²-x2²+y3²-y2² e = 2x2-2x1;f=2y2-2y1;g=x2²-x1²+y2²-y1²

    于是有 eX+fY=g  aX+bY=c

    解得 X=(gb-cf)\(eb-af) Y=(ag-ce)\(af-be)

    R=sqrt((X-x1)*(X-x1)+(Y-y1)*(Y-y1))则圆心坐标为(X,Y),半径为R

     1 程序实现:
     2 void Calculate_cicular(Point px1, Point px2, Point px3)
     3 {
     4     int x1, y1, x2, y2, x3, y3;
     5     int a, b, c, g, e, f;
     6     
     7     x1 = px1.x;//定义点的坐标
     8     y1 = px1.y;
     9     x2 = px2.x;
    10     y2 = px2.y;
    11     x3 = px3.x;
    12     y3 = px3.y;
    13     
    14     e = 2 * (x2 - x1);
    15     f = 2 * (y2 - y1);
    16     g = x2*x2 - x1*x1 + y2*y2 - y1*y1;
    17     
    18     a = 2 * (x3 - x2);
    19     b = 2 * (y3 - y2);
    20     c = x3*x3 - x2*x2 + y3*y3 - y2*y2;
    21     
    22     X = (g*b - c*f) / (e*b - a*f);
    23     Y = (a*g - c*e) / (a*f - b*e);
    24 
    25     R = sqrt((X-x1)*(X-x1)+(Y-y1)*(Y-y1));
    26 
    27 } 

     

    转载于:https://www.cnblogs.com/MaZai/p/10280674.html

    展开全文
  • POJ 1799求圆半径

    2013-09-08 19:18:04
    题意:给出大半径,和小的个数,半径。 思路: 就是一个数学题,做如图的切线,那个角度是垂直的,然后就有(R-r)*sin(angle)=r,即r=Rsin(angle)/(1+sin(angle)) 1799 (Yeehaa!)(数学题)" ...

    题意:给出大圆的半径,和小圆的个数,求小圆的半径。

    思路:

    就是一个数学题,做如图的切线,那个角度是垂直的,然后就有(R-r)*sin(angle)=r,即r=Rsin(angle)/(1+sin(angle))

    POJ <wbr>1799 <wbr>(Yeehaa!)(数学题)

    #include<iostream>
    #include<cmath>
    #include<cstdio>
    using namespace std;
    int main()
    {
        int n;
        cin>>n;
        for(int i=1;i<=n;i++)
        {
            double a,b,r,q,p=3.1415927;
            cin>>a>>b;
            q=p/b;
            r=a*sin(q)/(1+sin(q));
            printf("Scenario #%d:\n%.3f\n\n",i,r);
        }
        return 0;
    }

    展开全文
  • 简单求圆半径周长代码

    千次阅读 2018-09-01 00:01:37
    // 定义一个对象c1,从键盘输入一个值x并将其设定为c1的半径,计算并显示c1的面积和周长 cin >>x; c1.setR(x); //公有函数的读入半径x cout (); cout (); cout "第一个C1到此为止!" ; Circle c2...
    #include<iostream>
    using namespace std;
    #define pi 3.14
    class Circle{
        private:
            double x;
        public:
        double getR(){
            return x;
        }
        void setR(double x){
            this->x=x;//接受私有权限的半径,并将半径设置为新的半
        }
        double Area()
        {
            return (pi*x*x);
            }   
            double len(){
                return (2*pi*x);
            }
            Circle(){x=0;}//不带形参的构造函数
            Circle(double x){this->x=x;} //带形参的构造函数
            Circle(Circle&c){this->x=c.getR();} //拷贝构造函数 
    };
    int main(){
        double x;
        Circle c1;// 定义一个圆对象c1,从键盘输入一个值x并将其设定为c1的半径,计算并显示c1的面积和周长
        cin>>x;
        c1.setR(x);//公有函数的读入半径x 
        cout<<c1.Area()<<endl;
        cout<<c1.len()<<endl;
        cout<<"第一个C1到此为止!"<<endl;
    
    
    
        Circle c2(2*x);//定义一个圆对象c2,并将半径初始化为2x,计算并显示c2的面积和周长
        cout<<c2.Area()<<endl;
        cout<<c2.len()<<endl;
        cout<<"第二个C2到此为止!"<<endl;
        Circle c3(c1);//定义一个圆对象c3,并用c1初始化c3,计算并显示c3的面积和周长
        cout<<c3.Area()<<endl;
        cout<<c3.len()<<endl;
        cout<<"第三个C3到此为止!"<<endl;
        return 0;
    
    }
    
    展开全文
  • 直接上代码 想看推理过程的点这里 #include <iostream> #include <math.h> #include <iomanip> #include <... //已知三个点确定半径和圆心 double x1,x2,x3,y1,y2,y3,x,y,...

    直接上代码

    想看推理过程的点这里

    #include <iostream>
    #include <math.h>
    #include <iomanip>
    #include <stdio.h>
    using namespace std;
    int main()
    {
    	//已知三个点确定圆的半径和圆心 
    	double x1,x2,x3,y1,y2,y3,x,y,r,A,B,C,D;
    	cin>>x1>>y1>>x2>>y2>>x3>>y3;
    	A=x1*(y2-y3)-y1*(x2-x3)+x2*y3-x3*y2;
    	B=(x1*x1+y1*y1)*(y3-y2)+(x2*x2+y2*y2)*(y1-y3)+(x3*x3+y3*y3)*(y2-y1);
    	C=(x1*x1+y1*y1)*(x2-x3)+(x2*x2+y2*y2)*(x3-x1)+(x3*x3+y3*y3)*(x1-x2);
    	D=(x1*x1+y1*y1)*(x3*y2-x2*y3)+(x2*x2+y2*y2)*(x1*y3-x3*y1)+(x3*x3+y3*y3)*(x2*y1-x1*y2);
    	
    	x=-B/(2*A);
    	y=-C/(2*A);
    	r=sqrt((B*B+C*C-4*A*D)/(4*A*A));
    	//-1表示圆不存在 
    	if(!A)cout<<"-1"<<endl;
    	else
    	printf("%.4lf %.4lf %.4lf\n",x,y,r);
    	return 0;
    }
    
    展开全文
  • Java用户输入圆半径求圆面积

    千次阅读 2020-09-11 10:36:44
    Java用户输入半径求圆半径 直接上代码 System.out.print("输入圆的半径:"); Scanner s=new Scanner(System.in); double r=s.nextDouble(); double S=Math.PI*r*r; System.out.print("面积为:"+S); 么的...
  • 本关任务:编写程序,输入圆半径求圆周长和圆面积。 输出时有文字说明,取3位小数。 相关知识 为了完成本关任务,你需要掌握: 1.圆周长 2.圆面积 3.输入的圆半径最好为float型 4、print()格式化输出 ...
  • 标签:// 设圆半径r = 1.5,圆柱高h = 3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积// 要求:用scanf输入数据,取小数点后两位#include int main(){float r,h;float c,s,sq,vq,vz;float pai = 3.1415926;...
  • * 输入圆形半径圆形的周长和圆形的面积,并将结果输出。 */ import java.lang.*; import java.util.Scanner; public class testcricle { public static void main(String[] args) { float area; System.o...
  • #include#definePI3.14159intmain(){floatr,l,s;scanf("%f",&r);printf("S:%.2f\n",PI*r*r);printf("L:%.2f\n",2*PI*r);return0;}程序问题有两点:1、 变量要先定义,赋值然后才能参与运算,所以要先输入r,才能...
  • import java.util.*; //调用util包中的所有类 public class Circle //定义一个Circle类 { public static void main(String[] args) //定义一个main()方法 ... //定义一个double类型的半径r System.out.printf...
  • 蓝桥杯:求圆半径

    2018-04-01 18:03:08
    圆的半径:pi*R ^2问题描述给定圆的半径r,求圆的面积。 输入格式输入包含一个整数r,表示圆的半径。 输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。#include &lt;bits/stdc++.h&...
  • import java.util.Scanner; public class Test01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入半径:");...
  • 给出任意一个三角形的三个边a,b,c。 要求:出这个三角形的外接圆半径
  • 圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。请编程序。 #include <stdio.h> void main(){ float r...
  • 圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆柱体积 题目 #include<iostream> #include<cmath> using namespace std; int main() { double r=1.5,h=3,pi=3.14; double c=0,sy=0,...
  • // 设圆半径r = 1.5,圆柱高h = 3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积 // 要求:用scanf输入数据,取小数点后两位 #include int main() { float r,h; float c,s,sq,vq,vz; float pai = 3....
  • 前言提到,大家一定会首先想到大钢镚儿上面的一,因为大家都是财迷。这里我们所说的是指圆形的,哈哈不过大钢镚儿也是圆形的。要计算的周长和面积,自然而然就要用到圆周率π,在我国,祖冲之在刘徽...
  • 首先我们要知道圆的面积计算公式:S = πr²,公式中S为所求圆的面积,π为圆周率,r为圆的半径。示例:# 定义一个方法来计算圆的面积def findArea(r):PI = 3.142return PI * (r*r);# 调用方法print("圆的面积为 %....
  • 输入半径求圆面积

    2013-07-02 13:26:33
    这是一个非常简单的Java小程序,输入半径求圆面积
  • 圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输人数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。请编程序 题目解析: 此题主要理解圆柱的各种求法,其次要求...
  • C程序设计 (第四版) 谭浩强 习题3.7 个人设计习题 3.7 设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字...
  • printf("请输入半径以及高\n"); scanf("%f %f",&r,&h); printf("半径为:%f\n",r); printf("的高为:%f\n",h); printf("\n\n\n\n"); c = 2*pi*r; s = pi*r*r; bs = pi * r; tj = 4/3*
  • C++给出圆的半径求圆的直径、周长和面积.pdf
  • 给定圆的半径r,求圆的面积。

    千次阅读 2019-10-16 19:27:08
    给定圆的半径r,求圆的面积。 输入格式 输入包含一个整数r,表示圆的半径。 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整数,但是输出是一个实数。 ...
  • 键盘输入圆的半径求圆的周长和面积 使用scanf("%d", &a)函数可以获取键盘输入的值,并将键盘输入的值保存到变量a中,其中%d表示输入的是整数,还可以使用%c、%f或%lf等,表示输入的是字符、单精度浮点数或双精度...
  • 求圆的周长,圆的面积,球的表面积,球体积,圆柱体积。 一. 1.l=2*pi*r 2.s=pi*r*r 3.sq=4*pi*r*r 4.sqt=(4/3)*pi*r*r*r 5.yzt=pi*r*r*h 注:可用数学函数pow(x,y):表示x的y次方。 二. 1.scanf输入 2.要有文字...
  • 给定圆的半径r,求圆的面积

    千次阅读 2018-08-12 13:16:54
    给定圆的半径r,求圆的面积 输入格式 输入包含一个整数r,表示圆的半径。 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整数,但是输出是一个实数。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,080
精华内容 13,232
关键字:

如何求圆的半径