|
本帖最后由 逍遙處士 于 2013-9-14 23:35 編輯
/ X$ G4 Y h! c# P# R" t) w q
! @$ [" p1 r2 k$ s+ j% K- I. i L, t8 I
這是用MathCAD做的計(jì)算,,程序跟一樓一樣,可見(jiàn)第5個(gè)也是29,,就這來(lái)看樓主的程序可能有缺陷,。$ L. G% E; p" F0 K+ t7 k
假如齒數(shù)為57,則360*3600/57不能整除,,問(wèn)題是否出在這兒,?
, J) A4 T% h; `# k. h. d
5 J& v3 y* O0 ^& T6 A假設(shè)所給齒數(shù)能整除的話,不妨只考慮將第一個(gè)角度依次翻倍,,代碼如下:( c/ S s& Z5 m' @9 E
U$ x- s6 V+ N' K
int a=0, b=0, c=0;
; j3 d2 |5 }# Cwhile ( a<360 )! q8 ~4 [* S S" Q
{
: Z( p) ]8 }5 o7 F! b8 m c=(c+s)%60; if ( (c+s)>=60 ) b=(c+s)/60; 9 u( r5 w" s6 \0 r; Q" x
b=(b+f)%60; if ( (b+f)>=60 ) a=(b+f)/60;
6 N( Q3 t9 I3 N9 g3 e! } a=a+j;
- R7 L9 u1 E. A* q+ z1 P3 { printf("%d°%d′%d″\n",a,b,c);7 a6 F* w3 I* r6 j& \3 O; P8 @
}
( R2 @4 l# t0 V; M3 u2 {" A6 w5 u0 q* {# Y# E
% l7 w9 g2 T% p7 P5 C9 X* B不妨試一試,,看下結(jié)果,。
2 f0 e7 L- W" D. I4 X
% z# Q( \- b- [0 W3 u2 A) R |
|