アプリ版:「スタンプのみでお礼する」機能のリリースについて

Javascriptの電卓を作る課題についてです。
普通の電卓ではなく、操作が決まっています。
数値ボタン(0〜9)を押す→演算子ボタン(+.-.×.÷)を押す→数値ボタンを押す→=ボタンを押す。という操作になります。
ボタンは別のjsファイルを作ってそこで取得させます。
どういう風に考えたらいいのか全然分からないので、どう考えればいいのかだけでもいいので、詳しく教えていただけませんか?また、課題のヒントはボタンをthis.valueで取得すると教えられましたが、どういうことでしょうか?
よろしくお願いいたします。

A 回答 (3件)

こんにちは



直接の回答ではありませんが・・・

>普通の電卓ではなく、操作が決まっています。
とのことですが、その順ではない操作をされた時にどのような反応を示すべきかについても、先に考えておいてから作成すると手直しが減少するものと思います。

例えば、
 ・2 +× 3 =
 ・2 ++ 3 =
 ・2 + 3 × 4 =
 ・・・・・
などは全てエラーとして扱われるのか(←これならご質問通り)、あるいは何らかの結果が表示されるのか?
結果が出るとしても、3番目のような場合に、結果は20になるのか、14になるのかなど。
    • good
    • 0

> 普通の電卓ではなく、操作が決まっています。



ほう。

でも、

> 数値ボタン(0〜9)を押す→演算子ボタン(+.-.×.÷)を押す→数値ボタンを押す→=ボタンを押す。という操作に

それって「普通の電卓」じゃないですか?
何か課題的にはフツー、HPの逆ポーランド法電卓みたいな、スタック利用した電卓作れ、ってのが有名なんですが、それじゃない?問題それでホントに正しいんですか?

ちなみに、やっつけなら、JavaScriptの詳細には明るくないんですけど、例えば文字列を格納する変数exprとか作って、

expr = "1"
expr += "+"
expr += "2"

等とどんどん計算式を入力から文字列で組み上げていって、=が入ってきた段階で

eval(expr)

で評価して返す、ってデタラメな方法があります。
    • good
    • 0

ヒントは、押された文字を随時格納しておいて最後に「=」が押されたら一気に計算する。

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!