書籍概要

ビジネスのためのChatGPT活用ガイド

著者
発売日
更新日

概要

ChatGPT入門書の新定番!

ビジネスに活用するためのChatGPTの入門書です。ChatGPTやLLMの概要,ChatGPTの使い方,プロンプトエンジニアリング,ChatGPTを組み込んだシステム開発,セキュリティやプライバシーなどの注意点などを解説します。

実際にどうやれば自分たちの業務にChatGPTを活かせるかを,図なども交えて,ビジネスパーソンの方が読みやすいようにまとめています。日々のExcelや文書作成にChatGPTを活用する方法から,生成AIシステムを社内に導入する方法までChatGPT×ビジネスのすべてがわかります。システム開発の部分は概要を伝えるため,ITエンジニアではない方でも楽しめます。

こんな方におすすめ

  • ChatGPTをビジネスで活用したい方
  • ChatGPTで自動化など業務効率化をしたい方
  • ChatGPTに何ができるか知りたい方

サンプル

samplesamplesamplesamplesample

目次

第1章 ChatGPTをはじめよう

  • 1-1 そもそも生成AIとは?
  • 1-2 文章生成AIの仕組みとは?
  • 1-3 ChatGPTとは
    • Column OpenAI
    • Column 人間と金魚
  • 1-4 ChatGPTが世界に与えるインパクト
  • 1-5 ChatGPTが苦手なこと
  • 1-6 ChatGPTが得意なこと
    • Column AGIは徐々にやってくる
  • 1-7 ChatGPTを実際に使いはじめる
    • Column ChatGPTのアプリ
    • Column ChatGPTで利用したデータは学習されるのか?
    • Column ChatGPTのモデル
  • 1-8 ChatGPTでできることを理解しよう
    • Column ChatGPTのAPIを利用する
  • 1-9 まとめ
    • Column まずは使い倒すことが重要

第2章 はじめてのプロンプト

  • 2-1 AIの性能を引き出すプロンプトとは?
  • 2-2 Excelを使いこなすプロンプト
    • Column Excelから表を貼り付ける
    • Column 表計算ソフトの関数をChatGPTに作ってもらうための考え方
  • 2-3 ビジネスを加速させるプロンプト
    • Column その他参考となるビジネスフレームワーク
    • Column PDFやWordを確認してもらう
    • Column 大量のデータを一度に与えると,ChatGPTはサボる?
  • 2-4 知識ゼロからプログラミングのプロンプト
  • 2-5 まとめ
    • Column GPTを作ってみよう
    • Column ChatGPT以外の文章生成AIサービス
    • Column プロンプトにおける複数行の入力

第3章 プロンプトエンジニアリングでChatGPTの能力を引き出す

  • 3-1 プロンプトエンジニアリングとは
  • 3-2 情報を明確にする
  • 3-3 構成を明確にする
  • 3-4 出力サンプルを提示する
  • 3-5 カスタム指示を利用する
    • Column システムプロンプトが全てのモデルにあるわけではない
  • 3-6 質問を返させて詳細を決めていく
  • 3-7 思考の進め方を指示する
  • 3-8 事実に基づいた回答をさせる
    • Column Learningに注意
  • 3-9 プロンプトエンジニアリング,どれを使うか
  • 3-10 プロンプトエンジニアリングでうまくいかないとき
  • 3-11 やらなくて良いこと・大きく変わらないこと
  • 3-12 作業効率化のための工夫
  • 3-13 プロンプトの注意点
    • Column 出力トークンと処理時間
  • 3-14 まとめ
    • Column その他のプロンプトエンジニアリング手法
    • Column APIのパラメーターを設定する

第4章 企業における生成AIの活用ステップ

  • 4-1 ステップ1: 生成AIの浸透
    • Column 生成AIへの取り組みを推進する企業
    • Column 実証実験の成功事例
    • Column AI-Starter 生成AI環境構築サービス
  • 4-2 ステップ2: 社内業務改善
  • 4-3 ステップ3: 新サービスの開発
  • 4-4 技術トレンド
  • 4-5 まとめ
    • Column データを学習に利用させない

