TC官方合作论坛

标题: 数学问题 [打印本页]

作者: c724211922    时间: 2012-9-12 09:57
标题: 数学问题
1.已经知道三角形两个短边长x,y和他们的夹角度数a,求另一个长边长z 。
2.已经知道三角形长边长z和他的对角是a=90度,另外2条边长x,y。的整数解数组。
谁知道用代码具体怎么实现。
作者: 板桥    时间: 2012-9-12 10:09
提示: 作者被禁止或删除 内容自动屏蔽
作者: feng123144    时间: 2012-9-12 10:21
长宽高
作者: zxyc2000    时间: 2012-9-12 11:17
回复 1楼c724211922的帖子

帮你写了两个函数,测试没有问题。
  1. //第一个:
  2. //用这个公式sqrl(x*x+y*y-2*x*y*cos(alfa*PI/180))直接算出来就行了
  3. //sqrl:开平方,alfa:度数,PI:3.1415926
  4. function double getotherside(double x,double y,double alfa)
  5.         double rtn
  6.         double PI = 3.1415926
  7.         rtn = math.sqrt(x*x+y*y-2*x*y*math.cos(alfa*PI/180))
  8.         return rtn
  9. endfunction

  10. //第二个:
  11. //先算出45°情况的边长:a=z*cos(45*PI/180)
  12. //从1开始,到a结束,看看是否符合
  13. function bool getenablearray(double z,int[][] &arr)
  14.         int[][] idx = int[50][2]
  15.         int count
  16.         double PI = 3.1415926
  17.         double ax = z*math.cos(45*PI/180)
  18.         double i=1,j
  19.         while(i<ax)
  20.                 j = math.sqrt(z*z-i*i)
  21.                 int ij = convert.doubletoint(j)
  22.                 if(ij*ij+i*i==z*z)
  23.                         idx[count][0]=convert.doubletoint(i)
  24.                         idx[count][1]=ij
  25.                         count = count+1
  26.                 endif
  27.                 i =  i + 1
  28.         endwhile
  29.         if(count>0)
  30.                 arr = int[count][2]
  31.                 int k = 0
  32.                 while(k<count)
  33.                         arr[k][0]=idx[k][0]
  34.                         arr[k][1]=idx[k][1]
  35.                         k = k + 1
  36.                 endwhile
  37.                 return true
  38.         endif
  39.         return false
  40. endfunction
复制代码


作者: c724211922    时间: 2012-9-12 11:18
回复 4楼zxyc2000的帖子

在哪呢函数
作者: zxyc2000    时间: 2012-9-12 11:32
回复 5楼c724211922的帖子

4#
作者: c724211922    时间: 2012-9-12 14:09
回复 6楼zxyc2000的帖子

谢谢啦 我原先想通过三角函数自己计算解决大唐无双坐标系转换问题,(实验证明数学不好很难)现在皓月给我个帖子直接给出了转换的封装函数办法。我这下不用算了。不过还是要谢谢你的回复,我以后再仔细研究呵呵。




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1