計算機科学のブログ

関数(とその他の数学とコンピュータに関する予備知識) 入門 簡単な式、計算と数値、比較、条件、ブール値、代入文、条件式

行列プログラマー (Philip N. Klein(著)、松田 晃一(翻訳)、弓林 司(翻訳)、脇本 佑紀(翻訳)、中田 洋(翻訳)、齋藤 大吾(翻訳)、オライリー・ジャパン)の0章(関数(とその他の数学とコンピュータに関する予備知識))、0.5(ラボ: Python入門 - 集合、リスト、辞書、内包表記)、0.5.1(簡単な式)、計算と数値の課題0.5.1、課題0.5.2、比較、条件、ブール値の課題0.5.3、0.53(条件式)、課題0.5.4の解答をPythonではなくGoで求めてみる。

コード

package main

import (
	"fmt"
	"math"
)

func main() {
	fmt.Println("0.5.1")
	fmt.Printf("%v秒/一週間\n", 60*60*24*7)
	fmt.Println("0.5.2")
	a := 2304811
	b := 47
	q := a / b
	fmt.Println(a - b*q)
	fmt.Println(a % b)
	fmt.Println("0.5.3")
	fmt.Println((673+909)%3 == 0)
	fmt.Println("0.5.4")
	x := -9
	y := 1.0 / 2
	// x + 10 = 1
	// Output: 1
	if x+10 < 0 {
		fmt.Println(math.Pow(2, y+1.0/2))
	} else {
		fmt.Println(math.Pow(2, y-1.0/2))
	}
}

入出力結果

% go run ./main.go
0.5.1
604800秒/一週間
0.5.2
25
25
0.5.3
false
0.5.4
1
%