電気料金が簡単に求められるプログラムがあればいいなぁと思って作ってみました。
特に、Web サーバを公開している方は電気代が気になる場合が多いと思います。
電気料金の計算は次の式で求められます。
但し、消費電力に応じた電気料金の計算であり、基本料金は考慮していません。
消費電力[kW] × 使用時間[hour] × 1時間当りの料金[円/kW・h] = 電気料金[円]
1時間当りの料金については、自身の加入している電力会社のHP 等で公開されている情報を基にします。
計算に使う消費電力の単位はキロワット=[kW]、(キロ=1000)なので、単位に注意が必要です。
例えば、1時間当りの料金が20円の場合に、130[W]のPC と70[W]のモニタを3時間使用したとすると、次のようになります。
(0.13+0.07)[kW] × 3 × 20 =12円
参考までに、家電製品の消費電力の目安を示します。
使用している製品によって異なるので、製品のマニュアルやラベル等で確認してください。
家電製品の消費電力の目安
家電製品 |
消費電力 |
パソコン |
100W〜400W |
液晶ディスプレイ |
50W〜150W |
テレビ |
100W〜200W |
ドライヤー |
1000W〜1200W |
こたつ |
500W〜600W |
炊飯器 |
600W〜1500W |
数日間、あるいは年中使用するものもあるので、日数を時間に計算しなおした表を掲載します。
日数と時間
日数 |
時間 |
1日 |
24時間 |
1週間 |
168時間 |
1ケ月 |
720時間 |
半年 |
4320時間 |
1年 |
8640時間 |
/* プログラム :電気料金計算 */
/* エラー処理関数:InputErrorCheck */
/* 計算処理関数 :prices */
/* 入力フォーム名:ElectricityPrices */
/* 入力値 :電力=watt */
/* 入力値 :使用時間=hour */
/* 入力値 :単位時間料金=rate */
/* 出力値 :電気料金=prices */
<script type="text/javascript">
<!--
function InputErrorCheck(){
var str1 = document.ElectricityPrices.watt.value;
var str2 = document.ElectricityPrices.hour.value;
var str3 = document.ElectricityPrices.rate.value;
if( str1=="" || str2=="" || str3=="" ){
alert("空欄があります。")
}
else if( str1.match(/[ ]/) || str2.match(/[ ]/) || str3.match(/[ ]/) ){
alert("スペースが入っています。")
}
else if( str1.match(/^0/) || str2.match(/^0/) || str3.match(/^0/) ){
alert("0から始まる数値は無効です。")
}
else if( str1.match(/[^0-9.]/) || str2.match(/[^0-9.]/) || str3.match(/[^0-9.]/) ){
alert("半角数字で入力してください。")
}
else{
prices();
}
}
function prices(){
var w = eval(document.ElectricityPrices.watt.value);
var h = eval(document.ElectricityPrices.hour.value);
var r = eval(document.ElectricityPrices.rate.value);
document.ElectricityPrices.prices.value= Math.round( w / 1000 * h * r );
}
//-->
</script>
<form name="ElectricityPrices">
消費電力<input type="text" name="watt" size=5 value="">[kW]
使用時間<input type="text" name="hour" size=5 value="">[時間]
1時間当りの電気料金<input type="text" name="rate" size=5 value="">[円/kW・h]
<input type="button" value="計算!" name="result" onClick="InputErrorCheck()">
電気料金<input type="text" name="prices" size=5 value="">[円]
</form>
簡単な計算プログラムですが、入力フォームがあります。
計算に必要なのは半角数字のみなので、それ以外の文字列がフォームにある状態で計算してしまわないようにします。
入力された文字列を、正規表現を利用して判別し、半角数字のみ有効にします。
フォームに空欄や全角文字、特殊文字がある状態で計算ボタンが押されると、エラー内容に応じたダイアログを表示します。