Drill

ProblemsGo › network

Which HTTP status family does a code belong to

easynetworkMathGo

HTTP status codes are grouped by their hundreds digit: 2xx means success, 5xx means server trouble, and so on.

httpFamily(status: int) → int

Go needs a compiler and Drill does not host one yet, so this page is the reference rather than an exercise: the problem, worked examples, and the solution in full. To type it out, the same problem runs in Python.

Solve it in Python →

Where you start

func httpFamily(status int) int {
	
}

Worked examples

CallResult
httpFamily(200)2
httpFamily(404)4
httpFamily(503)5
httpFamily(100)1

Hint

Divide by 100 and check the result.

Reference solution in Go
func httpFamily(status int) int {
	if status >= 100 && status <= 199 {
		return 1
	}
	if status >= 200 && status <= 299 {
		return 2
	}
	if status >= 300 && status <= 399 {
		return 3
	}
	if status >= 400 && status <= 499 {
		return 4
	}
	if status >= 500 && status <= 599 {
		return 5
	}
	return 0
}

The same problem in another language

More network problems in Go