第5章 ChatGPTを使う上での注意点

  • 5-1 情報漏洩
    • Column GPTsの場合
  • 5-2 APIの課金額
    • Column ChatGPTの価格は今後変わりうる
  • 5-3 ハルシネーション
    • Column ハルシネーションの定義
  • 5-4 プロンプトインジェクション
    • Column 敵対的プロンプトの脅威

サポート

補足情報

コピペで使えるプロンプト集

(2024年8月27日更新)

第2章で紹介したプロンプトをコピペで使えるように配布します。URLを参照してやりとりの一覧を確認できます。プロンプトはコピーできます。

ExcelやGoogleスプレッドシートで曜日を取得する関数を作成する(2-2)

URL:https://chatgpt.com/share/77155c53-1a0f-4c66-a5c5-522a09f95c75

# 役割
あなたはGoogleSheetやExcelなどの表計算ソフトの専門家です。

# タスク
- # 入力の情報をもとにGoogleSheetの関数を作成してください。
- 関数を作成した後に想定した表示例をシート形式で必ず出力してください。
- 初心者でも分かるように概要の説明を行ってください。
- # 参考には実際に処理を行いたい対象のデータの抜粋が記載されています。

—--
# 入力
"""
[スケジュール]というシートに記載された日付のデータがあります。
曜日の行に正しい曜日を入力したいです。
"""

# 参考
| 日付  | 10/1 | 10/2 | 10/3 | 10/4 | 10/5 | 10/6 | 10/7 | 10/8 | 10/9 | 10/10 | 10/11 | 10/12 | 10/13 | 10/14 | 10/15 |
|------|------|------|------|------|------|------|------|------|------|-------|-------|-------|-------|-------|-------|
| 曜日 |      |      |      |      |      |      |      |      |      |       |       |       |       |       |       |
ExcelやGoogleスプレッドシートでVLOOKUPを使う(2-2)

URL:https://chatgpt.com/share/b43b9e85-f0cd-47fb-963b-36fa242fb5bf

# 役割
あなたはGoogleSheetやExcelなどの表計算ソフトの専門家です。

# タスク
- # 入力の情報をもとにGoogleSheetの関数を作成してください。
- 関数を作成した後に想定した表示例をシート形式で必ず出力してください。
- 初心者でも分かるように概要の説明を行ってください。
- # 参考には実際に処理を行いたい対象のデータの抜粋が記載されています。
- より効率的なパフォーマンスで保守性に優れた関数を作成してください。
- 利用するべき関数をコピー・アンド・ペーストで利用ができるように、コードブロックとして出力してください。

—--
# 入力
"""
[注文履歴]というシートに記載された[商品ID]というデータがあります。
[商品情報シートA列の商品IDをもとに検索]を行って、[商品情報シートB列の商品名とC列の価格を注文履歴シートに追加したい]です。


"""
# 参考
[注文履歴シート]

| 注文ID | 商品ID | 数量 |
| --- | --- | --- |
| A001 | 1001 | 2 |
| A002 | 1003 | 5 |
| A003 | 1005 | 3 |
| A004 | 1002 | 1 |

[商品情報]

| 商品ID | 商品名 | 価格 |
| --- | --- | --- |
| 1001 | ノートPC | ¥100,000 |
| 1002 | スマートフォン | ¥50,000 |
| 1003 | イヤホン | ¥5,000 |
| 1004 | キーボード | ¥3,000 |
| 1005 | マウス | ¥2,000 |
ExcelやGoogleスプレッドシートでIFを使う(2-2)

URL:https://chatgpt.com/share/d343eebe-0063-42cd-9d19-e86cbb1e09ca

# 役割

あなたはGoogleSheetやExcelなどの表計算ソフトの専門家です。

# タスク

