ページ 11

入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 12:32
by &ほりでい

コード:

//入力
double hankei;
char buf[128];
ggets(buf, 128);
sscanf_s(buf, "%lf", &hankei);
//答えの表示
glocate(12, 7);
gprintf("球の体積は%.2f立方㎝だね。", 4 * PIE * pow(hankei, 3) / 3);
このプログラムは、hankeiという関数を実数にして、
char型の変数bufの配列を128個よういし、
ggets関数にキーボードからbufという変数に128個までの文字列の長さのすうじをにゅうりょくさせる。
ここまではこのような解釈でいいのでしょうか?
その下のsscanf_s(buf,%lf,&hankei);とgprintf("球の体積は%.2f立方㎝だね。", 4 * PIE * pow(hankei, 3) / 3);が
よくわかりません。教えてください

Re: 入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 15:15
by Math
球の体積は 中学1年にならないと習わないみたいだね

http://www.irohabook.com/ball

円周率 は math.h のなかで(corecrt_math_defines.h)

#define M_PI 3.14159265358979323846 // pi
と定義されている

http://www.ect.niihama-nct.ac.jp/~kurih ... ng/pi.html

pow は べき乗計算しています


「わたしはVS2019Community を使用しております。」


main.c

コード:

#include <GConsoleLib.h>
#include <stdio.h>
#include <math.h>
#include <corecrt_math_defines.h>

int main() {
	gfront();
	gcls();
	gimage("C:\\GConsole追加ファイル\\sampleimg\\chap3-0.png", 100, 100);
	glocate(12, 5);
	gprintf("わたしはメデ子先生。");
	//質問の答え
	glocate(12, 6);
	gprintf("知りたいのは何分かな?");
	//入力
	//int minutes;
	double hankei;
	char buf[128];
	ggets(buf, 128);
	sscanf_s(buf, "%lf", &hankei);
	//sscanf_s(buf, "%d", &minutes);
	//答えの表示
	glocate(12, 7);
	//gprintf("それは%.2f時間だね。", minutes / 60.0);
	gprintf("球の体積は%.2f立方㎝だね。", 4 * M_PI * pow(hankei, 3) / 3);

}

実行

コード:

**bring to front
**clear screen
**gimage = C:\GConsole追加ファイル\sampleimg\chap3-0.png
**glocate = C0005
**gprintf = わたしはメデ子先生。
**glocate = C0006
**gprintf = 知りたいのは何分かな?
**Graphical Consoleからの入力待ち
native = 10
**returnedtext = 10
**glocate = C0007
**gprintf = 球の体積は4188.79立方㎝だね。

C:\Users\user\Documents\B\BC\12sai\ソースコード\chap3-0\Debug\chap3-0.exe (プロセス 4856) は、コード 0 を伴って終了しま した。
このウィンドウを閉じるには、任意のキーを押してください . . .

Re: 入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 15:30
by Math
知りたいのは何分かな?

のとこは 適当に直してくださいね。

M_PI = 3.14159265358979323846

は概略  ”産医師異国に向こう産後厄なく産”  と覚えればいいですよ(^^;

Re: 入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 17:15
by Math
.>このプログラムは、hankeiという関数を実数にして、
>char型の変数bufの配列を128個よういし、
>ggets関数にキーボードからbufという変数に128個までの文字列の長さのすうじをにゅうりょくさせる。
>ここまではこのような解釈でいいのでしょうか?

たぶん 思っていることは あっているとおもわれるが 正確な ことばでは

hankeiという変数関数を実数にして

ですよ

Re: 入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 18:57
by Math
君が12歳くらいと仮定して ルールもまともによめないとして 参考にしてるものをよくよんでみて学習してくださいね(^^;
(12歳からはじめる ゼロからのC言語 ゲームプログラミング教室か
 13歳からはじめる ゼロからのC言語 ゲームプログラミング教室 があるはず)


>その下のsscanf_s(buf,%lf,&hankei);とgprintf("球の体積は%.2f立方㎝だね。", 4 * PIE * pow(hankei, 3) / 3);が
>よくわかりません。教えてください

プログラムと 実行結果からあきらかなはずですが 参考まで。

viewtopic.php?t=16124 

http://www.kumei.ne.jp/c_lang/intro2/no_140.htm

Re: 入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 19:25
by Math
余談ですが 近くのNPO で放課後の小学生の遊ぶ提供しているところで小学生に聞いたところ 3年生で
scratch を習っていて すごいゲームをつくる子もいるといっていましたね。
そばに 保育園年長 から ロボット・プログラミングを教えるところ沢山できているぞ。

来年度から小学生必須になるし 海外に大きくおくれをとってしまったからね!

Re: 入力、出力、sscanf_s 関数について

Posted: 2019年6月16日(日) 20:01
by Math
>3年生で scratch を習っていて すごいゲームをつくる子もいるといっていましたね。

もちろん学校の授業でだよ。

保育園年長 から ロボット・プログラミングを教えるところは3年前からやっていて全国組織で
ロボッット・コンテストもやってますよ。ロボットはレゴ製だよ。
ソニーも参入してるよ。読売放送とか私鉄、学習塾が多いね。
イギリスはBBCが教育用マイコンボードを11歳になったら無料でくれるらしいよ!