Index |
HOME > プログラムTOP > JavaScript |
||||||||
シンプル電卓整数の四則演算をするだけのシンプルな機能を持つ電卓です。演算は整数だけにしていますが、結果は小数点以下二位まで表示するようにしています。 sasaraan programming ![]() Exposition ■JavaScript コード// JavaScript ソース
var nTotal = 0; // 現在の合計値
var nInput = 0; // 入力中の数値
var sOpe = "+"; // 入力した演算子
var bNum = false; // 直前のボタンが数字かどうか
// 初期化処理
function InitCalc() {
nTotal = 0;
nInput = 0;
sOpe = "+";
bNum = false;
}
// 数値ボタン(0...9)のクリック
function NumClick(num)
{
// '=' 処理直後の数字入力で初期化処理
if (!bNum && sOpe == "=") InitCalc();
// 入力値を算出して表示
nInput = nInput * 10 + num;
document.Form1.Text1.value = nInput;
// 変数の更新
bNum = true;
}
// 演算子(*/-+=)のクリック
function OpeClick(ope)
{
// 直前に押したのが数値の時
if (bNum) {
// 合計値を算出
nTotal = eval(nTotal + sOpe + nInput);
// 合計値を表示(小数がある時は二位まで表示)
document.Form1.Text1.value =
(nTotal - parseInt(nTotal) != 0)? nTotal.toFixed(2): nTotal;
// 変数の更新
nInput = 0;
bNum = false;
}
// 演算子を格納
sOpe = ope;
}
// クリアボタン(C)のクリック
function ClearClick()
{
// 初期化処理
InitCalc();
document.Form1.Text1.value = nInput;
}
上記中、使用している各メソッドの役割は次の通りです
■CSS / HTMLの記述/* CSS ソース */
table.calc {margin:1ex; border:1px solid gray; font-size:14px;}
.calc td {text-align:center;}
.calc input {width:2em; font-size:14px;}
<!-- HTML ソース -->
<form name="Form1">
<table class="calc">
<tr><td colspan="4" style="background-color:silver;">電 卓</tr>
<tr>
<td colspan="3">
<input type="text" name="Text1" value="0"
style="width:6em; font-family:monospace; text-align:right;">
<td><input type="button" value="C" onclick="ClearClick()"></tr>
<tr>
<td><input type="button" value="7" onclick="NumClick(7)">
<td><input type="button" value="8" onclick="NumClick(8)">
<td><input type="button" value="9" onclick="NumClick(9)">
<td><input type="button" value="÷" onclick="OpeClick('/')"></tr>
<tr>
<td><input type="button" value="4" onclick="NumClick(4)">
<td><input type="button" value="5" onclick="NumClick(5)">
<td><input type="button" value="6" onclick="NumClick(6)">
<td><input type="button" value="×" onclick="OpeClick('*')"></tr>
<tr>
<td><input type="button" value="1" onclick="NumClick(1)">
<td><input type="button" value="2" onclick="NumClick(2)">
<td><input type="button" value="3" onclick="NumClick(3)">
<td><input type="button" value="−" onclick="OpeClick('-')"></tr>
<tr>
<td><input type="button" value="0" onclick="NumClick(0)">
<td colspan="2">
<input type="button" value="=" onclick="OpeClick('=')" style="width:4em">
<td><input type="button" value="+" onclick="OpeClick('+')"></tr>
</table>
</form>
|
|||||||||
www.sasaraan.net |
(c) morijoh |