最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語(yǔ)言實(shí)現(xiàn)古代時(shí)辰計(jì)時(shí)與現(xiàn)代時(shí)間換算

 更新時(shí)間:2023年03月30日 10:17:07   作者:老花眼貓  
這篇文章主要為大家詳細(xì)介紹了如何利用C語(yǔ)言實(shí)現(xiàn)古代時(shí)辰計(jì)時(shí)與現(xiàn)代時(shí)間換算,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下

本人對(duì)各種算法感興趣,喜歡做一些算法題??赡苡信笥褜?duì)古代時(shí)辰計(jì)時(shí)與現(xiàn)在時(shí)間換算感興趣,我就設(shè)計(jì)了此一種算法。

關(guān)于古代的時(shí)間表達(dá)法,也就是十二時(shí)辰法,從子丑......亥十二個(gè)時(shí)辰計(jì)時(shí)由來(lái)以久,自古以來(lái)就用此法計(jì)時(shí),但對(duì)每個(gè)時(shí)辰分幾刻,有變遷,主要有十二時(shí)辰分百二十刻和分為一百刻兩種。古代長(zhǎng)期使用的是百刻制。明末西方天文學(xué)傳入,到清朝確定每日九十六刻,每刻十五分鐘,開(kāi)始與世界通行時(shí)間接軌。

各分刻法對(duì)計(jì)時(shí)沒(méi)什么差別,就是計(jì)數(shù)而已。

唐以前一個(gè)時(shí)辰分十刻或八刻,唐以后明確為八刻,每時(shí)辰前四刻為初,后四刻為正,如辰初一刻( 07:15 ),辰正二刻  ( 08:30 )。時(shí)辰開(kāi)始不滿(mǎn)一刻為初,如申初初刻 ( 15:05 ) 。

作為民間計(jì)時(shí)幾時(shí)幾刻就行了,不需很精確。然對(duì)于天文地理大事,就需精確表達(dá)時(shí)間。對(duì)于歷史研究和考古研究需了解此情況。

還有一較精確的分法,將一刻分為三,每份等于現(xiàn)在的5分鐘,稱(chēng)為”字”,不滿(mǎn)字為余。我就依此設(shè)計(jì)換算方法。不需要的可略去。

示例如下:

另外需要了解時(shí)辰是各地時(shí)間,對(duì)北京時(shí)有緯度差。

調(diào)整的公式是: 時(shí)辰起點(diǎn)+4*(Z-B) 分鐘(   Z是北京中央經(jīng)度,B是當(dāng)?shù)氐慕?jīng)度。)

如:天水時(shí)辰  =23點(diǎn)  +4*(120-105.7)分。

得:23 +4 * 14.3 = 23+57.2 =23點(diǎn)57分12秒。

以北京時(shí)間來(lái)?yè)Q算,北京是東經(jīng)120度,當(dāng)?shù)亟?jīng)度是105.7度。

此公式用于地方時(shí)辰調(diào)整。 

以下是算法測(cè)試的源碼文檔(供參考):

