My Journal -94ページ目

C++で計算をするプログラム

//////////////////////////////////////////////////////////////////
//////////////////////===calculation.cpp===//////////////////
////////////////////// C++で計算をするプログラム ///////////////////
//////////////////////////////////////////////////////////////////

/*
【使用変数の一覧!!】
変数名 / 変数型 / 内容

n /文字型/仮定を表示するかどうか(tかf)
a /符号無し64bit整数型/掛けられる数
b /符号付き32bit整数型/掛ける数
cnt/符号付き32bit整数型/ループの回数(1周目は1からスタート)
fin/80bit倍精度符号小数点型/分数の計算結果
fin2/符号無し64bit整数型/分数の計算結果finを整数値に変換したもの。
cal/ブーリアン型(論理型)(trueかfalseをとる)/分子の計算をしているか割り算をしているか。
dis/ブーリアン型(論理型)(trueかfalseをとる)/途中経過を表示するかどうか。
*/

/*
【ルーチンの一覧!!】
ラベル名 / 内容

int/メインルーチン
disp/変数を画面出力
multi/掛け算
*/

//各種命令セットをインクルード
//【Caution!!】標準C++準拠のヘッダファイルは".h"がつかない!!【注意!】
#include <iostream>//「文字出力プログラムセット」をインクルード
#include <istream>//「文字入力プログラムセット」をインクルード

//サブルーチン「disp」
void disp(long double fin,long long int fin2,long long int a,int b,int cnt,bool cal)//サブルーチン(voidはreturnで値を返さない。)
{
using namespace std;//「std::」を省略しますよーってこと。

cout << "【変数の値】" << endl
<< "a=" << a << endl
<< "b=" << b << endl
<< "cnt=" << cnt << endl ;
if (cal == true)
{
std::cout << "fin=" << fin << std::endl;
fin2 = fin;
std::cout << "fin(整数値)=" << fin2 << std::endl;
}
cout << endl;
return;//void型関数の場合、戻り値を持たない。(このreturnは無くても良い。)
}

//メインルーチン・・・その前に

//【Caution!!】メインルーチン内での変数定義と外での変数定義は全然違う!!【注意!】

//メインルーチンに入る前に”メインルーチンの外で”変数を定義することができる。
//ここで定義された変数は「静的変数」となりメインルーチン外でも使用できる。
//なお、ルーチン内で定義された変数は「自動変数」になるので、ルーチン外(サブルーチンとか)で使えなくなる。

char n;long double fin;long long int fin2;long long int a = 67;int b = 67;int cnt = 0;bool cal = false;bool dis = true;
using namespace std;

//メインルーチン
int main(void){
//////前置き。

cout << "初めてC++で組んだソフト!!(>ω<)" << endl
<< "ちなみに今は2011年6月5日、いや日付代わって6日です。" << endl
<< "一度で一気にかけた時間としては最長となる約10時間かけて作成。" << endl
<< "趣味だから余裕…と言いたいところだが、正直かなり疲れた。" << endl
<< "んで、このソフト、何をするためのソフトかと言うと" << endl
<< "(67*66*65*64*63*62*61*60*59*58)/(84*83*82*81*80*79*78*77*76*75)" << endl
<< "って式を計算しなきゃなんなくなっちゃって。" << endl
<< "ちなみに、ある確率を計算するためのものなんですけど。ま、それは別にいいとして。" << endl
<< "上の式を何とか手計算で出来ないかなあと知恵袋で質問したものの" << endl
<< "返ってきたのは「無理ですね。」って答え。" << endl
<< "仕方ないのでHSPで組んでみたら、あまりにも膨大な数になるため扱えず…" << endl
<< "「それじゃ、ヤッテヤルデス!」ってことでC++で組んでみた次第であります。" << endl
<< "結局、計算は出来たのですが計算結果が合っているかどうか分からないという…" << endl
<< "まあ、仕方ないです(笑)" << endl
<< "ってなわけで、実行して見ましょう!!" << endl
<< "最初に計算経過を表示するか否かを決めることが出来ます。" << endl
<< "表示するなら「t」と入れてEnterキーを" << endl
<< "表示しないなら「f」と入れてEnterキーを押してください。" << endl
<< "(半角でお願いします。t,f以外を入れると終了します。)" << endl;

cin >> n;

if (n == 't')//文字型変数に対しては''を使う
{
dis = 0;
}
else if (n == 'f')
{
dis = 1;
}
else
{
exit(0);
}

//////分子の計算

//ここから繰り返し(do~while間)
//【Caution!!】ループ脱出条件はwhile命令の後に記述【注意!】
do{
cnt += 1;
b -= 1;
a = a * b;

if (dis == 0)
{
disp(fin,fin2,a,b,cnt,cal);//サブルーチン「disp」に飛ぶ「gosub *disp」みたいな感じ
}
}while(cnt != 9);//条件「cnt(ループ回数)が9じゃない」が真ならループ=条件「cnt=9」で脱出

if (dis == 0)
{
cout << "【分子の計算結果】" << endl
<< "a=" << a << endl
<< "b=" << b << endl
<< "cnt(掛けた回数)=" << cnt << endl << endl;
}

//////分母の計算

b = 84;cnt = 0;cal = true;

fin = a / b;

do{
cnt += 1;
b -= 1;
fin = fin / b;
if (dis == 0)
{
disp(fin,fin2,a,b,cnt,cal);
}
}while(cnt != 9);//条件「cnt(ループ回数)が9じゃない」が真ならループ=条件「cnt=9」で脱出

if (dis == 0)
{
cout << "【分数の計算結果】" << endl
<< "a=" << a << endl
<< "b=" << b << endl
<< "cnt(割った回数)=" << (cnt += 1) << endl
<< "fin=" << fin << endl
<< "fin(整数値)" << fin2 << endl <<endl;
}

cout << "【結果】" << endl
<< (fin*100) << "%" << endl;
};

