数学建模社区-数学中国

标题: 求助。关于编程问题 [打印本页]

作者: douzeyang    时间: 2010-9-1 17:53
标题: 求助。关于编程问题
编写一个程序。用以寻求边长为整数且面积为整数的三角形。& {4 W/ `, Z* N0 X( X5 f0 i# \6 S
我的思路是先让边长都等于n,然后再逐次减一,看是否构成三角形,若才、构成三角形再判断是否面积为整数。下边是我的程序。% `7 i% k( ]6 H& V0 f. T
2 d# \2 R2 {6 u% n: Y& D0 V
f[n_] := For[i = 1, i ≤ n, i++,2 g6 b1 P; u7 {; d, m" h: D- I
            For[j = 1, j ≤ n, j++,1 p  N" N7 [" [$ J
            For[k =  1, k ≤ n, k++,
, E1 x  D0 g2 X7 f" F            If[i + j > k && i - j < k, " X6 \" l  g4 [7 k
            For[z = 1, z < 2, z++,# o; O  b& A0 }; S# r/ o8 z; G
            If[Mod[Sqrt[(i + j + k)/2*((i + j + k)/2 - i)*((i + j + k)/2 - j)*((i + j + k)/2 - k)], 1] == 0, Print[i     , j     , k     ]]]]]]]
5 f5 U: ^+ C- m/ E可是运行出来是不对的。求大侠帮忙看看程序哪里有问题。拜谢。要是我的程序完全不对。麻烦大侠给一个正确的。+ f" ?: l9 d! v- ~# g* d. _5 o

作者: 佳琳    时间: 2010-9-1 18:06
大家都来帮忙看看哦
作者: douzeyang    时间: 2010-9-1 18:08
自己顶顶~~~~~
作者: 付绍纯    时间: 2010-9-1 20:00
顶顶更健康,越顶吃的越香。
作者: bluesonc    时间: 2010-9-2 08:00
鉴定完毕!  
作者: 753085848    时间: 2010-9-2 08:27
看不懂啊!!!!!!!!!!!!!!
作者: Xiesdl    时间: 2010-9-2 12:00
试试运气啦~~~~~~~~~~~
作者: wanghui1117    时间: 2010-9-2 15:00
试试运气啦~~~~~~~~~~~
作者: lathoj    时间: 2010-9-2 20:00
鉴定完毕!  
作者: jacket2003    时间: 2010-9-3 08:00
强烈支持。楼主万岁
作者: zhangjb    时间: 2010-9-3 12:00
试试运气啦~~~~~~~~~~~
作者: andyzhang    时间: 2010-9-3 15:00
我要把这个帖子一直往上顶,往上顶!
作者: dragon77    时间: 2010-9-3 20:00
强人,佩服死了。呵呵,不错啊
作者: dalaba    时间: 2010-9-4 08:00
强烈支持。楼主万岁
作者: lvhang0810    时间: 2010-9-4 12:00
我基本上是采用看英语文章的办法,先泛读,再精读,再一句一句看,最后再提纲挈领,总算是明白一点了,当然,也可能还是领悟错了。最后要说的一句话是:楼主,你很牛叉,希望你不是真的有病。   
作者: seeing    时间: 2010-9-4 15:00
我来了~~~~~~~~~ 闪人~~~~~~~~~~~~~~~~  
作者: jale    时间: 2010-9-4 20:00
顶顶更健康,越顶吃的越香。
作者: heavent    时间: 2010-9-5 08:00
哦~~
作者: quhb666    时间: 2010-9-5 12:00
楼主那种裂纸欲出的大手笔,竟使我忍不住一次次的翻开楼主的帖子……   
作者: diana    时间: 2010-9-5 15:00
我基本上是采用看英语文章的办法,先泛读,再精读,再一句一句看,最后再提纲挈领,总算是明白一点了,当然,也可能还是领悟错了。最后要说的一句话是:楼主,你很牛叉,希望你不是真的有病。   
作者: vivitian    时间: 2010-9-5 20:00
声明一下:本人看贴和回贴的规则,好贴必看,精华贴必回。
作者: dfghaasd    时间: 2010-9-6 08:00
楼主那种裂纸欲出的大手笔,竟使我忍不住一次次的翻开楼主的帖子……   
作者: fasst    时间: 2010-9-6 12:00
强烈支持。楼主万岁
作者: qingqing6644    时间: 2010-9-6 12:55
很好 很强大 顶顶顶
作者: a1525354555    时间: 2010-9-6 15:00
我来了~~~~~~~~~ 闪人~~~~~~~~~~~~~~~~  
作者: loverose    时间: 2010-9-6 20:00
强人,佩服死了。呵呵,不错啊
作者: skyling    时间: 2010-9-7 08:00
我回不抢呢 考虑再三 还是不抢了吧 ^_^
作者: dnq    时间: 2010-9-7 12:00
顶顶更健康,越顶吃的越香。
作者: zhnagbei_2004    时间: 2010-9-7 15:00
鉴定完毕!  
作者: ydnzd    时间: 2010-9-7 20:00
试试运气啦~~~~~~~~~~~
作者: cdn    时间: 2010-9-8 08:00
我来了~~~~~~~~~ 闪人~~~~~~~~~~~~~~~~  
作者: boy53300    时间: 2010-9-8 12:00
声明一下:本人看贴和回贴的规则,好贴必看,精华贴必回。
作者: lgfree    时间: 2010-9-8 15:00
我基本上是采用看英语文章的办法,先泛读,再精读,再一句一句看,最后再提纲挈领,总算是明白一点了,当然,也可能还是领悟错了。最后要说的一句话是:楼主,你很牛叉,希望你不是真的有病。   
作者: dajun539    时间: 2010-9-8 20:00
强人,佩服死了。呵呵,不错啊
作者: zxcvbnm5785    时间: 2010-9-9 08:00
试试运气啦~~~~~~~~~~~
作者: jeanluc111    时间: 2010-9-9 08:00
试试运气啦~~~~~~~~~~~
作者: haiyue    时间: 2010-9-9 12:00
强人,佩服死了。呵呵,不错啊
作者: lvyongzhi    时间: 2010-9-9 15:00
鉴定完毕!  
作者: byxh111    时间: 2010-9-9 20:00
鉴定完毕!  
作者: zjnuzhc    时间: 2010-9-9 20:00
强烈支持。楼主万岁
作者: lzg    时间: 2010-9-10 08:00
偶的天啊!这是什么样的贴子呢?
作者: douzeyang    时间: 2010-9-10 09:37
.....................
作者: sufan    时间: 2010-9-10 11:39
(*^__^*) 指点系词……激扬文字……  
作者: mxyo3111    时间: 2010-9-10 11:51
强人,佩服死了。呵呵,不错啊
作者: HaoSHi    时间: 2010-9-10 12:00
声明一下:本人看贴和回贴的规则,好贴必看,精华贴必回。
作者: cdly1    时间: 2010-9-10 15:00
强烈支持。楼主万岁
作者: xuefei_310    时间: 2010-9-10 20:00
哦~~
作者: stevejason    时间: 2010-9-11 08:00
试试运气啦~~~~~~~~~~~
作者: Marvin41029    时间: 2010-9-11 12:00
声明一下:本人看贴和回贴的规则,好贴必看,精华贴必回。
作者: algebra    时间: 2010-9-11 15:00
楼主的帖子实在是写得太好了。可是我立刻想到,这么好的帖子,倘若别人看不到,那么不是浪费楼主的心血吗?经过痛苦的思想斗争,我终于下定决心,牺牲小我,奉献大我。我要拿出这帖子奉献给世人赏阅,我要把这个帖子一直往上顶,往上顶!顶到所有人都看到为止!  
作者: Ready    时间: 2010-9-11 20:00
楼主,你写得实在是太好了。我惟一能做的,就只有把这个帖子顶上去这件事了
作者: yangting    时间: 2010-9-12 08:00
试试运气啦~~~~~~~~~~~
作者: mk    时间: 2010-9-12 12:00
强人,佩服死了。呵呵,不错啊
作者: Beatrice    时间: 2010-9-12 15:01
哦~~
作者: kxhu    时间: 2010-9-12 20:00
哦~~
作者: talent212121    时间: 2010-9-13 15:00
鉴定完毕!  
作者: hyxie616    时间: 2010-9-13 20:00
楼主,你写得实在是太好了。我惟一能做的,就只有把这个帖子顶上去这件事了
作者: haiyuan    时间: 2010-9-14 12:00
鉴定完毕!  
作者: dajun539    时间: 2010-9-14 15:00
我要把这个帖子一直往上顶,往上顶!
作者: futures    时间: 2010-9-14 20:00
我要把这个帖子一直往上顶,往上顶!
作者: 流氓兔    时间: 2010-9-15 15:00
哦~~
作者: sjs914915    时间: 2010-9-15 20:00
试试运气啦~~~~~~~~~~~
作者: chxq666    时间: 2010-9-15 20:00
哦~~
作者: myqlzx    时间: 2010-9-16 15:00
我要把这个帖子一直往上顶,往上顶!
作者: wert    时间: 2010-9-16 20:00
强人,佩服死了。呵呵,不错啊
作者: mathcd    时间: 2010-9-19 07:28
程序:& _* S# t4 @- j' o9 B  s! y
  1. f[x_, y_] := Module[9 v4 Z/ i5 I( X/ ^
  2.    {tmp, s, p, i, lst, S},
    + w) K- v% f2 J) {& t
  3.    tmp = (#1 + #2 + #3)/2 &;7 {0 o3 B5 a1 j
  4.    lst = {};
    6 U1 ~1 n0 N( N2 {- n+ g
  5.    For[i = 1, i <= y, i++,' w$ |8 q& ^+ R4 Q9 X* Q+ P, e
  6.     p = RandomInteger[x, 3];
    5 Q) m- P4 Y) Q  l
  7.     s = tmp @@ p;4 D1 `* f8 }1 W, \6 Q
  8.     S = Sqrt[s*(s - #1)*(s - #2)*(s - #3)] & @@ p;
    ) H6 B  N# m" m- L
  9.     Which[Element[S, Reals] && Element[S, Integers] && S != 0,
      U2 T6 F: l$ c
  10.      AppendTo[lst, {p, S}]];* y  I' U, n2 ^5 [6 s2 |
  11.     ];/ p* H6 h3 V8 e4 T$ X  ^. j: K) o
  12.    lst
    ! b- Z: C4 ^3 y% j/ f3 U) }
  13.    ];
复制代码

7 m- x! {; H0 L6 ]' r
0 E* x6 k% r, r' q3 ]说明:
" _! F0 t3 i  c" y程序f[x,y]采用随机算法。/ e$ {4 m) J, K3 L- I# O; X
第一个参数x:边长取值范围
5 H# O- @9 z4 l. w* ^' p7 b第二个参数y:循环次数- y1 S6 W; G- O: ~

% x. L; L. D8 M$ i" H例子:6 T( l& g  e' d5 ?

5 X) X! f' f: e# s; ^. p$ p) F
  1. f[100, 10000] // MatrixForm
复制代码
# P6 M/ M1 Y( y1 q8 v

* q( z, C+ @3 t+ z; R, c$ |; _结果:
/ G7 X( W3 L! |0 z# j# g( d- T% h- b

5 U+ m+ n. g9 p, P; [& }$ p9 H
( F7 ^& C- `% K: x% ?

TEST.jpg (33.53 KB, 下载次数: 449)

TEST.jpg


作者: yellowaug    时间: 2010-9-19 23:37
C语言的?????
作者: mathcd    时间: 2010-9-20 07:29
这里使Mathematica 版吧




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5