Calculate Your Own Sunrise, Transit, And Sunset Times
【摘要】
提供計算日出、日中、日落時間的程式,並說明使用方法。
【前言】
▪此處提供計算各地日出、日中、日落時間的程式。因本程式是依各地的座標來計算時刻,所以只要給予精確的經緯度,即使小地方的時刻也能算得出來,譬如某間學校、某地寺廟、某戶民宅等。
▪本程式可以計算的範圍是:
- 年份:公元 ±3000 年之間
- 經度:±180° 之間,東為正
- 緯度:±72° 之間,北為正
相信這個範圍應能滿足絕大部分人的需求。
▪如果不知道經緯度,可以用 Google 地圖、Bing 地圖或類似的網站。找到目標地點後,將鼠標移至該處,Google 地圖是按左鍵,Bing 地圖是按右鍵,出現的方框中就有緯度和經度。
【附錄】有台灣各縣市政府所在地的經緯度供大家參考。
▪本程式是在 Debian GNU/Linux 10 作業系統上,用 Apple 的 Swift 語言撰寫、編譯而成。一次輸出一整年的數據,秒數僅供參考。
▪程式的使用方法:所提供的程式都是指令行程式,沒有圖形界面;請在程式所在的目錄開啟虛擬終端機(終端機模擬器),輸入檔名,直接執行。輸出檔也會在同一目錄。
提醒:可能要用等寬字型才能顯示整齊的內容。
【程式介紹】
共提供四個程式,每個程式一開始都會詢問所需年份、和目標地點的經緯度與時區。
- 年份請用公曆,正整數,如 2030
- 地點的經緯度請用浮點數,也就是從 Google 或 Bing 地圖複製來的數據
- 時區可用整數或浮點數,正數可以不加正號,如臺灣可用 8 或 +8.0,負數則必需有負號
提醒:中文習慣講「經緯度」,所以程式是先詢問「經度」,而 Google 或 Bing 地圖顯示的是「緯度」和「經度」,請不要輸入反了。
提醒:輸入值需合理,譬如輸入的經緯度是在台灣,時區應為 +8,若給其他值,甚至給負值,就會有錯。
▪solar-noon:輸出「日中」時間
md5: 145d36b30a545968234e9cddb75d0943
輸出檔名為:<年份>日中時刻_<經度>_<緯度>.txt;如:2020日中時刻_120.9_23.8.txt
檔案內容為一大表格,每月一縱欄,橫列是日。範例見下面【樣本】一節。
▪sunrise-time:輸出「日出」時間
md5: f6a0f1bca624880f3c2cf724dbd97fc7
輸出檔名為:<年份>日出時刻_<經度>_<緯度>.txt;如:2020日出時刻_120.9_23.8.txt
檔案內容為一大表格,每月一縱欄,橫列是日,類似日中時刻表。範例見下面【樣本】一節。
▪sunset-time:輸出「日落」時間
md5: 42722f067a1d97818b8e8f0d039d80fe
輸出檔名為:<年份>日落時刻_<經度>_<緯度>.txt;如:2020日落時刻_120.9_23.8.txt
檔案內容為一大表格,每月一縱欄,橫列是日,類似日中時刻表。範例見下面【樣本】一節。
▪sun-rise-noon-set:輸出「日出、日中、日落」時間
md5: fca52d057ec1dee25b234372797f4bc2
輸出檔名為:<年份>_<經度>_<緯度>.txt;如:2020_120.9_23.8.txt
檔案內容為一長表格,每日一橫列,列出日數、日期和三種時刻,少許範例如下:
公元2020年 經度=120.97388° 緯度=23.97565° 時區=8.0小時 日數 月/日 日出 日中 日落 001 01/01 06:38:42 11:59:02 17:19:21 002 01/02 06:39:01 11:59:30 17:19:59 003 01/03 06:39:18 11:59:58 17:20:38 004 01/04 06:39:34 12:00:26 17:21:18 005 01/05 06:39:49 12:00:53 17:21:58 006 01/06 06:40:02 12:01:20 17:22:38 007 01/07 06:40:14 12:01:47 17:23:19 008 01/08 06:40:25 12:02:13 17:24:01 009 01/09 06:40:34 12:02:39 17:24:43 010 01/10 06:40:42 12:03:04 17:25:25 下略
【樣本】公元2020年台灣地理中心日中時刻
公元2020年日中時刻 經度=120.97388° 緯度=23.97565° 時區=8.0小時 日\月 1 2 3 4 5 6 7 8 9 10 11 12 月/日 01 11:59:02 12:09:29 12:08:29 12:00:03 11:53:14 11:53:54 11:59:55 12:02:28 11:56:14 11:45:53 11:39:39 11:45:00 01 02 11:59:30 12:09:38 12:08:18 11:59:45 11:53:07 11:54:03 12:00:06 12:02:24 11:55:55 11:45:34 11:39:37 11:45:22 02 03 11:59:58 12:09:46 12:08:05 11:59:27 11:53:01 11:54:13 12:00:17 12:02:20 11:55:35 11:45:15 11:39:37 11:45:46 03 04 12:00:26 12:09:53 12:07:52 11:59:10 11:52:55 11:54:23 12:00:28 12:02:15 11:55:16 11:44:56 11:39:37 11:46:09 04 05 12:00:53 12:09:59 12:07:39 11:58:53 11:52:50 11:54:33 12:00:39 12:02:09 11:54:56 11:44:38 11:39:38 11:46:34 05 06 12:01:20 12:10:05 12:07:25 11:58:36 11:52:45 11:54:44 12:00:49 12:02:03 11:54:36 11:44:20 11:39:40 11:46:59 06 07 12:01:47 12:10:09 12:07:11 11:58:19 11:52:41 11:54:55 12:00:59 12:01:56 11:54:15 11:44:02 11:39:43 11:47:24 07 08 12:02:13 12:10:13 12:06:56 11:58:02 11:52:37 11:55:06 12:01:09 12:01:48 11:53:55 11:43:45 11:39:46 11:47:50 08 09 12:02:39 12:10:16 12:06:42 11:57:45 11:52:34 11:55:18 12:01:18 12:01:40 11:53:34 11:43:28 11:39:51 11:48:17 09 10 12:03:04 12:10:18 12:06:26 11:57:29 11:52:31 11:55:29 12:01:27 12:01:31 11:53:13 11:43:11 11:39:56 11:48:44 10 11 12:03:28 12:10:19 12:06:11 11:57:13 11:52:29 11:55:42 12:01:35 12:01:22 11:52:52 11:42:55 11:40:02 11:49:11 11 12 12:03:53 12:10:20 12:05:55 11:56:58 11:52:28 11:55:54 12:01:43 12:01:12 11:52:31 11:42:40 11:40:09 11:49:39 12 13 12:04:16 12:10:20 12:05:39 11:56:42 11:52:27 11:56:06 12:01:50 12:01:02 11:52:10 11:42:25 11:40:17 11:50:07 13 14 12:04:39 12:10:19 12:05:22 11:56:27 11:52:27 11:56:19 12:01:57 12:00:51 11:51:49 11:42:10 11:40:26 11:50:35 14 15 12:05:01 12:10:17 12:05:05 11:56:13 11:52:27 11:56:31 12:02:03 12:00:40 11:51:28 11:41:56 11:40:36 11:51:04 15 16 12:05:23 12:10:15 12:04:48 11:55:58 11:52:28 11:56:44 12:02:09 12:00:28 11:51:06 11:41:43 11:40:46 11:51:33 16 17 12:05:44 12:10:11 12:04:31 11:55:44 11:52:30 11:56:57 12:02:15 12:00:15 11:50:45 11:41:30 11:40:57 11:52:02 17 18 12:06:04 12:10:07 12:04:14 11:55:31 11:52:32 11:57:10 12:02:20 12:00:02 11:50:23 11:41:18 11:41:10 11:52:31 18 19 12:06:24 12:10:03 12:03:56 11:55:18 11:52:34 11:57:23 12:02:24 11:59:49 11:50:02 11:41:06 11:41:23 11:53:01 19 20 12:06:43 12:09:57 12:03:39 11:55:05 11:52:37 11:57:36 12:02:28 11:59:35 11:49:41 11:40:55 11:41:36 11:53:30 20 21 12:07:01 12:09:51 12:03:21 11:54:52 11:52:41 11:57:49 12:02:31 11:59:20 11:49:19 11:40:45 11:41:51 11:54:00 21 22 12:07:18 12:09:45 12:03:03 11:54:40 11:52:45 11:58:02 12:02:34 11:59:05 11:48:58 11:40:35 11:42:07 11:54:30 22 23 12:07:35 12:09:37 12:02:45 11:54:29 11:52:50 11:58:15 12:02:36 11:58:50 11:48:37 11:40:26 11:42:23 11:54:59 23 24 12:07:51 12:09:29 12:02:27 11:54:18 11:52:55 11:58:28 12:02:37 11:58:34 11:48:16 11:40:18 11:42:40 11:55:29 24 25 12:08:06 12:09:21 12:02:09 11:54:07 11:53:01 11:58:41 12:02:38 11:58:18 11:47:55 11:40:11 11:42:58 11:55:59 25 26 12:08:20 12:09:12 12:01:51 11:53:57 11:53:07 11:58:54 12:02:39 11:58:01 11:47:34 11:40:04 11:43:16 11:56:29 26 27 12:08:34 12:09:02 12:01:33 11:53:48 11:53:13 11:59:06 12:02:38 11:57:44 11:47:14 11:39:58 11:43:35 11:56:58 27 28 12:08:47 12:08:52 12:01:15 11:53:39 11:53:21 11:59:19 12:02:38 11:57:27 11:46:53 11:39:52 11:43:55 11:57:27 28 29 12:08:59 12:08:41 12:00:57 11:53:30 11:53:28 11:59:31 12:02:36 11:57:09 11:46:33 11:39:48 11:44:16 11:57:57 29 30 12:09:10 12:00:39 11:53:22 11:53:36 11:59:43 12:02:34 11:56:51 11:46:13 11:39:44 11:44:38 11:58:26 30 31 12:09:20 12:00:21 11:53:45 12:02:31 11:56:32 11:39:41 11:58:54 31
【附錄】
縣市政府等地之經緯度(依緯度漸增排序)
地 點 | 經 度 | 緯 度 |
---|---|---|
高雄市 | 120.312 | 22.621 |
屏東縣 | 120.488 | 22.683 |
台東縣 | 121.150 | 22.755 |
台南市 | 120.185 | 22.992 |
嘉義縣 | 120.293 | 23.459 |
嘉義市 | 120.454 | 23.481 |
澎湖縣 | 119.566 | 23.569 |
雲林縣 | 120.526 | 23.699 |
南投縣 | 120.690 | 23.903 |
台灣心 | 120.974 | 23.976 |
花蓮縣 | 121.620 | 23.991 |
彰化縣 | 120.545 | 24.075 |
台中市 | 120.647 | 24.162 |
金門縣 | 118.319 | 24.437 |
苗栗縣 | 120.820 | 24.565 |
宜蘭縣 | 121.763 | 24.731 |
新竹市 | 120.969 | 24.807 |
新竹縣 | 121.013 | 24.827 |
桃園市 | 121.301 | 24.993 |
新北市 | 121.465 | 25.013 |
台北市 | 121.565 | 25.037 |
基隆市 | 121.744 | 25.132 |
連江縣 | 119.952 | 26.158 |
blogfreely is a self-hosted, decentralized blogging platform for publishing beautiful, simple blogs.It lets you publish a single blog, or host a community of writers who can create multiple blogs under one account. You can also enable federation, which allows people in the fediverse to follow your blog, bookmark your posts, and share them with others. Spacebar clicker
回覆刪除