-PR-
解決
済み

同じ計算を2回させるにはどうしたら良いのでしょうか?

  • 暇なときにでも
  • 質問No.85636
  • 閲覧数35
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 66% (26/39)

始めに金額を入力してもらい、その金額を半分にしてAとB2つの商品を購入し、それぞれの購入代金と、残額がでるというスクリプトを組みたいのですが、
A * (1)Aの割引率% - (2)Aのサービス価格 = (3)計算結果、
B * (1)Bの割引率% - (2)Bのサービス価格 = (3)計算結果、
最後に残額が出る。というスクリプトです。

始めに入力された金額の範囲が
1,000円~3,000円なら、Aの(1)が5%、(2)が100円で、Bの(1)が3%、(2)が50円。
3,000円~5,000円なら、Aの(1)が7%、(2)が300円で、Bの(1)が4%、(2)が150円。
といった具合で、始めの金額によって(1)、(2)は5段階ぐらいに増えていきます。
(3)の計算結果だけでなく、(1)(2)(3)すべてが出るようにするには、どのように組めば良いのでしょうか?

初心者には難しいです。どうか宜しくお願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル5

ベストアンサー率 100% (2/2)

ちょっと初心者の方には難しいかもしれませんが、わたしはよく下のような方法を使います。

<HTML>
<BODY>
<script language=javascript>
function calc( money ) {
 if ( money < 1000 ) {
  this.a = 5;  // 割引率
  this.b = 100; // サービス価格
 } else if ( money < 2000 ) {
  this.a = 10; // 割引率
  this.b = 150; // サービス価格
 } else {
  this.a = 15; // 割引率
  this.b = 200; // サービス価格
 }
 this.c = money - money * ( this.a / 100 ) - this.b;
}
var cc = new calc( 1000 );
alert( cc.c );
</script>
</BODY>
</HTML>

calcというのはfunctionと宣言してありますが、実はオブジェクトという一種の箱のようなものになっています。
this.a this.b this.c という部分で、この箱の中身として、割引率・サービス価格・計算額というものが入っているよと定義してあげています。
これは、this.waribiki this.service this.goukeiとかでも構いません。

次に、var cc = new calc( 1000 );という部分で、上で定義した箱をひとつ宣言しています。
ここの1000という部分が入力された金額になります。
こうすると、箱の中身を見ることが可能になります。しかも、箱の中身が既に設定された状態になっているのです。
箱の中身を見るには、cc.a ← 割引率 cc.b ← サービス価格 cc.c ← 計算額とします。
var aa = new calc( 2000 );とすれば2000円に対するそれぞれの金額が設定されるわけです。
お分かりになりましたでしょうか?
もし難しいようでしたら、下記までお越しください。
なるべく易しくお答えしようと思います。
お礼コメント
garfield

お礼率 66% (26/39)

お礼が遅くなり大変申し訳ありませんでした。
説明も分かり易くしていただいて助かりました。
投稿日時 - 2001-10-13 14:37:46
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