- # 入力の情報をもとにGoogleSheetの関数を作成してください。
- 関数を作成した後に想定した表示例をシート形式で必ず出力してください。
- 初心者でも分かるように概要の説明を行ってください。
- # 参考には実際に処理を行いたい対象のデータの抜粋が記載されています。
- より効率的なパフォーマンスで保守性に優れた関数を作成してください。
-  利用するべき関数をコピー・アンド・ペーストで利用ができるように、コードブロックとして出力してください。

----
# 入力
""" 
[**売上履歴**]というシートに記載された[今月の売上が記載された]というデータがあります。
[B列の売上高が50万円以上のデータ]に対して、[C列に50万円以上]と表示してください。
"""

# 参考
[売上履歴]
| 日付       | 売上高 |
| ---------- | ------ |
| 2023-10-01 | 50万円 |
| 2023-10-02 | 30万円 |
| 2023-10-03 | 62万円 |
| 2023-10-04 | 45万円 |
| 2023-10-05 | 55万円 |
| 2023-10-06 | 70万円 |
| 2023-10-07 | 12万円 |
| 2023-10-08 | 40万円 |
| 2023-10-09 | 27万円 |
| 2023-10-10 | 33万円 |
ChatGPTにコピーライターとしてふるまってもらう(2-3)

URL:https://chatgpt.com/share/5fddc0dc-9d00-4e8a-9f1c-cf484bac0d02

# 役割
- あなたは最高のコピーライターとしてふるまってください。
- あなたは最高のコピーライターとして、キャッチコピーを出力します。
- キャンペーンの内容は「和歌山県に観光客を誘致するための観光キャンペーン」です。

# タスク 1
- 和歌山県に20代の観光客が訪れたくなるようなキャッチコピーを10個出力してください
- 文字数は15文字以上、25文字以内である必要があります。
- # アピールポイントに記載がある内容のいずれかが伝わるキャッチコピーにしてください
- キャッチコピーのトーンはノスタルジーを感じるキャッチコピーである必要があります
- 質問者である私にどのキャッチコピーを使って、# タスク 2を実行するか質問してください。

# タスク 2
- # タスク 1で選択したキャッチコピーに追加する訴求文章を150文字程度で作成してください。このキャッチコピーにある背景のストーリーを対象者に伝えるための文章です。

# アピールポイント
- 豊富な自然
- 大阪からのアクセスの良さ
- 美味しい海の幸
ChatGPTに翻訳家として振る舞ってもらう(2-3)

URL:https://chatgpt.com/share/205a6224-a0e9-489f-91d6-02736e2b5aae

# 役割
あなたは最高の翻訳家としてふるまってください。

# タスク
- #入力として与えられた文章を理解してください。
- #入力に記載された文章を#言語に翻訳してください。
- 言語の翻訳を行う際には、母語話者が利用するような自然な言葉を利用してください。
-文脈を考慮して、翻訳するうえでより自然な表現にするために必要であれば意訳を行ってください。

# 言語
- 日本語

# 入力
"""
FYI, had a quick sync with the marketing team. They're GTG on the Q3 campaign. Will send over the final deck EOD. LMK if you need anything else.
"""
ChatGPTにリスク評価を行ってもらう(2-3)

URL:https://chatgpt.com/share/45092987-7cc0-46d2-8af6-0fd073264cb4

# 役割
- あなたは最高の法律の専門家としてふるまいます。
- 入力される文章が日本の法令や規制に接触する可能性があるかの評価を行うことがあなたの役割です

# タスク
- 入力された文章が、# 考慮するべき法律や規制の観点から問題がないかを評価してください
- 評価を行う際には10段階で評価を行ってください。1は最もリスクが低く、10は最もリスクが高いとして評価してください。
- 同等のリスクを含む文章を「同等のリスクを含む文章サンプル」として3つ出力してください。
- 入力された文章に問題点があれば指摘を行い、代替となる文章を3つ提案してください。
- 順序立ててステップバイステップで考えてください

