電卓 // c++ の code を公開する。今回は、前回諸事情で載せられなかったコードを、編集したので、載せます。それだけです。#include <iostream>#include <string>using namespace std; int main(){ int num, num1, num2, amari, power, ans; string what = "0"; string yn = "n"; amari = 0; for (int fin = 10; fin >= 10; fin++){ cout << " 電卓" << endl; //数字を入力。3桁制限。 for (int i = 10; i >= 10; i++) { cout << " 数字を入力してください。" << endl; cin >> num; if (num >= -999 && num <= 999){ i = 0; } else { cout << "エラー:3桁を超えています。" << endl; } num1 = num; num = 1000; } //演算方法を選択 cout << " 計算方法を選択してください。" << endl; cout << " 足し算なら、add" << endl; cout << " 引き算なら、sub" << endl; cout << " 掛け算なら、mul" << endl; cout << " 割り算なら、div" << endl; cout << " 累乗なら、 pow" << endl; cout << " を入力してください。" << endl; //分岐計算方法を確認。 for (int i = 10; i >= 10; i++) { cin >> what; if (what == "0") { cout << "未入力です。" << endl; cout << " 入力してください。" <<endl; } else if (what == "add") { i = 0; cout << " 足し算が選択されました。" << endl; } else if (what == "sub") { i =0; cout << " 引き算が選択されました。" << endl; } else if (what == "mul") { i = 0; cout << " 掛け算が選択されました。" << endl; } else if (what == "div") { i = 0; cout << " 割り算が選択されました。" << endl; } else if (what == "pow") { i = 0; cout << " 累乗が選択されました。" << endl; cout << " 何乗しますか。" << endl; } else { cout << "エラー:無効な値です。" << endl; cout << " 入力してください。" <<endl; } } //数字を入力3桁制限 for (int i = 10; i >= 10; i++) { cout << " 数字を入力してください。" << endl; cin >> num; if (num >= -999 && num <= 999) { i = 0; } else { cout << "エラー:3桁を超えています。" << endl; } num2 = num; num = 1000; } //実際に計算する。 if (what == "add") { num = num1 + num2; } else if (what == "sub") { num = num1 - num2; } else if (what == "mul") { num = num1 * num2; } else if (what == "div") { num = num1 / num2; amari = num1 % num2; } else if (what == "pow") { power = num1; for (int i = num2; i > 0; i--) { power = power * num1; } num = power; } //答えの3桁制限 if (num >= -999 && num <= 999) { ans = num; cout << " 計算結果:" << ans << "です。" << endl; if (amari > 0) { cout << " 余りが出ました。" << endl; cout << " " << amari - 1 << "以上" << amari << "以下です。" << endl; } } else { cout << "答えが3桁を超えました。" << endl; } //続けるかの確認。 for (int i = 10; i >= 10; i++) { cout << " 計算を続けますか。[y/n]" << endl; cin >> yn; if (yn == "y") { i = 0; cout << " 計算を続けます。" << endl; } else if (yn == "n") { i = 0; fin = 0; cout << " 計算を終了します。" <<endl; } else { cout << "エラー:y か n を入力してください" << endl; } } } return 0; }2017.01.21 11:03
C++で電卓を作った。(How toではなく、ご紹介です。)僕の師匠に<計算機を実装せよ>との課題を頂いたので、実際に今の全力で作って見ました。今回はそれを紹介します。師匠の課題の詳細は、こちら。 計算機を実装せよ。 仕様は、 3桁まで扱えるようにすること。 四則演算ができること。 四則演算に加え、 +α の機能を実装すること。この3つが仕様として出されますた。では、それにそって、コードを組んでいく。(言いたいだけ)まず、壁として立ちふさがったのが、3桁の数字の認識と弾き返し。とはいったものの、そんなに難しいわけでもなく、新しい文法事項を1つ覚えれば済んだ。if ( 条件A && 条件B ) { 文}そう、条件を && でつなぐことで、追加できるらしい。&& は、条件A:TRUE かつ 条件B:TRUE のときTRUE逆に、条件A:TRUE かつ 条件B:FELSE のときFELSEになります。これで、if ( num >= -999 && num <= 990 ) {文}な感じで、行けました。-999 ≦ num ≦ 999 に条件を設定し、for文に入れることで、3桁以内なら他の変数に代入、3桁を超えて居たら再入力させることで、3桁問題を解決しました。良かった。で、プラス α の機能なんですが、今回は累乗することにしました。a^n ( a の n 乗 ) をする。ここでも問題が発生して、どうやって何度も同じ数を掛けるかです。for を使うってのはわかってたんだけど、 n の部分を同処理するか、ということです。考え抜いた結果(そこまで考えてない)、 int num, num1, num2, power; num1 = num; ( num には、何か数字が入ってるものとする。 ) num2 = num; ( num には、何か数字が入ってるものとする。 ) power = num1; for ( int i = num2; num2 > 0; i -= 1 ) { power *= num1; }こんな感じで、行きました。これで、課題の中の2つの主要な問題点が解決されました。それで、今回学んだのは、if for の使い方や、ここには書きませんでしたが、フローチャートを使っての情報の整理で、この2つができるようになりました。フローチャートはかならず書くべきですね。紙媒体ってのも功を奏してるかも。今回は、ここまで、。なんか中途半端な感じがものすごくて、申し訳ない感があるけど、こんなもんでしょ。紹介であって、How to じゃないって宣言してあるしね。(言い訳)おつかれ様でした。気が向いたら、完全なコードをのせますね。広告をワンクリックお願いします。2017.01.16 14:16
C++ をかじってみる。色々なプログラマーに聞いてもやっぱり C, C++ をやっとけと言われたので、やります。これからも、たまに、 C++ をいじっていけたらなと思います。はい。今回は、とりま、Hello World 行きましょう。#include<iostream>using namespace std;int main(){ cout << "Hello World" << endl; return 0;}こんな感じでしょうか。2017.01.02 13:23
スリスリスライダー明けましておめでとうございます。UISlider を使ってスライダーをスリスリしてスリスリします。前回までは、UIButton を使ってボタンを連打して回数を表示しました。スライダーをスリスリしてそのパーセンテージを表示させます。では、参りましょう。2017.01.01 07:14
おけましておめでとうございます。今日から idealHub 本格始動ということで、2017 年はゴリゴリ記事を書きまくって、キモズムな皆さまにこれからも意見交流をさせてください。私たちは、とりあえず記事を書きまくります。2016.12.31 15:00
ボタンが押したい。(Swift プログラミング)今回は、自分の衝動に正直にボタンを押すという目的を達成します!プログラムを組むとりあえず、Xcodeを開く。そうしたら、この画面まで頑張る。 (諸事情で環境はiOS10.1です。)2016.12.26 12:09
Swift 3.0 教科書を買いたいけど、どれにしよう。前に紹介した私の使ってる教科書はさすがに入門すぎましたね。あれがあったおかげで今があるわけですが。あの教科書をやりきった感があるわけではないですが、もう次のバイブルを探しておこうと思います。候補はこちらの3つ。2016.12.18 04:00
お、何だ?この少女育成?ゲームは?今さっき見つけたサイトなんですが、結構自分の好きなところをついていてるゲームを見つけてしまったので、紹介しちゃいます。プログラミングで彼女をつくるget a girl friend in programing一度触ったら離れないこのゲームは、文字どおりプログラミングで彼女をつくるゲームです。具体的には、安藤 杏<アンドロイドの彼女(ヒロイン)>を着せ替えするための衣装をプログラミングの問題を解いてゲットしようというゲームですね。はい。やって見た感想としては、結構楽しい。というか、いい問題集に出会った感じですね。これからも遊び続けたい。一個、注意点としては、SwiftについてはBeta版らしくCとかC++で遊んだうがいいかも。何かあったら、またこのゲームを記事にしようと思います。2016.12.15 09:08
Swift Xcodeを入れたら最初に実行すべきコード集#1Swift Xcodeを入れたらする最初に実行すべきコード集#1今回は、Swift だけでなくプログラミング言語を初めて触る人に実行してほしいコードのご紹介です。僕も最初は訳も分からず"Hello World"って表示させられましたね。(教科書に。)ということで、お手元のMacでXcodeを立ち上げてくだせえ。"Get started with a playground"でplayground(遊び場)を作成します。2016.12.13 09:49