聯系我時,請告知來自化工儀器網

      400-875-1717轉866

      當前位置:首頁  >  技術文章  >  XRD軟件應用技巧 | HighScore 腳本入門(二)

      XRD軟件應用技巧 | HighScore 腳本入門(二)

      更新時間:2025-04-24       點擊次數:377


      本文摘要

      先分享一個好消息,從2024年10月發布的HighScore 5.3版本開始,腳本功能將擴展到無Plus功能的HIghScore軟件版本,因此從本篇文章開始本系列更名為《HighScore腳本入門》


      在本系列的第一篇文章中介紹了HighScore Plus 軟件的腳本支持功能,并展開說明了腳本語言的程序結構和數據類型及常規的賦值和運算語句。本篇我們來說一說腳本程序代碼中的流程控制。


      流程控制

      條件語句


      程序執行中,有時候需要判斷某個條件是否滿足,根據判斷結果實施不同的操作,這就需要條件語句來實現。Pascal語言中條件語句主要有if語句和case語句。


      if 語句的最基礎格式如下:

      if 判斷條件 then 滿足條件的處理語句;

      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖1. if...then 語句


      if...then 語句后面可以跟一個可選的 else 語句,格式如下,注意,此時 then 后的語句不能加分號,因為 if 語句還沒結束。


      if 判斷條件 then 滿足條件的處理語句 else 不滿足條件的處理語句;


      XRD軟件應用技巧 | HighScore 腳本入門(二)


      圖2.  if…then…else語句


      then else 后面的處理語句中可以再嵌套 if語句,特別是 else 后面,可以形成 if…then…else if…then…else if…then…else的多支路語句。但一定要小心使用嵌套!有可能程序運行結果不是你所預期的那樣。


      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖3. if…then…else if…then…else if…then……else多支路語句


      當支路越來越多時,用嵌套的 if 語句就顯得太繁瑣。如果多支路的選擇是由同一個變量或表達式的不同結果值所決定的,其實也可以用 case 語句來實現,而且更顯簡潔、清晰。如圖3的例子,用 case 語句可以改寫成:


      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖4.  case多支路語句


      流程控制

      循環語句


      程序執行中,需要多次規律性的重復處理時,特別是一些數組的運算處理時,就需要用到循環語句。Pascal 語言中循環語句主要有while…do 語句、repeat…until 語句和 for…do 語句。


      while…do 語句的基礎格式如下:

      while 判斷條件 do 循環體語句;


      每輪循環之前,都先進行條件判斷,當判斷條件滿足時,則執行循環體;當判斷條件不滿足,則結束循環。循環體可以是單個語句,也可以是由 beginend;包含起來的程序塊,但其語句中一定要包含有能改變判斷條件控制變量的語句,能使判斷條件不滿足,以免形成死循環。

      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖5.  while…do循環語句


      while…do 語句相反,repeat…until 語句是先執行循環體,然后再看判斷條件是否滿足,如果滿足則結束循環,所以循環體至少會被執行一次。循環體可以是單個語句,也可以由多個語句組成,但不一定用 beginend;包含起來,repeat until 本身具備包含程序塊的功能。其基礎格式如下:


      repeat 循環體語句 until 判斷條件;


      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖6.  repeat…until循環語句


      while…do 語句和 repeat…until 語句中循環次數不定,根據某一條件來決定是否繼續循環,如果要進行固定次數的循環,可以用 for…do 語句:


      for 計次變量:=初始值 to 終止值 do 循環體;

      for 計次變量:=初始值 downto 終止值 do 循環體;


      其中,計次變量一般為整數類型(也可以是字符類型);第一輪循環時,計次變量被賦予初始值,此后每輪循環計次變量都會遞增(to 關鍵字)或遞減(downto 關鍵字)1;如果計次變量沒超過終止值,則執行循環體,否則結束循環。


      循環體內還可以用 continuebreak 這兩個關鍵字對循環做額外的控制,上述的三種循環語句內都可使用,一般配合條件語句決定什么情況下要 continue breakcontinue 起效時,在該輪次循環內,循環體里在其后的語句將不再執行,而是立即進行下一輪次循環是否進行的條件判斷;break 則直接就此結束循環;它們的影響范圍只在它們所處的那一層級的循環語句。

      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖7. for…do循環語句


      for…do 語句還有一種特殊形式的for…in…do 循環,本文不再贅述,感興趣的可以移步Free Pascal wiki了解。


      較為復雜的運算,可能會用到循環語句的嵌套,Pascal語言中允許任何類型的循環語句嵌套于任何類型的循環語句內。

      XRD軟件應用技巧 | HighScore 腳本入門(二)

      圖8.  循環語句嵌套



      主站蜘蛛池模板: 亚洲av无码一区二区三区天堂| 视频在线观看一区二区三区| 日本一区二区三区精品视频| 日本精品啪啪一区二区三区| 制服中文字幕一区二区| 精品一区高潮喷吹在线播放| 国产乱码一区二区三区爽爽爽| 日韩在线一区视频| 国产精品电影一区| 无码国产精品一区二区免费虚拟VR| 国产精品一区二区三区99| 国产成人精品一区二区A片带套 | 亚洲人AV永久一区二区三区久久| 最新欧美精品一区二区三区| 香蕉久久一区二区不卡无毒影院 | 国产精品女同一区二区久久| 精品一区二区91| 欧洲精品一区二区三区在线观看 | 亚洲无删减国产精品一区| 亚洲综合av永久无码精品一区二区 | 国产一区二区三区播放心情潘金莲| 亚洲精品一区二区三区四区乱码| 亚洲国产一区二区a毛片| 麻豆天美国产一区在线播放| 亚洲一区二区三区播放在线| bt7086福利一区国产| 麻豆va一区二区三区久久浪| 国产人妖在线观看一区二区| av无码一区二区三区| 亚洲综合国产一区二区三区| 亚洲第一区香蕉_国产a| 伊人久久大香线蕉AV一区二区 | 消息称老熟妇乱视频一区二区| 国产成人一区二区三区视频免费 | 3d动漫精品一区视频在线观看| 国产精品揄拍一区二区久久| 日本免费一区二区三区最新vr| jazzjazz国产精品一区二区| 日本在线不卡一区| 色一情一乱一伦一区二区三欧美 | 在线视频一区二区三区三区不卡|