annotate scripts/ring.rb @ 223:1c37472fc00d

add catch command from editors
author ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
date Thu, 28 Nov 2019 15:12:37 +0900
parents 77169cd8a5e8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
140
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
1 def create_nodes(node_num)
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
2 (0..node_num - 1).map { |i|
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
3 i = "node" + i.to_s
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
4 }
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
5 end
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
6
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
7 def print_dot(connections)
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
8 puts "digraph test {"
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
9 connections.each { |connection|
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
10 print "\t"
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
11 print connection[0]
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
12 print " -> "
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
13 print connection[1]
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
14 print ' [label="' + connection[2] + '"]'
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
15 puts
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
16 }
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
17 puts "}"
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
18 end
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
19
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
20 node_num = ARGV[0].to_i
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
21 nodes = create_nodes(node_num)
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
22 connections = Array.new
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
23 nodes.each_with_index { |node, i|
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
24 connections << [nodes[i], nodes[(i + 1) % node_num], "right"]
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
25 connections << [nodes[i], nodes[i - 1], "left"]
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
26 }
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
27 print_dot(connections)
77169cd8a5e8 マージ blockchain
musou_aka
parents:
diff changeset
28