始めてC++で組んだプログラム

//////////////////////////////////////////////////////////////////
//////////////////////===practice.cpp===/////////////////////
//////////////////////  プログラムの練習場  /////////////////////
//////////////////////////////////////////////////////////////////

/*
【使用変数の一覧!!】
変数名 / 変数型 / 内容

a /符号付き32bit整数型int/掛けられる数
b /符号付き32bit整数型int/掛ける数
cnt/符号無し64bit整数型int/ループの回数(1周目は1からスタート)
*/

/*
【ルーチンの一覧!!】
ラベル名 / 内容

int/メインルーチン
disp/変数を画面出力
*/

//「文字出力プログラムセット」をインクルード
//【Caution!!】標準C++準拠のヘッダファイルは".h"がつかない!!【注意!】
#include <iostream>

//サブルーチン「disp」
void disp(long long int a,int b,int cnt)//サブルーチンのラベル設定的な?
{
using namespace std;//「std::」を省略しますよーってこと。

cout << "【変数の値】" << endl
<< "a=" << a << endl
<< "b=" << b << endl
<< "cnt=" << cnt << endl << endl;
}

//メインルーチン・・・その前に

//【Caution!!】メインルーチン内での変数定義と外での変数定義は全然違う!!【注意!】

//メインルーチンに入る前に”メインルーチンの外で”変数を定義することができる。
//ここで定義された変数は「静的変数」となりメインルーチン外でも使用できる。
//なお、ルーチン内で定義された変数は「自動変数」になるので、ルーチン外(サブルーチンとか)で使えなくなる。

long long int a = 67;int b = 67;int cnt = 0;

//メインルーチン
int main(void){

//ここから繰り返し(do~while間)
//【Caution!!】ループ脱出条件はwhile命令の後に記述【注意!】
do{
cnt += 1;
b -= 1;
a = a * b;
disp(a,b,cnt);//サブルーチン「disp」に飛ぶ「gosub *disp」みたいな感じ
}while(cnt != 9);//条件「cnt(ループ回数)が9じゃない」が真ならループ=条件「cnt=9」で脱出

std::cout << "【最終結果】" << std::endl
<< "a=" << a << std::endl
<< "b=" << b << std::endl
<< "cnt=" << cnt << std::endl << std::endl;
};

SHINY SUMMER DAYS続報

SHINY SUMMER DAYSの公式ホームページが開設されたようです。

http://www.0verflow.com/web/shinysummerdays

このHPを見て思ったんだけど

このゲームって、もしかして、まさか、百合ゲー???

登場人物紹介の所、女の子のキャラしか書いてないんだけどw

ま、別にいいや。俺得だし。

んで、ふと気が付いたんだけどSummerDaysってまだロットアップされてないんだね。

2006年の発売なのに。

「SchoolDaysロットアップのお知らせ」なんてのを見て、

もちろんSummerDaysも既にダウンロード販売になってるんだろうとか思ってたら違ってた。

にしても、本当に百合ゲーなのかな。

野杏先輩が攻略できたら、それはとっても嬉しいなって。

あーそうそう。発売が2011年の夏?

早くね??

つか、まだSummer Daysの全ルート見てないんだが。

それから、Rewriteもやらなきゃだし。

はぁ。。。

ん?待てよ??何かを忘れている気が。。。

まぁ、いいわ。

んじゃ。