30 days of code in Go: Day 4 - Class vs Instance

Here I am again for the 30 Days of Code in Go. This is Saturday, but that doesn’t mean I will not code =). First of all, before starting to code I was thinking about the theme: classes. I was wondering if Go had support for it and I found some interesting material to read. First I read Why Go’s structs are superior to class-based inheritance and I found out the the inheritance model of Go is different from that of Java. Basically, you do not actually specify which class implements an interface, but the compiler. A class can implement several interfaces, not being limited to one super-class like in Java or C++. Another materials I read were Go by Example Structs, methods and interfaces. I am not so well versed on the syntax, but it is not hard to grasp it and start coding. Nevertheless, HackerRank was good to me and gave some starter code and I just implemented the methods. ...

September 10, 2016 · 2 min

Simple Array Sum in Go

Hello again! I saw a problem in HackerRank to sum an array of elements. I have done this before in a couple of languages, but never in Go, so I was not sure exactly what to do. I coded the solution and it is: package main import "fmt" func main() { var n uint32 fmt.Scanf("%d\n", &n) sum := 0 current := 0 for n > 0 { fmt.Scanf("%d", &current) sum += current n-- } fmt.Printf("%d\n", sum) } Here I run the program and I see a correct solution: ...

September 9, 2016 · 1 min

30 days of code in Go: Day 3 - Conditional Statements

The HackerRank challenge of today was a problem with conditionals. Given an integer $n$, the goal was to perform the following actions: If $n$ is odd, print Weird If $n$ is even and in the range $[2, 5]$, print Not Weird If $n$ is even and in the range $[6, 20]$, print Weird If $n$ is even and greater than $20$, print Weird The input to the program is simply the number $n$ and the result is a single line saying that the number is weird or not. My solution was ...

September 9, 2016 · 1 min

30 days of code in Go: Day 2 - computing the total cost of a meal

Hi there! Today is the day 2 challenge. The goal is to compute the total cost of a meal given the meal price, tip percent and tax percent. Usually when I go to a restaurant in Brazil I only care about the first two, as taxes are already included in the meal price. Again: this is pretty basic, but as I am used to other languages syntax this simple tutorial from HackerRank is being quite useful to keep me training everyday and learn Go, so it is awesome! Now, let’s see my solution: ...

September 8, 2016 · 2 min

30 days of code in Go: Day 1 - summing numbers and concatenating strings

The goal of this second day is the following: Declare 3 variables: an int, a double and a string. Read 3 lines from stdin and save them in the variables you just defined Do some operations with the pre-defined $i$, $d$ and $s$ variables Print the sum of the integer $i$ with your integer variable Print the sum of the float $d$ with your double variable with one decimal place Concatenate $s$ with your string and print the result My solution was the following ...

September 7, 2016 · 1 min

30 days of code in Go: Day 0 - Reading from stdin

Today I am starting the 30 days of code challenge on Hackerrank. You will be able to see my progress at my profile. The language I chose is Go. I do not have experience in Go and I am pretty excited. I think the challenge is basic, but it will probably be fun, so bear with me. Later on I may take better challenges, when I get more experience with Hackerrank. Incredibly, this gave me more trouble than I expected. First of all I had to install go using homebrew: ...

September 6, 2016 · 2 min