미들
2026년 10월 4일

버그를 찾아라: Go

코드 한 조각. 버그를 찾거나, 버그가 없음을 증명하세요.

go
1package main
2
3import (
4	"encoding/json"
5	"net/http"
6)
7
8type Payment struct {
9	Amount float64 `json:"amount"`
10	UserID string  `json:"userId"`
11}
12
13func createPayment(w http.ResponseWriter, r *http.Request) {
14	var p Payment
15	if err := json.NewDecoder(r.Body).Decode(&p); err != nil {
16		http.Error(w, "invalid json", 400)
17		return
18	}
19	if err := chargeAccount(p.UserID, p.Amount); err != nil {
20		http.Error(w, "charge failed", 500)
21		return
22	}
23	w.WriteHeader(201)
24}
25

문제가 되는 줄을 클릭하세요.

당신의 판단

하루 한 번. 제출하면 바로 정답이 표시됩니다.

연속 기록 유지하기

계정을 만들면 연속 기록을 유지하고 진행 상황을 추적할 수 있습니다.

계정 만들기