【ChatGPT】AIにプログラミングの問題を解かせてみた

実験的にChatGPTにプログラミングの問題を解かせてみました。

言語はPython、C#、Arduinoの3つで試してみました。
与えるのは簡単な問題ですが、結果としてはこれら3つの言語で所望のソースコードを記述することができました。

今回はプログラムを授業で扱っている学校の在り方について考えさせられました。
テストの点数や単位を取るだけであればChatGPTである程度は理想的な回答を得ることが可能と思われます。
職場等でプログラミングを検討する立場の方にもChatGPTは強力なサポートツールとなるでしょう。

ChatGPTの使い方についてはこちらの記事を参考にしてください。

あわせて読みたい
【AI】ChatGPTの始め方(日本語、スマホ対応) ChatGPTの使い方について解説します。作業時間5分程度で使うことができます。PC、スマートフォン、iPad等のタブレット端末でも利用可能です。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のプログラミング環境のインストール方法についてこちらの記事で解説しています。

あわせて読みたい
【Windows】Pythonのインストール手順 Windows11にPython(パイソン)をインストールする手順を解説します。 作業時間は15分程度です。 インストール環境 参考までに今回インストールした環境は次の通りです。 ...

Linux環境で学習したい方はこちらから

あわせて読みたい
【初心者向け】Windows上でLinuxをインストールして使う方法【仮想マシンVirtualBox】 Windows上でVirtualBoxを使ってLinuxを動作させる手順について解説します。 次の動画は実際にWindows上でVirtualBoxを使って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#のプログラミング環境のインストール方法についてこちらの記事で解説しています。

あわせて読みたい
【初心者向け】Visual Studio 2022を無料インストールする手順 Microsoftは11月8日、統合開発環境『Visual Studio 2022』正式版をリリースしました。 今回は2021年11月現在で最新版となるVisual Studio 2022のインストール方法を解説...

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 IDE 2.0(日本語)インストール手順【無料開発環境】 Arduino IDE 2.0のインストール手順、日本語等の初期設定、サンプルプログラムの書き込み手順までを解説します。作業時間は10分程度です。 Arduino IDEはArduinoにプロ...

Arduinoをお持ちでない場合は、こちらのシミュレータでも確認できます。

あわせて読みたい
【インストール不要】無料のArduinoシミュレータの使い方【TinkerCAD】 ブラウザ上で動作する無料のArduinoシミュレータについて解説します。今回ご紹介するArduinoシミュレータは『TinkerCAD(ティンカーキャド)』上で動作します。 TinkerCAD...

無料で受けられる回路設計講座/

逆にソースコードを丸投げして解説してもらう

「他人の書いたソースコードが読みにくい、わからん」といったときはソースコードをChatGPTへ丸投げして解説してもらうことも出来ます。
また、ChatGPTにプログラムの改善点等を指摘してもらうことも出来るので、デバッガとしても重宝されます。

あわせて読みたい
【ChatGPT】AIにプログラムを解説・指導してもらった 「他人の書いたソースコードが読みにくい、わからん」といった経験はないでしょうか。「前日に自分が作成したプログラムすらわからん」ということもあるかと思います。...
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメント一覧 (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!

コメントする

CAPTCHA


目次