编写一个程序随机产生3个20以内的数作为三角形三条边的长,检查能否构成一个三角形。
可以使用Math。radom():产生一个[0.0,1.0)之间的一个双精度实数。
public class SanJiaoXing{
public static void main(String args[])
{
int a,b,c;
double d=Math.random();
a=(int) (d*20);
b=(int) (d*20);
c=(int) (d*20);
if((a+b>c)&&(a-b<c))
System.out.println("Yes");
else
System.out.println("No");
}
}
int main(void)
{
flioat a,b,c;
scanf("%f %f %f,&a,&b,&c");
if(a+b>c&&a+c>b&&b+c>a)
printf("可以构成三角形
");
else
printf("不可以构成三角形");
return 0;
}
程序如下所示:
#include <stdio.h>
int main()
{
float a,b,c;
printf("请输入边长:
");
scanf("%f,%f,%f",&a,&b,&c);
if(a+b>=c || a+c>=b || b+c>=a)
{ if (a==b&&a==c&&b==c)
printf("等边三角形
");
else if ((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("直角三角形
");
else if (a==b||a==c||b==c )
printf("等腰三角形
"); }
else
printf("普通三角形
");
return 0;
}
这类题目通常按照一定的顺序给出一系列量,要求根据这些已知的量找出一般规律,而找出的规律通常包序列号,所以把变量和序列号放在一起加以比较,就比较容易发现其中的奥秘。
一般是先观察,有什么特点,然后依次排查几种常用的方法,比如差值,相邻的三项有什么运算关系,如果数变化剧烈,可以考虑平方、立方,还要熟悉常用的一些平方值和立方值。
import java.util.Random;
public class Cal {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Cal();
}
public static void Cal()
{
Random Sj= new Random();
int [] bian =new int [3];
for(int i=0;i<3;i++)
{
bian[i]=Sj.nextInt(20)+1;
}
for(int value:bian)
{
System.out.print(value+" ");
}
//bian[0]=3; //此处为实验直角三角形,你可以实验一下,去掉注释
//bian[1]=4; //
//bian[2]=5; //
if(bian[0]+bian[1]>bian[2] && bian[0]-bian[1]<bian[2])
{
//满足,能组成
//算面积
//先求周长的一半
double zcyb=0.5*(bian[0]+bian[1]+bian[2]);
System.out.println("周长一半等于:"+zcyb);
double mianji=Math.sqrt(zcyb*((zcyb-bian[0])*(zcyb-bian[1])*(zcyb-bian[2])));
System.out.println("面积等于:"+mianji);
}
else
{
System.out.println(bian[0]+" "+bian[1]+" "+bian[2]+"不能组成三角形");
}
}
}
好好好好好好好
使用随机函数,产生三个2位整数,输出到页面,并求出三个数中的最大值...
include<stdio.h>#include<stdlib.h>#includeint main(){int x,s=0,i,max=0,min=999; srand(time(0)); for(i=0;i<3;i++) {x=rand()%90+10; printf("%d ",x); s+=x; if(x>max)max=x; if(x<min)min=x; } printf("\\n最大值=%d\\n最小值=%d\\n平均值=%.2f...
C语言 产生3个 0到9的随机数
0 to 99\\n\\n");for(i=0;i<10;i++)printf("%d\\n",rand()100);return 0;} 例1程序在每次运行时都会生成相同的十个伪随机数,如要每次生成的随机数不同应结合srand函数和time函数。\/\/\/ int i,a;for(i=0;i<3;i++){ a=rand()%9;printf("%d",a);} ...
实现一个20以内的加减乘除10道计算机练习测试,用c语言程序
20之间的随机数b = rand() % 20; \/\/生成一个0~20之间的随机数mode = rand() % 4; \/\/生成一个0~3之间的随机数,代表运算符printf("%d", a); \/\/打印算式switch(mode) \/\/确定运算符{case 0:printf("+ ");result= a + b; \/\/选择了+运算的正确答案break;case 1:printf("- ")...
C语言中怎么产生三个互不相同的随机数 求代码
include <stdio.h>#include <stdlib.h>#include int main(void){ int i, vis[100] = {0}, tot = 3; srand((int)time(0)); for(;tot;) { int index = rand() % 100; if(!vis[index]) { printf("%d ", index); vis[index] = 1; tot--; ...
怎样将一个数分为三个随机数?
因此,可以在Excel中使用RAND()函数生成3个随机数。3. 将随机数乘以平均值:将生成的三个随机数分别乘以步骤1中计算出的每个随机数的理论平均值,得到三个随机数。通过以上步骤,就可以将一个数分成3个随机数。需要注意的是,由于使用的是随机数,每次生成的结果都可能不同。
在〔20,80〕之间产生3个随机整数vb也么编程
如图所示,望采纳。。。
如何用C语言随机产生一个三位整数?
include int main(){ int i,tmp;num=0;srand((unsigned)time(NULL));\/\/初始化随即种子 tmp=rand()%10;\/\/产生个位上的随机数 num=tmp;tmp=rand()%10;\/\/生成十位上的随机数 num=num+tmp*10;tmp=rand()%10;\/\/生成百位上的随机数 num=num+tmp*100;printf("随机数(3位):%d\\n",n...
我想请教"编程序输出在指定范围内的3个随机数,范围在文本框中输入"该怎...
program abc;var a:longint;b:longint;c:longint;d:longint;begin writeln('please write down a number');readln(d);a:=random(d);b:=random(d-2);c:=random(d-5);writeln(a,' ',b,' ',c);readln;end.
vb编程实现:随机产生一个3位正整数,逆序输出。
Private Sub Form_Load()Dim i As Integer Dim temp As Integer Dim result As String Randomize For i = 1 To 3 temp = Rnd * 10 If temp = 10 Then temp = 1 result = result & Trim(Str(temp))Next Print "随机数:" & result Print "反转后:" & StrReverse(result)End Sub ...
随机产生20-50根火柴由人和计算机轮流拿,每次拿的不能超过3根,拿到最 ...
public static int setRandomNum(int minnum,int maxnum){ return (int)(Math.random()*(maxnum-minnum+1))+minnum; } public static void main(String[] args){ \/\/获取生成火柴的总数 int i = setRandomNum(20,50); System.out.println("---game...