TOP > Users > ORCA通信アーカイブ

 ORCA通信

みなさま、こんにちは!
お久しぶりです勝村です!

第92回ORCA通信をお届けいたします。

 ORCA通信 vol.092(2025/11/20発行)

INDEX
[1] 年末年始の営業日について
[2] ORCA demo2サーバー バージョンアップのご案内
[2] スペック作成のヒント


[1] 年末年始の営業日について

弊社の年末年始の営業日についてご案内申し上げます。

年内営業:2025年12月26日(金)まで
年始営業:2026年1月5日(月)より

期間中は何かとご迷惑をおかけいたしますが、何卒ご了承のほど、お願い申し上げます。

ページトップへ


[2] ORCA demo2サーバー バージョンアップのご案内

日ごろみなさまにご利用いただいている、ORCAのdemo2サーバーのバージョンアップを予定しております。
バージョンアップに伴う、メンテナンスの日程は下記のとおりになります。

2025年12月9日(火) 10:00~12:00

作業時間帯はサーバーへのアクセスができません。
ご不便をおかけいたしますが、何卒ご理解・ご協力のほどよろしくお願い申し上げます。

ページトップへ


[3] スペック作成のヒント

みなさまは調査画面作成時に、小数点を含む計算をしたら想定外の値になってしまった、そんな経験はありませんか?
例えば、本来は「3」となる計算結果が、「3.0000000000001」のように“妙に長い数値”になってしまうケースです。

実はこれ、ORCA のバグではありません。
原因は、多くのプログラミング言語で使われている 「浮動小数点」 という数値の仕組みにあります。

■浮動小数点とは?
浮動小数点とは、コンピューターが数値を扱うための一般的な方式のひとつで、
ORCA でもこの方式を使って計算を行っています。

この方式の特徴は、「だいたいの値」という点です。
一見きれいな数値 ― たとえば 0.1 や 0.01 ― に見えても、コンピューター内部では きっちりその値を表現できず、わずかな誤差を含んでしまう ことがあります。
そのため、次のような現象が発生する場合があります。
・本当は 3 になるはずが 3.0000000000001 になる
・条件「3以上」で判定したいのに、計算結果が 2.9999999999 となり弾かれてしまう
・小数点以下の桁が不必要に長く表示される

など、ごく小さな誤差ではありますが、集計や条件分岐に使うと意図せぬ動きを引き起こすことがあるため注意が必要です。

そこで今回は、浮動小数点による“見た目のズレ”や“判定のズレ”を防ぐための ORCA Script をご紹介します。

見本はこちら

サンプルスペックのダウンロードは こちら

■今回使うORCA Script

・四捨五入したい値
・小数点以下桁数
・0 埋めの有無(true/false)
を引数として、値をきれいな形に変換します。

-----------------------ここからコピペ-----------------------
function round_str($a, $b, $zerofill)
{
    var $ret = "";
    ;if ( $b > 0 )
    {
        var $x = round( $a * pow( 10, $b ) );
        var $r = right( $x, $b );
        var $l = left( $x, length( $x ) - $b );

        var $m = match( $r, "0+$" );
        if( $m[0] and ! $zerofill )
        {
            $ret = $l << "." << $m[2];
        }
        else
        {
            $ret = $l << "." << $r;
            }
    }
    return $ret;
}
-----------------------ここまでコピペ-----------------------
return round_str((Q92100.N + Q92200.N), Q92300.N, true );←ここに引数を設定

入力例:
33 + 0.6(小数点以下 3 桁)

そのまま計算を行うと、計算結果が「33.600000000000001」となります。
ですが、上記Scriptを使用すると、「33.600」となります。

スッキリ意図した形になりましたね。
よければぜひご活用ください!

ページトップへ

 過去のORCA通信

