2016年12月5日月曜日

LibreBasicにいま持ってる知識で立ち向かってみる  法律勉強プログラムを作ってみるの巻 第8回

  大改修(2)

<<第1回  <第7回                                                            第9回>


必要だと思う機能がだいぶ絞れてきて
落ち着いてきたので、機能の紹介をしてみます。




 学習対象にしたい法律の種類、条文数を指定

  • ブックから全法律シートを取得します
  • 対象範囲全部の法律からランダムに条文を指定個数ピックアップした一覧をシート(以下問題シート)に保存
  • ピックアップは、完全にランダムにもできるし、閲覧日付で重み付けも出来る

 

作成した問題シートを選択

  • 表示する 条文順を選べる(適宜ソートできる)
  •  問題シートには各法律名の頭文字と作成日付がつく

 

 

 

 

 

条文右側のテキストフィールドで、虫食い化

自分で単語を登録することで、条文を虫食い化することが出来る。単語はカンマ区切り。

 




回収:(■は掛け●は実験済み)

  • 「進む」「戻る」のキーボード操作
  • 虫食い単語の簡易高速登録
  • 配列データの一括読み書きによる処理の高速化(■)
  • Libreからブラウザを起動して、判例を検索できるようにする(●)
  • 虫食いの適用/非適用をボタンでスイッチする (●)
  • 並べ替え(条文順、 閲覧日付順)(■)
  • 複数の法律を同時に指定
  • 問題として表示する条文数を指定
  • ランダムに条文をピックアップ(■)
  • メモを書き込めるようにする

 

仕様変更:

  • 法律シートの命名規則 頭に(法)とあるものを法律シートと認識
  • 問題シートの命名規則 頭に(問)とあるものを問題シートと認識
  • イベント発生時のインデックスの参照先を法律シートから問題シートに変更
    • 主に条文のインデックスしか見ない心意気

 

 盛大にハマった技術:

  • ソート
  • setdataarray→要素にemptyがあるとsetを受け付けてくれない
  • ランダムはRAND()ではなくRND()
  • isNumeric()