FORMAT$

プチコン3号 プチコンBIG 

数値や文字列を指定の書式に変換

var = FORMAT$(pattern,val[,val]…)

パラメーター

pattern書式を含む文字列
val書式に入れる値

戻り値

var整形済み文字列

解説

渡された値を、書式を変えて返します。
基本書式
書式内容
%S文字列を出力
%D整数を出力(小数点以下は切捨て)
%B2進数に変換して出力(※Ver3.3〜)
%X16進数に変換して出力
%F実数を出力(指定小数点以下は四捨五入)
各書式に共通の書式
書式例内容
%5D5文字分の幅で右寄せになるよう頭に空白追加
%04X4文字分の幅で右寄せになるよう頭に"0"を追加
%-5D5文字分の幅で左寄せになるよう末尾に空白追加
%+D数値に+−の符号を付ける(D,Fのみ使用可)
%5.1F小数点と下1桁込で5文字分の幅に右寄せ。小数点最下位は四捨五入される。(Fのみ使用可)

サンプルコード

%S:文字列を出力
?FORMAT$("これは%Sです","りんご")
出力結果
これはりんごです
%D:整数を出力(小数点以下は無視(切捨て))
?FORMAT$("へいきんは%Dです",200/3)
出力結果
へいきんは66です
%X:数値を16進数で出力(小数点以下は無視(切捨て)
?FORMAT$("%Dは16しんすうで%Xです。",200,200)
出力結果
200は16しんすうでC8です
%F:実数を出力(桁数未指定なら小数点以下6桁。表示桁数以下は四捨五入)
?FORMAT$("へいきんは%Fです",200/3)
出力結果
へいきんは66.666667です
共通の書式の例
?FORMAT$("%5D",123) '5文字分で右寄せ
?FORMAT$("%5.1F",200/3) '小数点1位と,全5文字分で右寄せ
?FORMAT$("%-5D",123) '5文字分で左寄せ(後ろに半角スペース)
?FORMAT$("%+D",123)  '+-の符号付き
?FORMAT$("%04X",123) '4桁に足りない桁を0で埋める
 
実行結果
  123
66.7
123  
+123
007B
 
実際の使用例。同じ文章を何度も書かなくても1回で済む。
N$="りんご:KOSU=3:YEN=500:GOSUB @DSP
N$=みかん:KOSU=7:YEN=360:GOSUB @DSP
 
@DPS
?FORMAT$("%Sは、%Dこ%Dえん、",N$,KOSU,YEN)
?FORMAT$("1こあたり%8.2Fえんです。",KOSU/YEN) '全体の桁数が8,少数以下2桁
実行結果
りんごは、3こ500えん、
1こあたり  166.67えんです。
みかんは、7こ360えん、
1こあたり   51.43えんです。
 

参照

ASC 文字から、文字コードを取得
CHR$ 文字コードから、文字を取得
VAL 文字列を数値に変換
STR$ 数値を文字列に変換
HEX$ 数値を16進数の文字列に変換
FORMAT$ 数値や文字列を指定の書式に変換
LEN 1.文字列の長さを調べる 2.配列の要素数を調べる
MID$ 文字列の一部分を取得
LEFT$ 文字列の左から指定文字数分を取得
RIGHT$ 文字列の右から指定文字数分を取得
INSTR 文字列内を検索
SUBST$ 文字列内を置換
BIN$ 数値を2進数の文字列に変換

Facebookコメント