黑客X档案官方论坛's Archiver

蓝枫叶 发表于 2008-3-13 06:54

C++输入三角形的三边长,求它的周长和面积!

分别输入三角形的三边长,判定是否符合输入的数据要求,然后求三角形的面积和周长,这是一道入门的C++题,希望大家能看懂,能快速的入门C++。会的先自己写一下,在看答案。答案是我自己写的,大家有更好的方法吗?
**** Hidden Message *****

[[i] 本帖最后由 蓝枫叶 于 2008-3-13 06:56 编辑 [/i]]

xiaoyelang 发表于 2008-3-14 13:57

本人新手

好啊,看下先~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

forgives 发表于 2008-3-18 19:17

我来试试~
#include<stdio.h>
#include<math.h>
void main()
{
int a,b,c,l,s;
scanf("%d%d%d",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a)
{l=a+b+c;
s=sqr();/*海伦公式(和变长有关的那个),具体我忘了*/
printf("周长是%d,面积是%d",l,s);
}
else
printf("你的输入有误!");
}

forgives 发表于 2008-3-18 19:20

s=sqrt(l*(l-a)*(l-b)*(l-c));是这个~
你写的不错~再看看我的好像简陋多了。。。还得继续学习。

死水 发表于 2008-3-23 10:13

公式忘了,进来看一下你怎么求的!

ticaleen 发表于 2008-3-23 10:58

楼上的那个是c语言的            .

wjh2326384 发表于 2008-3-23 11:11

::01:: ::01:: ::01:: 看看::16:: ::04::

neeke 发表于 2008-3-23 12:30

::08:: 请问LZ可不可以用JAVA写?

mytea 发表于 2008-3-28 16:33

哈哈,我的书上就有这样的题目!!一模一样的!!

死神的眼睛 发表于 2008-4-5 10:27

回复 3# 的帖子

楼主出的题是让用C++编写,
而你使用C编的
::08::

死神的眼睛 发表于 2008-4-5 10:28

3楼的程序好像使用C语言编写的::08:: ::08::

wzywsk 发表于 2008-4-5 11:13

我会C还没学C++,不过::02:: ::02:: 看看

mikeshmily 发表于 2008-4-8 14:03

正在埋头学习C++。。。。。有志同道合的朋友一起交流么??

QQ11736569

gxd722 发表于 2008-4-12 16:52

3楼的要改成c++也很简单啊,
#include<iostream>
using namespace std;
把scanf改成cin,printf改成cout就行了……

_Faust 发表于 2008-4-12 21:03

呵呵,来看看学习学习::15::

_Faust 发表于 2008-4-12 21:05

::19:: 怎么下载不了附件的……我想学习更优的算法啊

kangjiang 发表于 2008-4-12 21:34

学习的态度来看看。

mikeshmily 发表于 2008-4-13 15:13

[color=magenta]前提是  a b c  能构成三角形[/color]

#include "stdafx.h"
#include <iostream>
#include <cmath>
int main()
{
     using namespace std;
     double a,b,c,l,s;//定义三边长分别为 a,b,c 周长为l 面积为 s
     cout  << "请输入边长a: " <<endl;
     cin >> a;
     cout  << "请输入边长b: " <<endl;
     cin >> b;
     cout  << "请输入边长c: " <<endl;
     cin >> c;
      
     l = a + b+ c;
     cout  << "三角形周长为:" << l << endl;
     [color=red]s = (a+b+c)/2;
     s=sqrt(s*(s-a)*(s-b)*(s-c));//海伦公式
[/color]     cout << "三角形面积为:" << s << endl;
return 0;
}

最终 在VC++2005中通过编译  无错。。。另外

[color=magenta]前提是  a b c  能构成三角形[/color]

[[i] 本帖最后由 mikeshmily 于 2008-4-15 20:15 编辑 [/i]]

布莱客 发表于 2008-4-14 13:51

我也来写:
#include <iostream>
#include<math>
int main()
{
    double a,b,c,d,e;
    cout <<"请输入三角形三边长:/n";
    cin >> a>>b>>c;
    cout<<"您输入的三角形三边长分别为"<<a<<" "<<b<<" "<<c<<endl;
    d=(a+b+c)/2;
    e=d(d-a)(d-b)(d-c);
    cout<<"三角形周长为:"<<a+b+c<<endl
            <<"面积为:"<<sqrt(e)<<endl;
    return 0;
}
三楼的朋友写的貌似是c的。。。

[[i] 本帖最后由 布莱客 于 2008-4-14 13:54 编辑 [/i]]

mikeshmily 发表于 2008-4-15 19:54

楼上错误提示

项不会计算为接受 1 个参数的函数

在 e= ...这个式子有错。。。另外有几个其他的小问题哦。。。

我也一直在关注这个问题。。。

那个公式是怎样的列?

刚刚认真搞了下

下面

[color=magenta]前提 a b c 能构成三角形[/color]
[color=#ff00ff][/color]
#include "stdafx.h"
#include <iostream>
#include <cmath>
int main()
{
     using namespace std;
     double a,b,c,l,s,p;//定义三边长分别为 a,b,c 周长为l 面积为 s
     cout  << "请输入边长a: " <<endl;
     cin >> a;
     cout  << "请输入边长b: " <<endl;
     cin >> b;
     cout  << "请输入边长c: " <<endl;
     cin >> c;
      
     l = a + b+ c;
     cout  << "三角形周长为:" << l << endl;
     p = (a+b+c)/2;
     s=sqrt(p*(p-a)*(p-b)*(p-c));//海伦公式
     cout << "三角形面积为:" << s << endl;
return 0;
}

[[i] 本帖最后由 mikeshmily 于 2008-4-15 20:18 编辑 [/i]]

页: [1] 2


Powered by Discuz! 6.1.0  © 2001-2007 Comsenz Inc.