|
本帖最后由 逍遙處士 于 2013-9-14 23:35 編輯
% o Z2 C" H: O$ D4 V% A4 y+ E$ A* N8 t' v d
% ]3 d: e: p1 {* J; i/ x9 c. m
, I% X" u& B- _. q. m, C5 J
這是用MathCAD做的計算,,程序跟一樓一樣,,可見第5個也是29,,就這來看樓主的程序可能有缺陷,。( T& n8 u, _3 p4 h4 a
假如齒數(shù)為57,,則360*3600/57不能整除,,問題是否出在這兒,?
: Z1 E- y, K: K$ R. T% q; K
! L. W7 d) _, z6 f, ~/ N9 E/ W假設(shè)所給齒數(shù)能整除的話,不妨只考慮將第一個角度依次翻倍,,代碼如下:
+ J( W9 ?# X, S' [& n; R9 K! C) Q/ Y. L' v
int a=0, b=0, c=0;
9 }# p8 u* v& Q3 h$ lwhile ( a<360 )8 C5 k5 Q: X. m8 s! \9 O0 [) r! C
{( d0 I& |1 K- L& {- g# y7 U! n; a
c=(c+s)%60; if ( (c+s)>=60 ) b=(c+s)/60; t3 H$ { P: `; l# M7 @
b=(b+f)%60; if ( (b+f)>=60 ) a=(b+f)/60; 6 H; r! _7 V+ y3 @5 W+ j8 ^
a=a+j;2 K; j6 I4 ]" g
printf("%d°%d′%d″\n",a,b,c);
5 U9 ?( T: {8 G9 D. Z}
% J |) {, M' o5 g+ u- y- Q8 ^/ K! w* p
不妨試一試,,看下結(jié)果。
( c |3 T6 s; F, p' x8 D) C' r5 u: f- H
|
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,,沒有帳號,?注冊會員
x
|