SRC質問掲示板Mk2
(現在 過去ログ104 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■18831 / inTopicNo.1)  月数算出の処理速度に関して
  
□投稿者/ 匿名希望 -(2006/07/18(Tue) 20:21:03) [ID:2eMbhZ9o]
    現在、私は時間関係の処理を製作しています。

    惑星別の年数の算出には成功したのですが、
    月数の算出において処理速度の問題に引っかかっています。
    尚、1年以内の総日数も既に算出してあります。
    処理速度を気にしないのであれば、このような質問はしません。
    ですが、この一連の処理では処理速度が最重要です。
    算出されたデータは画面表示を行う予定なので。

    使用している変数とサブルーチンは以下の通りです。
    それぞれの役割を説明します。

    変数「年数」…ここには算出された年数が入ってます。
    変数「総日数」…ここには算出された総日数が入ってます。実際には1低い値ですが。
    (↑変数「惑星名」が「地球」の時は「0≦X≦365」或いは「0≦X≦364」ですね。)
    変数「惑星名」…ここにはその惑星の名前が入ってます。
    変数「地名」…ここにはその惑星内での地名が入ってます。
    変数「仮月数」…「1≦X≦576」の範囲を取る値が入ります。
    (↑変数「惑星名」が「地球」の時は「1≦X≦12」ですね。)

    サブルーチン「閏年判定」…その年が閏年かそうでないかを判定。
    「閏年」であるなら「閏年」という文字列を、そうでないなら「普通の年」という文字列を算出します。
    表記例(Call(閏年判定,年数,惑星名))
    この情報はサブルーチン「月間日数算出」で使用しています。

    サブルーチン「月間日数算出」…月数を入れるとその月の日数を返します。
    表記例(Call(月間日数算出,仮月数,Call(閏年判定,年数,惑星名),地名,惑星名))
    変数「惑星名」が「地球」で変数「仮月数」が3の時は31が返ります。

    サブルーチン「日数計算」…月数を入れるとその月までの合計日数を返します。
    表記例(Call(日数計算,仮月数,年数,地名,惑星名))
    変数「惑星名」が「地球」で変数「仮月数」が3の時は閏年なら91、そうでなければ90が返ります。
    現在処理内容が迷走しており、なにをやっても処理速度が遅いままです。
    向上の手段があれば教えてください。

    具体的には変数「仮月数」の値を1づつ増やし、
    その値を代入したサブルーチン「日数計算」の算出結果と変数「総日数」の値を比較して、
    変数「総日数」の値をサブルーチン「日数計算」の算出結果が超えたときの変数「仮月数」の値を
    実際の月数としようと考えています。

    処理に関してはDoコマンド、Forコマンド、Ifコマンドの全てを試しましたが、
    処理速度は向上しませんでした。
    スマートな方法でなくてもかまいませんので、処理速度が向上する方法を教えてください。

引用返信/返信 削除キー/
■18832 / inTopicNo.2)  Re[1]: 月数算出の処理速度に関して
□投稿者/ TomTom -(2006/07/18(Tue) 21:14:41) [ID:MplWG6mG]
    こんにちは、TomTomです。

    数学やら日数計算は苦手なので、多分私には答えることが出来ませんが、
    「現在どのようなソースコードで処理をしているか」
    が分からない状態で
    「処理速度を向上するにはどうすればいいか」
    という質問は無理があるのではないでしょうか?

    思うに、ソースコードをどこかにアップロードした方が
    答えが返ってくる可能性が高いのでは。

    ところで、SRCは変数1つ代入するにも数十行の内部処理を行っているため、
    このような計算の高速処理は元々得意ではありません。
    可能ならば、
    ・取り得る値をすべて最初に計算して変数に格納しておく
    ・予め他の言語(手軽なのはVBScriptやJScriptでしょうか)で計算し、
     その結果をテキストファイルに出力しておき、
     最初にそのテキストを読み込んで変数に格納しておく
    といった方法も1つの手かと思います。
引用返信/返信 削除キー/
■18846 / inTopicNo.3)  Re[2]: 月数算出の処理速度に関して
□投稿者/ 匿名希望 -(2006/07/21(Fri) 16:40:13) [ID:2eMbhZ9o]
    TomTomさんの提案通りにやったらちゃんと高速化されていました。

    TomTomさん。ありがとうございました。
引用返信/返信 削除キー/
■18847 / inTopicNo.4)  Re[3]: 月数算出の処理速度に関して
□投稿者/ 匿名希望 -(2006/07/21(Fri) 16:41:08) [ID:2eMbhZ9o]
    チェック付け忘れました。すみません。
解決済み!
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

- Child Tree -
- Antispam Version -