• ベストアンサー

C++電卓 メモリ機能について

VC++2010で電卓を作っているのですがメモリ機能のところがうまくいきません フォームアプリケーションで作っています M+のところは m/*メモリ用の変数/*=int::Parse(textBox1->Text); です こうしてM+を押して数字を入力するとmが消えずにそのまま数字が入力されてしまいます 同様にM-、MC、MRも教えてください よろしくお願いします!

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

  • ベストアンサー
回答No.2

参考サイトをざっと見ましたが、M+,M-など、投稿者さん独自の機能を追加しようとしてるようですね。 やはり推測でしかないですが、以下ではどうでしょう? //M+ m=m + z; z=0; textBox1->Text = z.ToString(); //M- m=m - z; z=0; textBox1->Text = z.ToString(); //MC m=0; //MR z=m; textBox1->Text = z.ToString(); 誠に勝手ながら、この質問に対する私の回答はこれで最後にさせていただきます。

spmz1311
質問者

お礼

できました!! ありがとうございました!

その他の回答 (1)

回答No.1

どういう仕様の電卓を作りたいのか/他の部分がどういうプログラムなのかが明確でないため、的確な回答にはならないと思いますが、ヒントになれば幸いです。 //M+ m=m + int::Parse(textBox1->Text); textBox1->Text = 0; //M- m=m - int::Parse(textBox1->Text); textBox1->Text = 0; //MC m=0; //MR sprintf(textBox1->Text,"%d",m);

spmz1311
質問者

補足

なおりません・・・ やっぱり130とうってM+をおしてtextBoxを0にしてもその後に 5ボタンを押すと1305になってしまいます 一応数字のプログラムかいておくのでもう一度よろしくお願いします int i; if(y2==1){ cn=cn+1; for(i=0;i<cn;i++){ z=10*z; } } if(y2==0)z=z*10; z=z+1; if(y2==1){ for(i=0;i<cn;i++){ z=z/10; } } textBox1->Text=z.ToString(); 数字の部分のプログラムはこんな感じです 変数y2は小数点ボタンが押されたか判定していて押されればy2は1になって押されてなければ0になります。 変数cnは小数点ボタンが押された後、何回数字ボタンが押されたかカウントしています。 参考サイト http://www5b.biglobe.ne.jp/~suugaku/vc++kougi/index.html 第6講

関連するQ&A

  • 電卓のメモリ機能について教えてください

    電卓のメモリ機能 MCやMRなどはわかるのですが 計算結果を一時的保存しておいて いいところで使用するという パソコンでいうコピー&ペーストのような 機能のついた電卓は存在するのでしょうか?

  • VB 電卓 メモリー機能

    VB.NETで電卓にメモリ機能をつけたいのですが ソースがわかりません。 とりあえずメモリ用の変数を一つ用意して、 下記に機能はこのような感じだと思って書いてみました。 M+:メモリ用の変数に現在の値を加算する MS:メモリーに記録。今までのは消える。 MR:メモリ用の変数の値を現在の値とし、ディスプレイに表示。 MC:メモリ用の変数をゼロクリアする M+の場合 Dim curmemory As Decimal Private Sub cmdMemoryPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdMemoryPlus.Click curMemory = curMemory + txtDisplay.Text curMemory = curMemory + Val(txtDisplay.Text) MCは何とかわかりそうなのですが、M+でもあたっているか わからない上に、MS、MRはまったくわかりません。 申し訳ありませんが、アドバイス等よろしくお願いいたします。

  • 電卓のメモリボタン使い方

    メモリボタンのMSとM+とMCとMRの使い方がネットで調べてもよくわからないのですがどのように使うのか教えてください。

  • C言語について質問なんですが((。繰り返しを指示するプログラムがどうも

    C言語について質問なんですが((。繰り返しを指示するプログラムがどうも上手くいきません・・・ C言語について質問なんですが((。繰り返しを指示するプログラムがどうも上手くいきませんorz。詳しい方是非応援に(TAT)! 今打ち込んでいるとこなんですがどうもうまくいかなくて(orz どんな内容かといいますとテキストボックス1に入力した数値を テキストボックス2に入力した回数分掛けた値をもとめ テクストボックス3に出力するものです 例えばテクストボックス1に「13」と入力し、テクストボックス2に「2」と入力したら 169とテクストボックス3に出力したいのですが上手くいかなくて。。。 for(i=0;i<b;i++)この後に繰り返しの式を書かなければと思うのですが・・・それも思いつかず(TAT) っていうか他に2~3個方法があるのですがこの for(i=0;i<b;i++)があっているのかもわからず・・・orz 是非、是非力をかしてください! ちなみにプログラムはこんな感じになってます↓ private void button5_Click(object sender, EventArgs e) { //2の0乗=1 //2の1乗=1*2*2=2 //2の2乗=1*2*2=4 //2の3乗=1*2*2*2=8 //2の4乗=1*2*2*2*2*=16 int a, b, c,i; //入力 //textboxの数値を変数aに入力 a = int.Parse(textBox1.Text); //↑がわからに場合数字のドキュメントで数値入力を確認 //textbox2の数値を変数bに入力 b = int.Parse(textBox2.Text); //処理 //cに1を代入 //b回繰り返す //cにaを掛ける c = 1; //出力 //求めた答えをtextbox4に出力 textBox3.Text = c.ToString(); for(i=0;i<b;i++) { }}

  • 電卓のディスプレイ部分に適したコントロールについて

    フォームアプリケーションで簡易電卓を作っています。 計算するための処理は理解できたのですが、 電卓のディスプレイ部分(??コントロール)に上手く表示させることが出来ません。 本物の電卓のように、フォーム上にある数字のボタンを押した瞬間に、その数字がディスプレイ部分のコントロールに右詰めで表示にしたいのですがどうしたらよいのでしょうか? 例えば、123 ( ひゃくにじゅうさん )を入力するとき、(1)ボタン、(2)ボタン、(3)ボタンを連続でクリックしますが、この時、ディスプレイ部分の右側に、 123 と表示させたいのですが、 実際、自分でチャレンジしたものは、 3 ※ ↑ 1と2が上書きされて、3だけが表示されたり、( label、textBox、richtetextBox使用時 ) 1 2 3 ※ ↑数字が改行され表示されてしまったりします。(listBox使用時) ディスプレイ部分をlistBox、textBox、richtextBox、labelにしてみましたが、どれも失敗しています。 それぞれのプロパティをいじってみたのですが駄目でした。 入力した数字がディスプレイ部分の右側に表示されるだけで、label、textBox、richtextBox、は上書きされ、listBoxは改行されたような表示になってしまいます。 もしかしてこれらはプロパティでの設定では不可能で、それ用のコードを記述する必要があるのかなとも思ったりしていますが、そのコードも検索できずにいるので質問させていただきました。 入力した数字が、上書きされたり改行されたりしないような、コントロールはあるのでしょうか? 知っている方是非アドバイスを頂きたいです。 どうぞよろしくお願いします。 ●使用環境は、以下の通りです。 visualC++ 2010 express .netframework フォームアプリケーション

  • 再 電卓 メモリー機能

    何度も失礼いたします。 VBで電卓を作成しメモリー機能をつけたいのですが うまくいきません。何度か、わかりやすいお答えを いただいたのですが、うまくプログラムできません。 とりあえずは、参考になるサイトを拝見させていただいたところ 普通の電卓は、なんとか作成することができました。 必要なのは、windowsのアクセサリの電卓のようなM+,MS,MR,MC の機能です。 参考にさせていただいたサイト様です ttp://www.seosoft.net/labo/vbprog/chap_10.html#onoperation アドバイスなどありましたら、よろしくお願いいたします。

  • Windowsアクセサリ内の電卓の操作

    WindowsXPです。 標準の電卓でキーボードから入力する場合 MC MR MS M+  % +/- CE にあたるキーはどれですか? (CにあたるキーはESCですよね?) よろしくお願いします。

  • 電卓の使い方

    今度、会社の人事異動で営業から経理にまわされることになりました。電卓を使う機会が増えます。今までは簡単な計算(100+100・100-50・100/50)とかしか電卓で計算したことがありません。電卓をみると今まで使ったことが無いボタンがあります。MC・MR・M-・M+・GTなどのボタンです。これらのボタンはなにに使うのでしょうか?それと、例えば(100*10+100*10)のような計算はどうすればよいのでしょうか?そのままうちこむと計算結果は2000ではなく11000になってしまいます。前記の質問のほかに便利な計算方法などありましたら教えてください。お願いします。

  • TextBoxをInteger型の変数に代入したい

    開発環境は、VB2005 ExpressEditionです。 TextBoxをInteger型の変数に代入したいのですが。 Dim num01 As Integer 1 num01 = Int(TextBox1.Text) 2 num01 = CInt(TextBox1.Text) 3 num01 = Integer.Parse(TextBox1.Text) 1,2,3どれで実行しても”入力文字列の形式が正しくありません。”とでてしまいます。どなたか良い方法をご存知の方がいたら、教えて下さい。

  • 電卓の「M+」「M-」「MR」「MC」の使い方を教えてください。

    真に初歩的な質問で恐縮です‥。 電卓の「M+」「M-」「MR」「MC」の使い方を教えてください。 メモリ機能が覚えられなくて、今まで全然使ってなかったのですが、最近必要に迫られているのです。 数年前に買ったカシオなのですが、マニュアルはなくしてしまいました。 解説してくれてるサイトでもいいので教えてください。

専門家に質問してみよう