annotate libgo/misc/cgo/life/main.go @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900 (2017-10-27)
parents
children 84e7813d76e9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 // cmpout
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 // Copyright 2010 The Go Authors. All rights reserved.
kono
parents:
diff changeset
4 // Use of this source code is governed by a BSD-style
kono
parents:
diff changeset
5 // license that can be found in the LICENSE file.
kono
parents:
diff changeset
6
kono
parents:
diff changeset
7 // +build test_run
kono
parents:
diff changeset
8
kono
parents:
diff changeset
9 // Run the game of life in C using Go for parallelization.
kono
parents:
diff changeset
10
kono
parents:
diff changeset
11 package main
kono
parents:
diff changeset
12
kono
parents:
diff changeset
13 import (
kono
parents:
diff changeset
14 "."
kono
parents:
diff changeset
15 "flag"
kono
parents:
diff changeset
16 "fmt"
kono
parents:
diff changeset
17 )
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 const MAXDIM = 100
kono
parents:
diff changeset
20
kono
parents:
diff changeset
21 var dim = flag.Int("dim", 16, "board dimensions")
kono
parents:
diff changeset
22 var gen = flag.Int("gen", 10, "generations")
kono
parents:
diff changeset
23
kono
parents:
diff changeset
24 func main() {
kono
parents:
diff changeset
25 flag.Parse()
kono
parents:
diff changeset
26
kono
parents:
diff changeset
27 var a [MAXDIM * MAXDIM]int32
kono
parents:
diff changeset
28 for i := 2; i < *dim; i += 8 {
kono
parents:
diff changeset
29 for j := 2; j < *dim-3; j += 8 {
kono
parents:
diff changeset
30 for y := 0; y < 3; y++ {
kono
parents:
diff changeset
31 a[i**dim+j+y] = 1
kono
parents:
diff changeset
32 }
kono
parents:
diff changeset
33 }
kono
parents:
diff changeset
34 }
kono
parents:
diff changeset
35
kono
parents:
diff changeset
36 life.Run(*gen, *dim, *dim, a[:])
kono
parents:
diff changeset
37
kono
parents:
diff changeset
38 for i := 0; i < *dim; i++ {
kono
parents:
diff changeset
39 for j := 0; j < *dim; j++ {
kono
parents:
diff changeset
40 if a[i**dim+j] == 0 {
kono
parents:
diff changeset
41 fmt.Print(" ")
kono
parents:
diff changeset
42 } else {
kono
parents:
diff changeset
43 fmt.Print("X")
kono
parents:
diff changeset
44 }
kono
parents:
diff changeset
45 }
kono
parents:
diff changeset
46 fmt.Print("\n")
kono
parents:
diff changeset
47 }
kono
parents:
diff changeset
48 }