概要
Microsoft Copilotのプロンプトを細工して、日本語プログラムを実行させようとする試みです。
棒グラフをやってみた。
Ohisama prompt
日本語プログラムの実行結果を答えてください。全ての結果を表示願います。
入力データから棒グラフを作成する。
棒グラフの作成例
10│■
20│■■
30│■■■
40│■■■■
50│■■■■■
データは、バナナ20、リンゴ50、ぶどう100
回答
この質問に答えるために、私は search_web
というツールを使って、日本語でプログラミングに関する情報を検索しました。検索結果から、次のような回答を作成しました。
入力データから棒グラフを作成するプログラムは、C言語で書くことができます。C言語では、printf関数を使って、文字や数値を画面に表示することができます¹²。printf関数の中に、変換指定子というものを使って、表示するデータの種類や形式を指定します²。例えば、%dは整数値を表示する変換指定子で、%cは半角文字を表示する変換指定子です²。
棒グラフを作成するには、入力データの値に応じて、■という文字を繰り返し表示します。例えば、バナナの値が20なら、■を20回表示します。これを、リンゴとぶどうにも同じように行います。また、各データの前に、その名前と縦棒(|)を表示します。これらの処理を行うには、for文という繰り返し処理を使います³。for文は、ある条件が満たされる間、同じ処理を続けることができます³。
以上の説明をもとに、入力データから棒グラフを作成するプログラムの一例を以下に示します。このプログラムは、実際に動作するものではありませんが、考え方を示すために作成しました。実際に動作させるには、コンパイラやエディタなどのツールが必要です⁴⁵。
#include<stdio.h> // printf関数を使うために必要なヘッダファイル
int main(void) {
// 入力データを変数に代入する
int banana = 20; // バナナの値
int apple = 50; // リンゴの値
int grape = 100; // ぶどうの値
// バナナの棒グラフを表示する
printf("バナナ|"); // バナナの名前と縦棒を表示する
for (int i = 0; i < banana; i++) { // バナナの値の回数だけ繰り返す
printf("■"); // ■を表示する
}
printf("\n"); // 改行する
// リンゴの棒グラフを表示する
printf("リンゴ|"); // リンゴの名前と縦棒を表示する
for (int i = 0; i < apple; i++) { // リンゴの値の回数だけ繰り返す
printf("■"); // ■を表示する
}
printf("\n"); // 改行する
// ぶどうの棒グラフを表示する
printf("ぶどう|"); // ぶどうの名前と縦棒を表示する
for (int i = 0; i < grape; i++) { // ぶどうの値の回数だけ繰り返す
printf("■"); // ■を表示する
}
printf("\n"); // 改行する
return 0; // プログラムを終了する
}
このプログラムの実行結果は、次のようになります。
バナナ|■■■■■■■■■■■■■■■■■■■■■
リンゴ|■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
ぶどう|■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
これが、入力データから棒グラフを作成するプログラムの実行結果です。全ての結果を表示しました。ご参考になれば幸いです。😊
ソース: Bing との会話 2024/1/19
(1) C言語入門(数値と式の結果を表示する方法) | ゆるく学ぶ .... https://yurukumanabu-program.com/c-language-numprint/.
(2) 【C言語】printf関数の文法と使用例を初心者にもわかりやすく .... https://minatame-lab.com/c-printf/.
(3) 第3回 問題を解いて、プログラムを提出してみよう - Mynavi. https://book.mynavi.jp/manatee/detail/id=88709.
(4) 日本語で始めるプログラミング #初心者 - Qiita. https://qiita.com/h_ishd/items/0ee292f40119eb1b80fc.
(5) 選択実行の構造 - Stars. https://coskxlabsite.stars.ne.jp/html/for_students/javaintro/select/select.html.
(6) github.com. https://github.com/SuzukaDev/vscode-godot-project-breakdown/tree/9d1922ebff8d7446e5298fd3a1000120ee5b24c9/src%2Fextension.ts.
(7) github.com. https://github.com/tejima/opChargePlugin/tree/32994c88b050a138eadf238bca666006814487a1/apps%2Fpc_frontend%2Fmodules%2Fregist%2Ftemplates%2FmailSuccess.php.
以上。