# 考慮するべき法律や規制
- 景品表示法
- 家庭用品品質表示法
- 薬事法
- 医薬品医療機器等法
- 医薬品等適正広告基準
- 不当景品類及び不当表示防止法
- 化粧品の表示に関する公正競争規約等
- 化粧品等の適正広告ガイドライン
- 食品衛生法
- 公正競争規約


# 入力
"""
飲むだけで病気が治ったオレンジジュース
"""
ChatGPTにペルソナ作成を行ってもらう(2-3)

URL:https://chatgpt.com/share/64c01a34-6190-4af1-bf4b-2ad17c9a75bd

# 役割
- 最高のビジネスコンサルタントとして振る舞う
- 初期段階のペルソナ構築を支援する

# 前提
- 具体的なユーザーインタビューやデータがない状態でのペルソナ作成
- 日本のユーザーに対して提供する商品

# テーマ
- 新たに開発する「ご当地入浴剤」のペルソナ構築

# タスク 1
- 仮定されるターゲットユーザーの詳細なペルソナを作成する
- 出力するペルソナには、 # アウトプット項目 の内容を必ず含める
- 想定されるユーザーの特性、行動、ニーズ、メディア利用傾向について記述する

# タスク 2
- # タスク 1で作成されたペルソナに対して、効果的と考えられるマーケティング戦略を出力してください。
- # タスク 1で作成されたペルソナに対して、効果的と考えられる商品コンセプトを3つ出力してください。
- マーケティングチャネルや効果的な訴求要素について出力してください。


# アウトプット項目
- ペルソナの基本情報(氏名、年齢、性別、職業、居住地、教育水準、所得層)
- ライフスタイル(趣味、興味、家族構成、生活習慣)
- 購買行動(購入決定プロセス、ブランドに対する忠誠度、購入頻度)
- オンライン行動(好んで訪れるウェブサイト、SNSの利用状況、オンラインショッピングの傾向)
- ニーズと課題(求める製品特性、解決したい問題、製品選択時の考慮点)
- 心理的特性(価値観、信念、購買動機、製品に対する感情や態度)
- メディア利用傾向(主要な情報源、反応するマーケティングメッセージの種類)
ChatGPTにコンサルタントとしてビジネスフレームワークで検討してもらう(2-3)

URL:https://chatgpt.com/share/4525f92e-57ef-4b79-b072-5b1537411f83

# 役割
- あなたは最高のビジネスコンサルタントとしてふるまってください
- # フレームワークに記載のあるフレームワークを利用して回答を出力してください。
- 質問者である私の質問に対して、最高の答えを出力する必要があります。

# フレームワーク
- リーンキャンバス

# タスク1
- 質問の内容を理解して、概要を解説してください。
- より良い回答を出力するために、追加で必要な情報があれば必ず質問してください。
- ユーザーからの回答を待ってください。

# タスク2
- ユーザーの質問に対する最高の答えを# フレームワークを利用して出力してください。
- 答えを出力する際には、質問者に対して今後実施するべき事項のアドバイスを必ず行ってください


# 入力
"""
都会のオフィスビルで休日にキャンプ体験ができるビジネスを考えています。土日でオフィスが休みの時間に来客用スペースを利用します。検討の初期段階であるため、様々な観点からアドバイスをしてください。
"""
ビジネスメールをレビューしてもらい改善する(2-3)

URL:https://chatgpt.com/share/735f869f-c9be-4c22-ab16-49fbd4775178

# 前提
- 以下の文章はお客様に送付するメールの文章です
- お客様に初回のアポを依頼するための文章です。

# 役割
- あなたは最高のビジネスパーソンとして、メールの内容を推敲してください。
- 日本話話者が利用するような自然な言葉を利用してください。
- なぜ、修正するべきかの理由とともに修正するべき点を明確に質問者である私に伝えてください。
- 出力には、修正するべき点と修正点を反映させた最高のビジネスメールを出力してください

"""
山田様

お世話になっております、株式会社〇〇の岩手です。
先日は弊社実施のセミナーにご参加いただきありがとうございました。

セミナーの内容が貴社での生成AI活用に向けたご参考になれば幸いです。
貴社のような製造業の企業における生成AIを活用した業務効率化の事例や今後の活用方針について、是非一度ご紹介の機会をいただきたく、ご連絡いたしました。

お忙しいと存じますが、一度ミーティングのお時間をいただけますでしょうか?
以下にて候補日時をお送りいたします。ご確認いただけると幸いです。

- 2/1
10:00 ~ 12:00
- 2/2
13:00 ~ 15:00


上記、ご確認いただけると幸いです。
引き続き、よろしくお願いいたします。

クラスメソッド
岩手

"""
記事を校正してもらう(2-3)

URL:https://chatgpt.com/share/9a85f353-9070-4b7b-96eb-f6cde78b218f

# 前提
- 以下はWebサイトに公開する記事です。
- 記事の内容はChatGPTの請求を組織で管理するためのやり方についての記事です。
- マークダウンで執筆しており、出力もマークダウン形式で出力する必要があります。

# 役割
- あなたは最高の編集者として、記事の内容を推敲してください。
- 修正するべき点は不明確な表現やタイプミス、日本語としての誤りなどを指摘する必要があります。
- 日本話話者が利用するような自然な言葉を利用してください。
- なぜ、修正するべきかの理由とともに修正するべき点を明確に質問者である私に伝えてください。
- 出力には、修正するべき点の指摘のみを出力してください。

"""
# OpenAIのアカウントを組織で管理したいときのやり方

企業や組織の中で、ChatGPTのアカウントを組織的に管理したいときにどのように行えば実現できるかについて調べてみたので記事に残しておきたいと思います。

## OpenAI Organization機能とは?

OpenAIのアカウントを組織的に管理するためには、Organization機能を利用します。

公式ドキュメントとしてはコチラに記載があるので、興味がある方は読んでみてください。端的に言うと、APIの利用料をまとめて請求できるようになる機能です。

APIの利用料としては、gpt-3.5やgpt-4のAPIなどのチャット機能に関連するものだけでなく、音声認識(Whisper)や画像生成(DALL-E2)も含まれます。

一方で、WebのUIから利用するChatGPTのPlusアカウントの請求をまとめて行うことは現状できないようです(もし、実施方法をご存知の方がいたら教えてください)。

### ChatGPTのアカウントを組織で管理するとなにが嬉しいのか?

請求をひとまとめにして管理できるところと組織単位で上限を設定できることがメリットです。

請求をまとめて管理するという点では、組織として設定したクレジットカード情報に対して、組織に所属するメンバーの料金をまとめて請求することができます。

会社負担でメンバーの方が利用するときなどに各個人で経費精算を行うことは大変なので、まとめて請求ができるOrganization機能を使うと良いですね。

さらに、月の利用料の上限設定ができるため、使いすぎ対策としても安心です。

メンバーの権限としては、Owner(請求情報の管理ができる)とReader(参加するメンバー)の2つがあります。
必要な方のみに支払い情報を提供できるのも嬉しいポイントですね。

### 組織で管理するにはどうすればいいの?

[コチラのページ](https://platform.openai.com/account/org-settings) から設定を行うことができます。特に事前の申請などは不要です。

サイドバーを見ると分かるように、請求情報やメンバー追加の管理もできます。

メンバーの招待も非常に簡単で「Members」のタブから実施が可能です。招待されたメンバーにはメールが届くため、そのメールから承認を行うと組織に参加できます。

## 一人が複数の組織に所属する場合、どっちの組織に請求がされるの?

公式ドキュメントによるとAPIリクエストのHeader部分に組織ID(organizaiton ID)を指定することで、請求先を管理できるようです。

ただ、こちらについては珍しいケースだと思うので、検証していません。

## まとめ

組織に導入するうえで請求をひとまとめにできることは嬉しいですね。是非、組織内で活用を検討している方は試してみてください!

## ついでに宣伝

クラスメソッド株式会社では、OpenAI/ChatGPTコンサルティング支援を行っています。お打ち合わせの際には90%ほどの確率で私も出現しますので、是非、お気軽にお問い合わせください。

"""
AIにアイデアを連続で生成してもらう(2-3)

URL:https://chatgpt.com/share/90b3423f-f2e4-4248-81f1-fa91259e03b2

# 役割
- あなたは最高のクリエイターで、最高のアイデアを出す専門家です。
- #入力として与えられる内容をもとに最高のアイデアを出力してください。

# タスク
- #入力 に記載のある内容に対するアイデアを10個出力してください。
- 過去の出力と重複する内容は許されません。必ず新しいアイデアを出力してください。

# 入力
- 生成AIの活用シーン
ChatGPTによるデータ可視化(2-3)

URL:https://chatgpt.com/share/96187d09-f245-4157-941c-23fced781816

# 役割
あなたは最高のデータサイエンティストとしてふるまってください。

# タスク1
- データの内容を理解して、概要を解説してください。
- 与えられたデータをグラフにして、可視化する必要があります。
-  与えられたデータを可視化するにあたり、データの内容から最適なグラフ形式を選択してください。
- 横軸になるデータと縦軸になるデータを選択してください

# タスク2
- ユーザーに対して、# タスク1で実施した概要を説明してください。
- ユーザーに対して、このまま後続のタスクである#タスク3 を実施するか許可を得てください。
- 許可があった場合は、与えられたデータをグラフにして可視化してください。
- 可視化したデータをもとにした最高のインサイトを3つユーザーに対して提示してください。
Google Apps Scriptのプログラムを生成する(2-4)

URL:https://chatgpt.com/share/297624bf-0aea-4d19-a815-e74e56ac894b

# 役割
あなたは最高のプログラマーでありエンジニアです。

# タスク
以下の要件に基づいたプログラムをGoogle App Scriptで作成してください。
- プログラムを作成する際には、効率的であり、保守性が高いこと、可読性が高いこと、セキュリティ的に問題がないことを確認してから実装を行ってください。
- プログラムを作成した後には、具体的に概要の説明を分かりやすく行ってください。

"""
# 要件
- A列の1行目から10行目に100から1000のランダムな数値を入力する
- B列の1行目から10行目に1から10のランダムな数値を入力する
- C列に各行の合計した値を入力する関数を作成する
"""
プログラムのエラーを修正する(2-4)

URL:https://chatgpt.com/share/692be4fe-7345-471c-97ed-4d9fb2232482

# 役割
あなたは最高のプログラマーでありエンジニアです。

# タスク
- # 入力として与えられたプログラムを確認し、エラーを解決してください。
- エラーを修正する際には、効率的であり、保守性が高いこと、可読性が高いこと、セキュリティ的に問題がないことを確認してから実装を行ってください。
- 修正内容の概要の説明を分かりやすく行ってください。
- 修正以外の内容で、開発者である私に有益である可能性がある関連情報があれば必ず伝えてください。

"""
# 入力
function fillSpreadsheet() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  for (var i = 1; i <= 10; i++) {
    // A列に100から1000のランダムな数値を入力
    var randomNumberA = Math.floor(Math.random() * 901) + 100;
    sheet.getRange(i, 1).setValue(randomNumberA);

    // B列に1から10のランダムな数値を入力
    var randomNumberB = Math.floor(Math.random() * 100);
    sheet.getRange(i, 2).setValue(randomNumberB);
  }
  // C列に合計値を計算する関数を設定
  sheet.getRange("C1:C10").setFormula("=A1:B10");
}

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('Custom Scripts')
      .addItem('Fill Spreadsheet', 'fillSpreadsheet')
      .addToUi();
}

"""
プログラミングをリファクタリング・改善する(2−4)

