亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1851 | 回復(fù): 3
打印 上一主題 下一主題

[文本處理] 幫看看寫完的代碼算出來的數(shù)為什么不對呢 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2013-06-01 09:39 |只看該作者 |倒序瀏覽
本帖最后由 dahaoshanhe 于 2013-06-01 09:40 編輯

輸入文件:
  1. 632477.4 5156466.2
  2. 632496.4 5156459.7
  3. 632515.3 5156453.2
  4. 632534.1 5156446.6
  5. 632553.2 5156440.2
  6. 632572.0 5156433.6
復(fù)制代碼
寫的小代碼:
  1. awk '
  2. BEGIN{                                                      
  3.    azi=109
  4.    du=(450-azi)/360*3.14159265*2                                               
  5.      cosa=cos(du)                                                                  
  6.      sina=sin(du)                                                                  
  7.     }                                                                             
  8. {                                                                              
  9.    x=$1*cosa+$2*sina                                                              
  10.    y=$2*cosa-$1*sina                                                              
  11.        printf "consa= %s sina= %s x= %s y= %s   newx=%.3f newy=%.3f\n", cosa,sina,$1,$2,x,y                     
  12. }' xyfile > forward_xyfile                                                     
復(fù)制代碼
計算結(jié)果文件:
  1. consa= 0.945519 sina= -0.325568 x= 632477.4 y= 5156466.2   newx=-1080762.088 newy=5081449.069
  2. consa= 0.945519 sina= -0.325568 x= 632496.4 y= 5156459.7   newx=-1080742.007 newy=5081449.109
  3. consa= 0.945519 sina= -0.325568 x= 632515.3 y= 5156453.2   newx=-1080722.021 newy=5081449.116
  4. consa= 0.945519 sina= -0.325568 x= 632534.1 y= 5156446.6   newx=-1080702.096 newy=5081448.997
  5. consa= 0.945519 sina= -0.325568 x= 632553.2 y= 5156440.2   newx=-1080681.953 newy=5081449.164
  6. consa= 0.945519 sina= -0.325568 x= 632572.0 y= 5156433.6   newx=-1080662.029 newy=5081449.044
復(fù)制代碼
運用。猓  -l 運算
  1. 632477.4*0.945519+5156466.2*-0.325568
  2. -1080760.9890310
復(fù)制代碼
疑問 怎么一個是 -1080762.088 一個是 -1080760.9890310
為什么會有誤差呢,如何能將這個誤差消除呢。

論壇徽章:
6
摩羯座
日期:2013-08-24 10:43:10獅子座
日期:2013-08-25 10:27:06天秤座
日期:2013-09-11 20:28:44午馬
日期:2014-09-28 16:06:0015-16賽季CBA聯(lián)賽之八一
日期:2016-12-19 13:55:0515-16賽季CBA聯(lián)賽之天津
日期:2016-12-20 14:01:23
2 [報告]
發(fā)表于 2013-06-01 12:17 |只看該作者
本帖最后由 cao627 于 2013-06-01 12:36 編輯

@dahaoshanhe我這邊
  1. awk '{printf "%.3f", 632477.4*0.945519+5156466.2*-0.325568}'
  2.         
  3. -1080760.989
復(fù)制代碼
而如果

  1. ~> awk '
  2. BEGIN{                                                      
  3.    azi=109
  4.    du=(450-azi)/360*3.14159265*2                                               
  5.      cosa=cos(du)                                                                  
  6.      sina=sin(du)                                                                  
  7.     }     
  8. {
  9. x=632477.4*cosa+5156466.2*sina
  10. printf "%.3f %s %f",x,cosa,sina
  11. }'

  12. -1080762.088 0.945519 -0.325568
復(fù)制代碼
看來問題處在x=632477.4*cosa+5156466.2*sina 這一步變量的迭代,實際迭代的值和顯示的值不同?,原因未知.

論壇徽章:
145
技術(shù)圖書徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11獅子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龍
日期:2014-01-08 15:26:12技術(shù)圖書徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
3 [報告]
發(fā)表于 2013-06-03 21:26 |只看該作者
回復(fù) 1# dahaoshanhe

because they are not equal
$ awk 'BEGIN{n=cos((450-109)/180*3.14159265358);printf"%f ",n;if(n==0.945519)print "yes";else print "no"}'
0.945519 no

$ awk 'BEGIN{n=cos((450-109)/180*3.14159265358);printf"%.20f ",n;if(n==0.945519)print "yes";else print "no"}'
0.94551857559327645575 no

google also tell us, it isn't equal 0.945519:
cos(((450 - 109) / 180) * pi) = 0.945518576
   

論壇徽章:
6
摩羯座
日期:2013-08-24 10:43:10獅子座
日期:2013-08-25 10:27:06天秤座
日期:2013-09-11 20:28:44午馬
日期:2014-09-28 16:06:0015-16賽季CBA聯(lián)賽之八一
日期:2016-12-19 13:55:0515-16賽季CBA聯(lián)賽之天津
日期:2016-12-20 14:01:23
4 [報告]
發(fā)表于 2013-06-03 21:53 |只看該作者
@jason680
!

居然忘記熟入了!

@dahaoshanhe
632477.4*cosa+5156466.2*sina =  -1080762.088  #################### #  1/3*3=1         
632477.4*0.945519+5156466.2*-0.325568= -1080760.9890310  ###########  0.333333*3=0.99999




您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP