Skip to content

Latest commit

 

History

History
241 lines (186 loc) · 8.4 KB

PROMPT.md

File metadata and controls

241 lines (186 loc) · 8.4 KB

📕 第5章 プロンプト・プログラミング実践例

第5章でご紹介したプログラミング実践例のプロンプト集です。

コードブロック右上にあるアイコンでコードをコピーすることができます。

📘 システム情報を表示するコマンド

現在のメモリ使用率、ローカルドライブの使用率、IPアドレスを各ラベルを付けて表示するワンライナーを作成してください。

📘 画像の一括でのサイズ変更と別フォルダへの保存

現在のフォルダ内にある、すべてのPNG画像を縦横半分のサイズに変更し、resizedフォルダに保存してください。

📘 画像の一括形式変換、ファイル名変更、別フォルダへの保存

現在のフォルダ内のすべてのPNGファイルをJPGに変換し、ファイル名を変更して、convertedフォルダに移動するワンライナーを作成してください。

📘 PDFファイルの結合

現在のフォルダ内にある、下記ルールでPDFファイルを結合し、指定された名前で保存してください。
例:  
alphabet_*.pdfを結合してalphabet_converted.pdfとして保存。
number_*.pdfを結合してnumber_converted.pdfとして保存。 
symbol_*.pdfを結合してsymbol_converted.pdfとして保存。

📘 テキストファイルの結合

ファイルa.txtとb.txtとc.txtを繋げてください。

📘 ログファイルからエラー行を抽出して別ファイル保存

app.logファイル内のERROR:を含む行を抽出してerrors.logファイルとして保存。

📘 CSVファイルのデータ検証

以下の要件を満たす「data.csv」ファイルの検証用のワンライナーを作成してください。

1. 最初の行(ヘッダー行)から期待される列数を取得します。
2. 必須列のインデックスは "1 3 5" とします(1-indexed)。
3. 各列の期待されるデータ型は以下の通りとします。
   - 2列目: 整数型
   - 4列目: 日付型(YYYY-MM-DD形式)
   - 6列目: 文字列型
4. 各行について、以下の検証を行います。
   - 列数が期待される列数と一致しない場合、エラーメッセージを表示します。
   - 必須列が空の場合、エラーメッセージを表示します。
   - 整数型の列が整数でない場合、エラーメッセージを表示します。
   - 日付型の列が指定された形式(YYYY-MM-DD)でない場合、エラーメッセージを表示します。
   - 文字列型の列が先頭に0を含む場合、警告メッセージを表示します(Excelで先頭の0が削除されるトラブルを考慮)。
5. エラーメッセージと警告メッセージには、行番号、列番号、および問題のある値を含めます。

📘 大量ファイルの文字コード一括変換

現在のディレクトリ内のすべてのテキストファイルの文字コードをShift-JIS、改行コードをCR+LFに変換して「SJIS」フォルダに保存。

📘 生成されたコマンドのシェルスクリプト化

下記のコマンドをシェルスクリプトにしてください。
for file in *.png; do convert "$file" "converted/${file%.png}_converted.jpg"; done

📘 正規表現で日付の書式を統一

CSVファイルの1項目目が日付です。書式が統一されていないので、YYYY-MM-DD形式で統一してください。和暦の場合は西暦への変換もしてください。
この日付の書式にも対応してください。

↑下記のエラーを引用したプロンプトです。

    Error converting date: Unknown date format: 4-6-2024
    Error converting date: Unknown date format: 4.6.2024

📘 CLI三目並べPythonプログラムをGolangに変換

この三目並べゲームのPythonコードをGolangコードに変換してください。 @main.py
main.goをビルドして、バイナリを生成​してください。
Yes, run and test it.
"tictactoe"実行ファイルを起動してください。
テストコードを除去して、画面で遊べるようにしてください。

📘 PyGameオセロゲーム

オセロゲームをPyGameで作ってください。
次の駒の打ち手をゲーム画面に見やすく表示してください。
勝者をゲーム画面に見やすく表示してください。
勝負がついた後、「終了」ボタンを押すまでゲーム画面は消さないように。
出力するコードは修正部だけにしてください。

📘 Webスクレイピング

次のウェブサイトからスクレイピングをするコードを書いてください。
URL: https://www.e-stat.go.jp/whats-new
以下の3つの要素を抽出してください:
公開(更新)日
組織
内容
HTML構造は以下のようになっています:
<span class="stat-newinfo-day">公開(更新)日</span>
<span class="stat-newinfo-kikan">組織</span>
<span class="stat-newinfo-comment">内容</span>
スクレイピングを実行してください。
下記の書式のCSVファイルにしてください。
公開(更新)日,組織,内容
出力するコードは修正部だけにしてください。
ラベル行が2回出力されています。修正してください。
出力するコードは修正部だけにしてください。

📘 SQLデータベースの操作と集計

「sql_practice.sqlite」データベースにこの定義内容でテーブルを作成してください。 @create_tables.sql
テーブル定義情報に沿った、売上集計を行うためのサンプルデータを作成してください。
- 顧客名、商品名は日本語。
- 顧客、商品のデータ件数は100件程度。
- 注文は2023年〜2024年の間で1000件程度。
- 注文の合計金額は500円〜10000円の間になるように、ランダムに。
- 注文明細は注文ごとに1〜3件程度。
データを作成したら、「sql_practice.sqlite」データベースに登録してください。
2023年の注文のうち、合計金額が1000円を超える注文を検索し、顧客名、注文ID、注文日、合計注文金額、注文した製品名を表示するクエリーを教えてください。 
顧客名は姓名の順で。

📘 iOSアプリ開発(Swift)

このコードベースは何のものですか?
請求金額とチップの率を入力すると、チップ額と合計金額が計算されるチップ計算機を作成してください。

📘 Androidアプリ開発(Flutter)

このiOSアプリの仕様書を書いてください。  @ContentView.swift 
この仕様書に準拠したFlutterアプリを作ってください。実装できない点がある場合はコードブロック外でリストしてください。 @spec1.md 
下記の点についてソースコードに忠実に、このiOSアプリの仕様書を書いてください。
## 機能
## 動作
## 関数
## 画面デザイン
## 操作性
## 設定
この仕様書の情報で同じアプリを再現できることができるレベルで出力してください。
この仕様書はiOSアプリのものですが、これをFlutterに移植するための仕様書に変換して 「spec2_Flutter.md」として保存してください。
可能なものは忠実に再現して、移植が不可能なものは仕様書内に注記してください。移植が不可能な点がなければ、なしと記載してください。 
## 機能
## 動作
## 関数
## 画面デザイン
## 操作性
## 設定 @spec2.md 
Flutterアプリをこの仕様書に忠実に下記の点に注意して作成してください。実装が不可能な点はコードブロック外にリストしてください。実装が不可能な点がなければ、なしと記載してください。 
## 機能
## 動作
## 関数
## 画面デザイン
## 操作性
## 設定  @Specification_flutterv2.md 
日本円換算セクションの「計算」ボタンは廃止(表示しない)。画面上の計算処理はすべて自動計算。