thansform ( ){    //古時(shí)時(shí)辰計(jì)時(shí)換算 int  tim[3] ;
 string hhs,kks,ffs,ccs ;     //預(yù)置字串
 string hh0s, mm0s ;
 string chh, hhk, hhf, wwf, mcs ;   //時(shí)刻分,名稱(chēng)
 string hhcz ;        //子時(shí)初,正
 string s1,s2,s3,s4;
   ccs="雞鳴平旦日出食時(shí)隅中日中日昳晡時(shí)日入黃昏人定夜半" ;
   hhs=    "丑寅卯辰巳午未申酉戌亥子" ;
   kks=    "初刻一刻二刻三刻" ;
   ffs=    "一字二字三字四" ;

    setDisplay (0);   
    clearOutput ( ) ;
     print "古時(shí)計(jì)時(shí)時(shí)辰換算示例:"  ;
    getTime(tim);    //getDate = today
     pickTime("輸入時(shí)間:", tim);       //input rime
    hh0=tim[0] ;
    mm0=tim[1] ;
    print "  " ;
    chh=subString (hhs, (hh0+1)/2-1, 1) ;
    if (hh0-hh0/2*2==0) { hhcz="正" ;  }       
                      else{  hhcz="初" ;  }
    chh=chh+hhcz ;                   //時(shí)
    hhk=subString (kks, mm0/15*2, 2 ) ;   //刻

    n=(mm0-mm0/15*15)/5 ;         //余數(shù)
   // hhf=subString (ffs, (n-1)*2, 2) ;       //分=字
   // if (n==0) hhf=" " ;
   // ns=mm0-mm0/15*15-n*5 ;   //余=分減刻減字
    //wwf=subString (ffs, (ns-1)*2, 1) ;
    //21 : 43   =>>  亥初二刻二字三

      //  for (i=0; i<12 ; i++) {     //測(cè)試古時(shí)稱(chēng)謂
        //    s3=subString (hhs, i, 1 ) ;
         //   s2= s2+s3+"    " ;         }
         //print s2 ;       // test print  ccs$
         //print  ccs ;

         hh0s=intToString (hh0) ;
         mm0s=intToString (mm0) ;
       if (mm0<10) mm0s="0"+mm0s ;
       if (mm0==0) hhk=" " ;

    mcs=subString (ccs, (hh0+1)/2*2-2,  2) ;   //名稱(chēng)
    print "Input Time =  " +hh0s+" : "+ mm0s ;
    print "  " ;
    print "換算為古時(shí)計(jì)時(shí):" ;
    print "   " ;
    print "    " + chh+hhk+hhf+wwf+"    "+mcs ;
    print "---------------------------------------------------" ;


//時(shí)辰計(jì)時(shí)轉(zhuǎn)換為時(shí)鐘時(shí)間
int ns, ns1 ;
       s1=chh+hhk ;      //輸入時(shí),分
       s2=subString (s1, 0, 1) ;
        for (i=0; i<12 ; i++) {
            s3=subString (hhs, i, 1 ) ;
          if(s3==s2) ns=i ;              }
       print "  " ;
       print "Input :  "+s1 ;
         hh0=ns*2+1 ;        //計(jì)算小時(shí)數(shù)
     s2=subString (s1, 1, 1) ;
         if (s2=="初") { ns=0 ; }else{ ns=1 ; }
         hh0=hh0+ns ;    //正加一小時(shí)
     s2=subString (s1, 2, 1) ;
         if (s2=="一") ns1=15 ;     //還原幾刻的分鐘數(shù)
         if (s2=="二") ns1=30 ;
         if (s2=="三") ns1=45 ;
     n=(mm0-mm0/15*15) ;    //原輸入分的尾數(shù)
     mm0=ns1+n ;                     //計(jì)算分鐘數(shù)
         hh0s=intToString (hh0) ;    //format
      if (hh0<10) hh0s="0"+hh0s ;
         mm0s=intToString (mm0) ;
      if (mm0<10) mm0s="0"+mm0s ;
      print "   " ;
      print "換算為現(xiàn)在時(shí)間:  ", hh0s, " : ", mm0s ;
           
}//時(shí)辰換算 