vol.001  2008年06月13日発行  ここが変わったORCAタグ(TTとTB)
vol.002  2008年06月26日発行  ここが変わったORCAタグ(IF)
vol.003  2008年07月11日発行  ここが変わったORCAタグ(設問クォータ)
vol.004  2008年08月21日発行  ここが変わった自動回答
vol.005  2008年10月09日発行  文字数制限、メールアドレス簡易入力チェック、マトリクス形式での順位付け判定方法
vol.006  2008年10月23日発行  順位付け設問をプルダウン設問として同画面に表示させる方法
vol.007  2008年10月30日発行  ORCA Script「CV」を利用した追加入力欄引継ぎの方法
vol.008  2008年11月13日発行  改行を含む文字のカウント、郵便番号、メールアドレスの入力パターン紹介
vol.009  2008年11月27日発行  ジャンプの入力パターンでアラートを表示する方法(例:数字、電話番号など)
vol.010  2008年12月18日発行  回収割付の条件が複数ある場合、優先順位が高いセルから回収する方法
vol.011  2009年01月29日発行  アラートを出すのではなく未入力回答欄の詰め直しをする方法
vol.012  2009年02月12日発行  エクスポート機能の紹介と追加入力欄の詰め直しをする方法
vol.013  2009年03月13日発行  MAで選ばれた選択肢をSAの回答として格納する方法
vol.014  2009年03月25日発行  月の日数やうるう年のチェックを入れた期間チェックの正規表現
vol.015  2009年04月09日発行  MTに矢印を入れる方法・「S」による大小判別方法
vol.016  2009年04月23日発行  Java Scriptを使った「マトリクス形式の合計値表示」方法
vol.017  2009年05月15日発行  JavaScriptを使った「マトリクス形式の絞込み」方法
vol.018  2009年06月04日発行  2つの設問を同じ表示順で尚且つランダムで表示させる方法
vol.019  2009年06月19日発行  Java Scriptを使った「指定時間経過後に次へボタンが表示される」方法
vol.020  2009年07月03日発行  Java Scriptを使った「表側に見出しを表示する」方法
vol.021  2009年07月24日発行  Java Scriptを使った「表頭に見出しを表示する」方法
vol.022  2009年08月21日発行  Java Scriptが有効かを確認し、無効の場合先へ進ませないスペックの紹介
vol.023  2009年10月02日発行  ORCA Editor新機能と検証機能の紹介
vol.024  2009年10月29日発行  ORCA Editor設定画面の説明・ORCA Script「S」を使った「選択肢判定」方法
vol.025  2009年12月01日発行  選択個数をエラーメッセージへ挿入するORCA Script
vol.026  2009年12月22日発行  ランダムに表示させた選択肢の順序を格納するORCA Script
vol.027  2010年01月08日発行  マトリクスのチェックボックスの一部を非アクティブにするJavaScript
vol.028  2010年02月16日発行  選択された選択肢数ごとにエラーメッセージを表示するORCA Script
vol.029  2010年03月04日発行  選択肢「その他」などのあとにつける追加入力欄について
vol.030  2010年03月24日発行  複数の数値入力回答の入力値に重複がないかを確認するORCA Script
vol.031  2010年04月14日発行  マトリクス設問で空行(列)を入れるJavaScript
vol.032  2010年04月28日発行  選択肢の文字列部分をクリックするとチェックが出来るタグ
vol.033  2010年06月18日発行  Java Scriptを使った「複数のマトリクス形式の合計値表示」方法
vol.034  2010年07月23日発行  携帯電話実査での注意/選択された状態で表示させる(SAMA)方法
vol.035  2010年11月11日発行  選択された状態で表示させる(マトリクス)方法
vol.036  2010年11月25日発行  他のスペックでの回答内容を選択された状態で表示させる方法
vol.037  2010年12月14日発行  選択肢の段組みと素材のファイルパスの更新方法
vol.038  2011年02月17日発行  イレースジャンプの紹介
vol.039  2011年05月12日発行  排他の選択肢を制御するJavaScript
vol.040  2011年05月19日発行  指定回数でループを終了させるランダムのステップ設問
vol.041  2011年05月26日発行  クォータフルのとき、同属性の空いているクォータへ振り分ける方法
vol.042  2011年05月30日発行  ver.1.7.0の新機能の紹介
vol.043  2011年06月30日発行  マニュアル更新のお知らせ
vol.044  2011年08月25日発行  テーブル設問で矢印を表示する
vol.045  2011年09月22日発行  テーブル設問の絞り込み
vol.046  2011年10月12日発行  MAの回答をTAで再掲する場合
vol.047  2011年12月28日発行  年末のご挨拶とver.1.7.2リリースのご案内
vol.048  2012年02月14日発行  TLタグ(問ラベルタグ)の使い方
vol.049  2012年04月11日発行  新バージョンの機能で効率の良い画面作成を!
vol.050  2012年04月23日発行  問ラベルの利用方法
vol.051  2012年05月23日発行  問ラベルの自動付番
vol.052  2012年06月18日発行  ORCA Script「PS」設問通過情報を使った回答の確認・修正を行う方法
vol.053  2012年07月20日発行  文字入力回答設問の活用
vol.054  2012年09月24日発行  文字列の変換
vol.055  2012年11月06日発行  ランダム順序と回答の引継ぎ
vol.056  2012年12月07日発行  マトリクス形式の合計値を縦と横で表示する方法
vol.057  2013年01月25日発行  ver.1.7.6リリース
vol.058  2013年03月15日発行  Editorが開かない時の対処法・ver.1.7.6新機能紹介
vol.059  2013年03月22日発行  ver.1.7.6新機能紹介
vol.060  2013年04月05日発行  ver.1.7.6新機能紹介
vol.061  2013年06月26日発行  XPからPCを買い換えてEditorを再インストールされる方へ・ver.1.7.6新機能紹介
vol.062  2014年05月02日発行  ver.1.7.8新機能紹介
vol.063  2014年12月18日発行  予告!ver.2.0.0
vol.064  2015年01月22日発行  ver.2.0.0リリース情報
vol.065  2015年05月19日発行  ver.2.0.0新機能紹介(input)
vol.066  2015年06月02日発行  マトリクスの表肩に文字や画像を入れるJavaScript
vol.067  2015年07月16日発行  ver.2.0.2リリース情報
vol.068  2015年10月05日発行  ver.2.0.2リリース新機能紹介
vol.069  2015年12月17日発行  画像ファイルの個人情報の取り扱いについて
vol.070  2016年03月08日発行  セクション設定機能を使おう!
vol.071  2016年09月16日発行  ORCA Editorの配布について
vol.072  2016年11月08日発行  推奨環境の見直しと高dpi対応について
vol.073  2016年12月13日発行  ver2.0.4リリース情報
vol.074  2017年05月09日発行  パスワード変更のお願い・集計設定の機能について
vol.075  2017年10月31日発行  ver2.1.0のご案内・高dpiのパソコンをお使いの皆様へ
vol.076  2017年12月22日発行  年末年始休業のご案内・ver2.1.0バージョンアップのご案内
vol.077  2018年04月04日発行  サポートサイト更新のお知らせ・市区町村コード公開データの利用
vol.078  2018年05月31日発行  サポートサイト更新のお知らせ・ブラウザ幅に合わせて画像を配置する
vol.079  2018年07月11日発行  サポートサイト更新のお知らせ・郵便番号を自動入力する
vol.080  2018年11月27日発行  【重要】Javaの有償化に伴うサイズの対応について
vol.081  2019年01月24日発行  【重要】ORCA Editor等ツール類アップデートのお願い
vol.082  2019年02月21日発行  ツール類のバージョン確認のお願い・JavaScriptで画面サイズを取得する
vol.083  2019年04月24日発行  【重要】バージョンアップ(ver2.1.2)のご案内・健康診断の受付
vol.084  2020年11月02日発行  【重要】バージョンアップ(ver2.3.0)のご案内
vol.085  2021年04月16日発行  共用サーバーメンテナンスのご案内・スペック作成のヒント
vol.086  2021年06月18日発行   ver2.3系バグ報告・「ブラウザの戻るボタン」の挙動変更について・スペック作成のヒント
vol.087  2021年12月17日発行  年末年始休業のご案内・ver2.4.0の機能予告
vol.088  2022年03月31日発行  ver2.4.0リリースのご案内・スペック作成のヒント
vol.089  2024年07月12日発行  ver2.5.6リリースのご案内・スペック作成のヒント
vol.090  2024年12月06日発行  年末年始の営業日について・スペック作成のヒント
vol.091  2025年05月27日発行  ver2.6.0リリースのご案内・スペック作成のヒント

ページトップへ