実験的にChatGPTにプログラミングの問題を解かせてみました。
言語はPython、C#、Arduinoの3つで試してみました。
与えるのは簡単な問題ですが、結果としてはこれら3つの言語で所望のソースコードを記述することができました。
今回はプログラムを授業で扱っている学校の在り方について考えさせられました。
テストの点数や単位を取るだけであればChatGPTである程度は理想的な回答を得ることが可能と思われます。
職場等でプログラミングを検討する立場の方にもChatGPTは強力なサポートツールとなるでしょう。
ChatGPTの使い方についてはこちらの記事を参考にしてください。
Pythonで解かせてみる
「Pythonで1から100までの数字を順番に表示するプログラムを作成して」
という内容をChatGPTに入力してみます。
全文としては次のような応答がありました。
以下のように記述します:
for i in range(1,101):
print(i)
また、「1から100までの数字を順番に表示する」という要件だけであれば、以下のようにも書けます。
print(*range(1,101))
ただし、これはPython3.x系であることが前提です。
Pythonのfor文を使って1から100までの数字を順番に表示するプログラムが作成されました。
Pythonの特徴であるインデントも問題なく入れられています。
Python3を使った場合のさらに簡略化した書き方まで紹介するという親切な内容です。
ソースコード部分は別途テキストボックスに分けて記述され、コピーボタンもついているので手軽にコピペすることもできます。
実際に試してみたい方は、Pythonのプログラミング環境のインストール方法についてこちらの記事で解説しています。
Linux環境で学習したい方はこちらから
\未経験でも”AI”を基礎から学べる Python特化型プログラミングスクール/
C#で解かせてみる
「C#で1から100までの数字を順番に表示するプログラムを作成して」
という内容をChatGPTに入力してみます。
全文としては次のような応答がありました。
以下のようなプログラムを作成することができます。
for (int i = 1; i <= 100; i++)
{
Console.WriteLine(i);
}
または、whileループを使用して以下のように書くこともできます。
int i = 1;
while (i <= 100)
{
Console.WriteLine(i);
i++;
}
これらのプログラムは、1から100までの数字を順番に表示するために使用できます。
こちらはfor文に加えてwhile文で書く場合も表示されました。
実際に試してみたい方は、C#のプログラミング環境のインストール方法についてこちらの記事で解説しています。
Arduinoで解かせてみる
「Arduinoで1から100までの数字を順番に表示するプログラムを作成して」
という内容をChatGPTに入力してみます。
全文としては次のような応答がありました。
以下のようなプログラムで可能です。
void setup() {
// シリアル通信の初期化
Serial.begin(9600);
}
void loop() {
// 1から100までの数字を順番に表示
for (int i = 1; i <= 100; i++) {
Serial.println(i);
delay(1000); // 1秒ごとに表示
}
}
このプログラムでは、setup関数でシリアル通信を初期化し、loop関数で1から100までの数字を順番に表示します。表示するたびにdelay関数を使って1秒のウェイトを入れています。
Arduinoは標準出力がないのでさすがに無理かと思っていましたが、シリアル通信を使った方法が提示されました。
受信するシリアルコンソール側の通信設定は行う必要はありますが、問題なく結果は出力されます。
今回はコメント文も記述されており、さらにわかりやすいです。
delayを入れて1秒毎に結果が表示されるという解説まで記述されています。
実際に試してみたい方は、Arduinoのプログラミング環境のインストール方法についてこちらの記事で解説しています。
Arduinoをお持ちでない場合は、こちらのシミュレータでも確認できます。
\無料で受けられる回路設計講座/
逆にソースコードを丸投げして解説してもらう
「他人の書いたソースコードが読みにくい、わからん」といったときはソースコードをChatGPTへ丸投げして解説してもらうことも出来ます。
また、ChatGPTにプログラムの改善点等を指摘してもらうことも出来るので、デバッガとしても重宝されます。
コメント
コメント一覧 (2件)
天呐,我是怎么从搜索引擎翻出这个网站的,内容甚至和我的语言不匹配
god how did the search engine show this website to me,im even not a Japanese speaker
but the articles r pretty good 🙂
感谢您的评论。由于自动翻译功能的进步,许多说不同语言的读者也能阅读我的文章,这让我感到非常高兴。今后我会继续努力写出好的文章,希望您能继续关注
Thank you for your comment. I am delighted that the advancement of automatic translation features allows readers who speak various languages to read my articles. I will continue to work hard to write good articles, so please keep following!