到此這篇關(guān)于C語(yǔ)言實(shí)現(xiàn)古代時(shí)辰計(jì)時(shí)與現(xiàn)代時(shí)間換算的文章就介紹到這了,更多相關(guān)C語(yǔ)言時(shí)辰計(jì)時(shí)與現(xiàn)代時(shí)間換算內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • c++選擇排序詳解

    c++選擇排序詳解

    選擇排序(Selection sort)是一種簡(jiǎn)單直觀的排序算法。它的工作原理是每一次從無(wú)序組的數(shù)據(jù)元素中選出最?。ɑ蜃畲螅┑囊粋€(gè)元素,存放在無(wú)序組的起始位置,無(wú)序組元素減少,有序組元素增加,直到全部待排序的數(shù)據(jù)元素排完。
    2017-05-05
  • C++?pthread入門(mén)指南

    C++?pthread入門(mén)指南

    pthread是C++98接口且只支持Linux,使用時(shí)需要包含頭文件#include?<pthread.h>,編譯時(shí)需要鏈接pthread庫(kù),其中p是POSIX的縮寫(xiě),而POSIX是Portable?Operating?System?Interface的縮寫(xiě),這篇文章主要介紹了C++?pthread簡(jiǎn)介,需要的朋友可以參考下
    2024-05-05
  • C語(yǔ)言測(cè)試n的階乘和x的n次方

    C語(yǔ)言測(cè)試n的階乘和x的n次方

    今天小編就為大家分享一篇關(guān)于C語(yǔ)言測(cè)試n的階乘和x的n次方,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • 貪吃蛇C語(yǔ)言代碼實(shí)現(xiàn)(難度可選)

    貪吃蛇C語(yǔ)言代碼實(shí)現(xiàn)(難度可選)

    這篇文章主要為大家詳細(xì)介紹了貪吃蛇C語(yǔ)言代碼實(shí)現(xiàn),游戲難度可供選擇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • C語(yǔ)言 OutputDebugString與格式化輸出函數(shù)OutputDebugPrintf案例詳解

    C語(yǔ)言 OutputDebugString與格式化輸出函數(shù)OutputDebugPrintf案例詳解

    這篇文章主要介紹了C語(yǔ)言 OutputDebugString與格式化輸出函數(shù)OutputDebugPrintf案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C++雙向鏈表的增刪查改操作方法講解

    C++雙向鏈表的增刪查改操作方法講解

    相較單鏈表,雙向鏈表除了data與next域,還多了一個(gè)pre域用于表示每個(gè)節(jié)點(diǎn)的前一個(gè)元素。這樣做給雙向鏈表帶來(lái)了很多優(yōu)勢(shì)。本文主要介紹了雙向鏈表的實(shí)現(xiàn),需要的可以參考一下
    2023-03-03
  • C++ 仿函數(shù)使用講解

    C++ 仿函數(shù)使用講解

    這篇文章主要介紹了C++ 仿函數(shù)使用講解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • 淺談c++ 預(yù)處理器

    淺談c++ 預(yù)處理器

    這篇文章主要介紹了c++ 預(yù)處理器的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • Qt采用線程以隊(duì)列方式實(shí)現(xiàn)下發(fā)數(shù)據(jù)

    Qt采用線程以隊(duì)列方式實(shí)現(xiàn)下發(fā)數(shù)據(jù)

    在C++中隊(duì)列是一種常用的數(shù)據(jù)結(jié)構(gòu)之一,一種特殊的線性表,一般采用先進(jìn)先出的方式。本文主要為大家介紹了Qt如何以隊(duì)列方式實(shí)現(xiàn)下發(fā)數(shù)據(jù),感興趣的可以了解一下
    2022-10-10
  • C++簡(jiǎn)明分析講解布爾類(lèi)型及引用

    C++簡(jiǎn)明分析講解布爾類(lèi)型及引用

    布爾型(Boolean),是一種類(lèi)型變量類(lèi)型,引用(reference)就是C++對(duì)C語(yǔ)言的重要擴(kuò)充。引用就是某一變量(目標(biāo))的一個(gè)別名,對(duì)引用的操作與對(duì)變量直接操作完全一樣
    2022-04-04

最新評(píng)論

原阳县| 安庆市| 碌曲县| 新化县| 巴南区| 周口市| 沙雅县| 抚顺市| 海城市| 景谷| 屏东县| 通化县| 介休市| 财经| 新津县| 武陟县| 黎平县| 江华| 图们市| 敦煌市| 石家庄市| 丰顺县| 囊谦县| 银川市| 同江市| 徐闻县| 阳谷县| 阿拉善左旗| 万山特区| 凤凰县| 闽侯县| 克山县| 罗平县| 平遥县| 安福县| 逊克县| 临武县| 汝城县| 双鸭山市| 周口市| 南陵县|