两个角45°C的三角形 程式设计题:定义一个三角形类Ctriangle,求三角形面积和周长。
程式设计题:定义一个三角形类Ctriangle,求三角形面积和周长。
程式设计题:定义一个三角形类Ctriangle,求三角形面积和周长。
#include <iostream>using namespace std;class Ctriangle{private: double sa; double sb; double sc;public: Ctriangle(int a, int b, int c) { if(!(( a< 0 || b < 0 || c< 0) || ( a + b < c ) || ( a + c < b) || ( b + c < a))) { sa = a; sb = b; sc = c; } else { cout << "cannot Form A triangle!" << endl; } } double GetPerimeter() { return sa + sb + sc; } double GetArea() { double p = GetPerimeter() / 2; p = p *( p - sa ) * ( p - sb) * ( p - sc); return sqrt(p); }};int main(){ Ctriangle tmp(3, 4, 5); cout << "周长= " << tmp.GetPerimeter() << endl; cout << "面积= " << tmp.GetArea() << endl; return 0;}用C#定义一个三角形类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace test
{
class SanJiao
{
private double a;
/ <summary>
/ 返回边1
/ </summary>
public double A
{
get { return a; }
}
private double b;
/ <summary>
/ 返回边2
/ </summary>
public double B
{
get { return b; }
}
private double c;
/ <summary>
/ 返回边3
/ </summary>
public double C
{
get { return c; }
}
bool boolS = false;
/ <summary>
/ 给三角形赋值,返回真则赋值成功,返回假则表示输入三角形的山条边是不合法的
/ </summary>
/ <param name=x>边1</param>
/ <param name=y>边2</param>
/ <param name=z>边3</param>
/ <returns></returns>
/
public bool insetABC (double x,double y,double z){
if(z>0&&x>0&&y>0&&(z+x)>y&&(z+y)>x&&(x+y)>z&&(z-x)<y&&(z-y)<x&&(x-y)<z)
{
a = z;
b = y;
c = z;
boolS = true;
}
else
{
boolS = false;
}
return boolS;
}
c^2=a^2+b^2-2abcosC
/ <summary>
/ 根据两边及其夹角给三角形赋值
/ </summary>
/ <param name=x>边1</param>
/ <param name=y>边2</param>
/ <param name=D>夹角</param>
/ <returns></returns>
public bool insertCAB(double x, double y, double D)
{
if (D > 0 && x > 0 && y > 0)
{
a = x;
b = y;
double c=Math.Sqrt(a*a+b*b-2*a*b*Math.Cos(D));
boolS = true;
}
else
{
boolS = false;
}
return boolS;
}
a,b,c
p=(a+b+c)/2
则面积的平方s^2=p*(p-a)*(p-b)*(p-c)
/ <summary>
/ 求三角形的面积
/ </summary>
/ <returns></returns>
public double S()
{
if (boolS)
{
double p = (a + b + c) / 2;
return p * (p - a) * (p - b) * (p - c);
}
else
{
return 0;
}
}
/ <summary>
/ 求三角形的周长
/ </summary>
/ <returns></returns>
public double Leng()
{
if (boolS)
{
return a + b + c;
}
else
{
return 0;
}
}
}
}
三角形面积和周长公式
面积=底×高÷2
周长=三条边之和
用C++ 定义一个三角形类(Triangle)。属性为三条边,计算周长和面积。
#include<iostream>
#include<string>
#include<math.h>
using namespace std;
class Triangle{
int a,b,c;
public:
double Area(){
double s=(a+b+c)/2;
return sqrt(s*(s-a)*(s-b)*(s-c));
};
int Perimeter(){
return a+b+c;
}
void Input(){
cin>>a>>b>>c;
}
};
void main(){
Triangle t1;
t1.Input();
cout<<t1.Area()<<" "<<t1.Perimeter();
}
自己写的 可执行
这个很简单啊
定义个Point类 包含x和y的资讯
派生之 包含三个点的座标资讯 和求面积州长的函式就可以啦

