From 95f49936aef730113f768190ff7fd8baef8fb6ad Mon Sep 17 00:00:00 2001 From: terminaldweller Date: Mon, 25 Jul 2022 09:10:50 +0430 Subject: updates --- 7/go.mod | 3 +++ 7/main.go | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 7/go.mod create mode 100644 7/main.go (limited to '7') diff --git a/7/go.mod b/7/go.mod new file mode 100644 index 0000000..b924aab --- /dev/null +++ b/7/go.mod @@ -0,0 +1,3 @@ +module 7 + +go 1.17 diff --git a/7/main.go b/7/main.go new file mode 100644 index 0000000..7bf96b8 --- /dev/null +++ b/7/main.go @@ -0,0 +1,33 @@ +package main + +import "fmt" + +func reverse(x int) int { + var res int + var negative bool + if x < 0 { + negative = true + x = x * -1 + } + for x > 0 { + digit := x - ((x / 10) * 10) + res = res*10 + digit + if res > (0x1 << 31) { + return 0 + } + x = x / 10 + } + + if negative { + return res * -1 + } + return res +} + +func main() { + fmt.Println(reverse(123)) + fmt.Println(reverse(-123)) + fmt.Println(reverse(120)) + fmt.Println(reverse(1534236469)) + +} -- cgit v1.2.3