URL:https://chatgpt.com/share/954b9727-ad31-41f2-b6e0-2cd0bcc296dd

# 役割
あなたは最高のプログラマーでありエンジニアです。

# タスク
- 入力として与えられたプログラムを確認し、レビューを行なってください。
- 最高のプログラムを出力するために、リファクタリングを行う必要があります。
- リファクタリングを行う際には、効率的であり、保守性が高いこと、可読性が高いこと、セキュリティ的に問題がないことを確認してから実装を行ってください。
- 修正内容の概要の説明を分かりやすく行ってください。
- 修正以外の内容で、開発者である私に有益である可能性がある関連情報があれば必ず伝えてください。
- コードを出力する際には第三者が初めて見ても理解ができるように、必ずコードにコメントを追加してください。

"""
function fillSpreadsheet() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = []; // データを格納するための配列

  for (var i = 0; i < 10; i++) {
    var randomNumberA = Math.floor(Math.random() * 901) + 100; // A列: 100から1000のランダムな数値
    var randomNumberB = Math.floor(Math.random() * 10) + 1; // B列: 1から10のランダムな数値

    // 行ごとのデータ(A列とB列の値)を配列に追加
    data.push([randomNumberA, randomNumberB]);
  }

  // A列とB列にデータを一括設定
  sheet.getRange(1, 1, 10, 2).setValues(data);

  // C列に合計式を設定
  for (var i = 1; i <= 10; i++) {
    sheet.getRange(i, 3).setFormula("=A" + i + "+B" + i);
  }
}

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('Custom Scripts')
      .addItem('Fill Spreadsheet', 'fillSpreadsheet')
      .addToUi();
}

"""
複雑なFizzBuzzのコードを生成する(2-4で利用するコードの生成)

URL:https://chatgpt.com/share/f9dc9c8f-d018-4011-9541-39d79e4b859d

めちゃくちゃ複雑なfizzbuzzのコードをGASで書いて

"""
ChatGPTからの返答
"""

悪いコードの例として利用したいため、もっと理解しにくいようにしてください。
プログラムの改善提案を行ってもらう(2−4)

URL:https://chatgpt.com/share/c42e08a3-25cc-4e75-869d-7a86467f1f62

# 役割
あなたは最高のプログラマーでありエンジニアです。

# タスク
- 入力として与えられたプログラムの解説を行ってください。
- 説明を受ける人が内容を理解できるように、何を目的として作成されたプログラムであるかの解説を行ってください。
- プログラムの目的を行ったあとには、全体像としてどのような流れでプログラムが実行されているかの全体像を解説してください。
- 全体像の解説を行ったあとに、個別の処理についての解説を行ってください。
- 解説対象のプログラムに問題が含まれる場合、その点を確実に指摘してください。- 修正内容の概要の説明を分かりやすく行ってください。
- 開発者である私に有益である可能性がある関連情報があれば必ず伝えてください。
- コードを出力する際には第三者が初めて見ても理解ができるように、必ずコードにコメントを追加してください。

"""
function a(b) {
  for (let c = 1; c <= b; c++) {
    let d = '';
    let e = (x) => x.toString().includes('3');
    let f = (x, y) => x % y === 0;

    d += e(c) ? 'Fizz' : ((f(c, 3) ? 'Fizz' : '') + (f(c, 5) ? 'Buzz' : '') + (f(c, 7) ? 'Whizz' : ''));
    let g = h(c);
    let i = j(c);
    d += g ? '*' : '';
    d += i ? '#' : '';

    console.log(d || c);
  }
}

function h(k) {
  return k % 2 === 0;
}

function j(k) {
  let l = 0;
  for (let m = 0; m < k; m++) {
    l += m % 2 === 0 ? 1 : -1;
  }
  return l % 2 !== 0;
}

a(15);

"""

商品一覧