https://github.com/yuukanehiro/GolangStudy
もくじ
Progate
おみくじアプリ
https://prog-8.com/go/study/2/9#/24
package main
import "fmt"
// 「math/rand」パッケージと「time」パッケージをインポートしてください
import "math/rand"
import "time"
func main() {
// 指定されたコードを貼り付けてください
rand.Seed(time.Now().Unix())
// for文を作成してください
for i := 1; i <= 3; i++ {
number := rand.Intn(6)
fmt.Printf("%d回目のおみくじ結果: ", i)
switch number {
case 0:
fmt.Println("凶です")
case 1, 2:
fmt.Println("吉です")
case 3, 4:
fmt.Println("中吉です")
case 5:
fmt.Println("大吉です")
}
}
}
タイピングアプリ
https://prog-8.com/go/study/3/2#/6
package main
import "fmt"
func main() {
totalScore := 0
ask(1, "dog", totalScore)
ask(2, "cat", totalScore)
ask(3, "fish", totalScore)
fmt.Println("スコア", totalScore)
}
// 引数としてint型のtotalScoreを追加してください
func ask(number int, question string, totalScore int) {
var input string
fmt.Printf("[質問%d] 次の単語を入力してください: %s\n", number, question)
fmt.Scan(&input)
if question == input {
fmt.Println("正解!")
totalScore += 10
} else {
fmt.Println("不正解!")
}
}
ポインタ
package main
import "fmt"
func main() {
totalScore := 0
// 引数にtotalScoreのポインタを渡してください
ask(1, "dog", &totalScore)
ask(2, "cat", &totalScore)
ask(3, "fish", &totalScore)
fmt.Println("スコア", totalScore)
}
// 渡されるtotalScoreのポインタを受け取るように変更してください
func ask(number int, question string, scorePtr *int) {
var input string
fmt.Printf("[質問%d] 次の単語を入力してください: %s\n", number, question)
fmt.Scan(&input)
if question == input {
fmt.Println("正解!")
// ポインタを使って加算してください
*scorePtr += 10
} else {
fmt.Println("不正解!")
}
}
ドットインストール
hello world, 変数
package main
import "fmt"
func main() {
massage := "hello world"
fmt.Println(massage)
number1, number2 := 11, 23
println(number1, number2)
var (
number3 int
message2 string
)
number3 = 35
message2 = "yahoo world"
}
データ型
package main
import "fmt"
func main() {
number := 5
floatNumber := 3.14
message := "馬鹿な、ありえない"
flag := true
fmt.Printf("number:%d float:%f string:%s bool:%t", number, floatNumber, message, flag)
}
定数、iota
package main
import "fmt"
func main() {
const message = "yuuです"
fmt.Println(message) // yuuです
const (
sun = iota
mon
tue
)
println(sun, mon, tue) // 0 1 2
}
ポインタ
package main
import "fmt"
func main() {
number := 12
var numberPointer * int
numberPointer = &number
fmt.Println(numberPointer) // 0xc000016070
fmt.Println(*numberPointer) // 12
}