已知一个三角形周长为a求三角形面积设计一个演算法?
用海伦公式 设三边是 a b c ,周长是d 面积等于根号下(d-a)*(d-b)*(d-c)
vb程式设计:以知三角形三边长度求三角形面积和周长
面积计算公式:计算公式s=(1/4)√(a+b+c)*(a+b-c)*(a+c-b)*(b+c-a)
周长就是 三个相加了
这段程式码你参考下,首先判断输入的三边长度是否合法,然后再计算
Private Sub Command1_Click(Index As Integer)
Dim s As Single
Select Case Index
Case 0 '计算
If a(0) <= 0 Or a(1) <= 0 Or a(2) <= 0 Or _
a(0) + a(1) <= a(2) Or a(0) + a(2) <= a(1) Or a(1) + a(2) <= a(0) Then
'任意边长为0或负数或任意两边长之和小于等于第三边是非三角形
MsgBox "资料输入有误!"
Exit Sub
Else
a(3) = 0.25 * ((a(0) + a(1) + a(2)) * (a(0) + a(1) - a(2)) * (a(0) + a(2) - a(1)) * (a(1) + a(2) - a(0))) ^ 0.5
Text1(3).Text = Trim(a(3))
End If
Case 1 '清除
For s = 0 To 3
Text1(s).Text = "": a(s) = 0
Next
Case 2 '退出
End
End Select
End Sub
Private Sub Text1_Change(Index As Integer)
If Val(Text1(Index).Text) <= 0 Then Text1(Index) = "": Exit Sub '禁止输入非正数
a(Index) = Val(Text1(Index).Text) '赋值三边
End Sub
'有什么问题 欢迎+Q
Java 程式设计求三角形面积
package demo;import java.util.Scanner;public class Triangle{ /** * 等腰 */ public static final int ISOSCELES = 1; /** * 等边 */ public static final int EQUILATERAL = 2; /** * 直角 */ public static final int RIGHTANGLE = 4; /** * 普通 */ public static final int GENERAL = 6; /** * 不构成三角形 */ public static final int NOTHING = 7; double a; double b; double c; public Triangle ( double a, double b, double c ) { this.a = a; this.b = b; this.c = c; } public static int isWhichOne ( Triangle triangle ) { double a = triangle.a; double b = triangle.b; double c = triangle.c; if (a + b > c && a + c > b && b + c > a && Math.abs (a - b) < c && Math.abs (a - c) < b && Math.abs (b - c) < a) { if (a == b && a == c) { return Triangle.EQUILATERAL | Triangle.ISOSCELES; } else if (a * a + b * b == c * c || a * a + c * c == b * b || c * c + b * b == a * a) { if (a == b || a == c || b == c) { return Triangle.RIGHTANGLE | Triangle.ISOSCELES; } return Triangle.RIGHTANGLE; } else if (a == b || a == c || b == c) { return Triangle.ISOSCELES; } else { return Triangle.GENERAL; } } else { return Triangle.NOTHING; } } public static double perimeter ( Triangle triangle ) { return triangle.a + triangle.b + triangle.c; } public static double area ( Triangle triangle ) { double a = triangle.a; double b = triangle.b; double c = triangle.c; return 1.d / 4 * Math.sqrt (( a + b + c ) * ( a + b - c ) * ( a + c - b ) * ( b + c - a )); } public static void translate ( Triangle triangle ) { int type = isWhichOne (triangle); switch (type) { case Triangle.ISOSCELES: System.out.println ("等腰三角形"); break; case ( Triangle.EQUILATERAL | Triangle.ISOSCELES ): System.out.println ("等边三角形 + 等腰三角形"); break; case Triangle.GENERAL: System.out.println ("普通三角形"); break; case ( Triangle.RIGHTANGLE | Triangle.ISOSCELES ): System.out.println ("直角三角形 + 等腰三角形"); break; case Triangle.RIGHTANGLE: System.out.println ("直角三角形"); break; default: System.out.println ("不构成三角形"); break; } if (type != Triangle.NOTHING) { System.out.println ("周长是:" + perimeter (triangle)); System.out.println ("面积是:" + area (triangle)); } } public static void main ( String[] args ) { System.out.println ("输入构成三角形的三边长:(空格隔开)n退出按 (n/N), 否则继续: "); String error = "输入有误,请重新输入: "; String reg = "^\d+\s+\d+\s+\d+$"; Scanner scanner = new Scanner (System.in); while (scanner.hasNextLine ()) { String line = scanner.nextLine ().trim (); if ("n".equalsIgnoreCase (line)) { break; } if (!line.matches (reg)) { System.err.println (error); } else { try { String[] input = line.split ("\s+"); int a = Integer.parseInt (input[0]); int b = Integer.parseInt (input[1]); int c = Integer.parseInt (input[2]); Triangle triangle = new Triangle (a, b, c); translate (triangle); } catch (NumberFormatException e) { System.err.println (error); } System.out.println ("退出按 (n/N), 否则继续: "); } } scanner.close (); }}程式设计题输入三角形的三条边长,求三角形面积
#include"stdio.h"
#include<math.h>
int main()
{float a,b,c,p,s;
scanf("%f %f %f",&a,&b,&c);
if(a>=b+c||b>=a+c||c>=a+b)
{
printf("Can not make a triangle!n");
return 1;
}
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("s=%fn",s);
getch();
return 0;
}
在RT三角形ABC中,角C=90度,AB=10,三角形面积为24,求三角形周长。快
解设两直角边为a,b
则a²+b²=c²=100
1/2ab=24
即a²+b²=100
2ab=96
即(a+b)²=a²+b²+2ab=100+96=196
即a+b=14
即三角形周长=a+b+c=14+10=24