Pustaka Prompt
Pembuat fungsi
Membuat fungsi Python berdasarkan spesifikasi terperinci.
Salin prompt ini ke Console pengembang kami untuk mencobanya sendiri!
Konten | |
---|---|
System | Tugas Anda adalah membuat fungsi Python berdasarkan permintaan bahasa alami yang diberikan. Permintaan akan menjelaskan fungsionalitas yang diinginkan dari fungsi, termasuk parameter input dan nilai pengembalian yang diharapkan. Implementasikan fungsi sesuai dengan spesifikasi yang diberikan, memastikan bahwa mereka menangani kasus tepi, melakukan validasi yang diperlukan, dan mengikuti praktik terbaik untuk pemrograman Python. Harap sertakan komentar yang sesuai dalam kode untuk menjelaskan logika dan membantu pengembang lain dalam memahami implementasi. |
User | Saya ingin fungsi yang dapat memecahkan teka-teki Sudoku. Fungsi harus mengambil grid Sudoku 9x9 sebagai input, di mana sel kosong diwakili oleh nilai 0. Fungsi harus memecahkan teka-teki menggunakan algoritma backtracking dan mengembalikan grid yang terpecahkan. Jika teka-teki tidak dapat dipecahkan, fungsi harus mengembalikan None. Fungsi juga harus memvalidasi grid input untuk memastikan itu adalah teka-teki Sudoku yang valid. |
Contoh Output
Python
def solve_sudoku(grid):
def is_valid(row, col, num):
# Periksa apakah angka valid di baris dan kolom saat ini
for i in range(9):
if grid[row][i] == num or grid[i][col] == num:
return False
# Periksa apakah angka valid di subgrid 3x3 saat ini
start_row, start_col = (row // 3) * 3, (col // 3) * 3
for i in range(3):
for j in range(3):
if grid[start_row + i][start_col + j] == num:
return False
return True
def backtrack(row, col):
# Jika semua sel telah terisi, teka-teki terpecahkan
if row == 9:
return True
# Pindah ke baris berikutnya jika telah mencapai akhir baris saat ini
if col == 9:
return backtrack(row + 1, 0)
# Jika sel saat ini sudah terisi, pindah ke sel berikutnya
if grid[row][col] != 0:
return backtrack(row, col + 1)
# Coba mengisi sel saat ini dengan angka dari 1 hingga 9
for num in range(1, 10):
if is_valid(row, col, num):
grid[row][col] = num
if backtrack(row, col + 1):
return True
grid[row][col] = 0
# Jika tidak ditemukan angka yang valid, lakukan backtrack
return False
# Validasi grid input
if not all(len(row) == 9 and all(0 <= cell <= 9 for cell in row) for row in grid):
return None
# Mulai algoritma backtracking
if backtrack(0, 0):
return grid
else:
return None
Permintaan API
import anthropic
client = anthropic.Anthropic( # defaults to os.environ.get("ANTHROPIC_API_KEY")
api_key="my_api_key",
)
message = client.messages.create(
model="claude-3-opus-20240229",
max_tokens=1000,
temperature=0,
system="Tugas Anda adalah membuat fungsi Python berdasarkan permintaan bahasa alami yang diberikan. Permintaan akan menjelaskan fungsionalitas yang diinginkan dari fungsi, termasuk parameter input dan nilai pengembalian yang diharapkan. Implementasikan fungsi sesuai dengan spesifikasi yang diberikan, memastikan bahwa mereka menangani kasus tepi, melakukan validasi yang diperlukan, dan mengikuti praktik terbaik untuk pemrograman Python. Harap sertakan komentar yang sesuai dalam kode untuk menjelaskan logika dan membantu pengembang lain dalam memahami implementasi.",
messages=[
{
"role": "user",
"content": [
{
"type": "text",
"text": "Saya ingin fungsi yang dapat memecahkan teka-teki Sudoku. Fungsi harus mengambil grid Sudoku 9x9 sebagai input, di mana sel kosong diwakili oleh nilai 0. Fungsi harus memecahkan teka-teki menggunakan algoritma backtracking dan mengembalikan grid yang terpecahkan. Jika teka-teki tidak dapat dipecahkan, fungsi harus mengembalikan None. Fungsi juga harus memvalidasi grid input untuk memastikan itu adalah teka-teki Sudoku yang valid."
}
]
}
]
)
print(message.content)