t50_matriz_dispersa_densa 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Documentacion/Fraccion.html +816 -0
- data/Documentacion/Gemfile.html +109 -0
- data/Documentacion/LICENSE_txt.html +126 -0
- data/Documentacion/Matriz.html +405 -0
- data/Documentacion/Matriz_Dispersa.html +159 -0
- data/Documentacion/Matriz_densa.html +479 -0
- data/Documentacion/Object.html +212 -0
- data/Documentacion/Rakefile.html +114 -0
- data/Documentacion/SparseMatrix.html +775 -0
- data/Documentacion/SparseVector.html +307 -0
- data/Documentacion/T50MatrizDispersaDensa.html +167 -0
- data/Documentacion/TestMatrix.html +467 -0
- data/Documentacion/bin/t50_matriz_dispersa_densa.html +54 -0
- data/Documentacion/created.rid +13 -0
- data/Documentacion/images/brick.png +0 -0
- data/Documentacion/images/brick_link.png +0 -0
- data/Documentacion/images/bug.png +0 -0
- data/Documentacion/images/bullet_black.png +0 -0
- data/Documentacion/images/bullet_toggle_minus.png +0 -0
- data/Documentacion/images/bullet_toggle_plus.png +0 -0
- data/Documentacion/images/date.png +0 -0
- data/Documentacion/images/find.png +0 -0
- data/Documentacion/images/loadingAnimation.gif +0 -0
- data/Documentacion/images/macFFBgHack.png +0 -0
- data/Documentacion/images/package.png +0 -0
- data/Documentacion/images/page_green.png +0 -0
- data/Documentacion/images/page_white_text.png +0 -0
- data/Documentacion/images/page_white_width.png +0 -0
- data/Documentacion/images/plugin.png +0 -0
- data/Documentacion/images/ruby.png +0 -0
- data/Documentacion/images/tag_green.png +0 -0
- data/Documentacion/images/wrench.png +0 -0
- data/Documentacion/images/wrench_orange.png +0 -0
- data/Documentacion/images/zoom.png +0 -0
- data/Documentacion/index.html +172 -0
- data/Documentacion/js/darkfish.js +118 -0
- data/Documentacion/js/jquery.js +32 -0
- data/Documentacion/js/quicksearch.js +114 -0
- data/Documentacion/js/thickbox-compressed.js +10 -0
- data/Documentacion/lib/Fraccion_rb.html +54 -0
- data/Documentacion/lib/gcd_rb.html +52 -0
- data/Documentacion/lib/matriz_densa_rb.html +54 -0
- data/Documentacion/lib/matriz_dispersa_rb.html +58 -0
- data/Documentacion/lib/matriz_rb.html +58 -0
- data/Documentacion/lib/t50_matriz_dispersa_densa/version_rb.html +52 -0
- data/Documentacion/lib/t50_matriz_dispersa_densa_rb.html +72 -0
- data/Documentacion/rdoc.css +763 -0
- data/Documentacion/test/tc_matrix_rb.html +62 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +67 -0
- data/Rakefile +10 -0
- data/bin/t50_matriz_dispersa_densa +3 -0
- data/lib/Fraccion.rb +128 -0
- data/lib/gcd.rb +7 -0
- data/lib/matriz.rb +71 -0
- data/lib/matriz.rb~ +136 -0
- data/lib/matriz_densa.rb +128 -0
- data/lib/matriz_densa.rb~ +148 -0
- data/lib/matriz_dispersa.rb +276 -0
- data/lib/matriz_dispersa.rb~ +275 -0
- data/lib/t50_matriz_dispersa_densa.rb +27 -0
- data/lib/t50_matriz_dispersa_densa.rb~ +7 -0
- data/lib/t50_matriz_dispersa_densa/version.rb +3 -0
- data/t50_matriz_dispersa_densa.gemspec +19 -0
- data/test/tc_matrix.rb +57 -0
- data/test/tc_matrix.rb~ +57 -0
- metadata +115 -0
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
|
|
7
|
+
|
|
8
|
+
<title>Class: Object</title>
|
|
9
|
+
|
|
10
|
+
<link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
|
|
11
|
+
|
|
12
|
+
<script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
|
13
|
+
<script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
|
|
14
|
+
<script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
|
|
15
|
+
<script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
|
|
16
|
+
|
|
17
|
+
</head>
|
|
18
|
+
<body id="top" class="class">
|
|
19
|
+
|
|
20
|
+
<div id="metadata">
|
|
21
|
+
<div id="home-metadata">
|
|
22
|
+
<div id="home-section" class="section">
|
|
23
|
+
<h3 class="section-header">
|
|
24
|
+
<a href="./index.html">Home</a>
|
|
25
|
+
<a href="./index.html#classes">Classes</a>
|
|
26
|
+
<a href="./index.html#methods">Methods</a>
|
|
27
|
+
</h3>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
<div id="file-metadata">
|
|
32
|
+
<div id="file-list-section" class="section">
|
|
33
|
+
<h3 class="section-header">In Files</h3>
|
|
34
|
+
<div class="section-body">
|
|
35
|
+
<ul>
|
|
36
|
+
|
|
37
|
+
<li><a href="./lib/gcd_rb.html?TB_iframe=true&height=550&width=785"
|
|
38
|
+
class="thickbox" title="lib/gcd.rb">lib/gcd.rb</a></li>
|
|
39
|
+
|
|
40
|
+
</ul>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
</div>
|
|
46
|
+
|
|
47
|
+
<div id="class-metadata">
|
|
48
|
+
|
|
49
|
+
<!-- Parent Class -->
|
|
50
|
+
<div id="parent-class-section" class="section">
|
|
51
|
+
<h3 class="section-header">Parent</h3>
|
|
52
|
+
|
|
53
|
+
<p class="link">BasicObject</p>
|
|
54
|
+
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
<!-- Method Quickref -->
|
|
64
|
+
<div id="method-list-section" class="section">
|
|
65
|
+
<h3 class="section-header">Methods</h3>
|
|
66
|
+
<ul class="link-list">
|
|
67
|
+
|
|
68
|
+
<li><a href="#method-i-gcd">#gcd</a></li>
|
|
69
|
+
|
|
70
|
+
</ul>
|
|
71
|
+
</div>
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
</div>
|
|
76
|
+
|
|
77
|
+
<div id="project-metadata">
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
<div id="fileindex-section" class="section project-section">
|
|
81
|
+
<h3 class="section-header">Files</h3>
|
|
82
|
+
<ul>
|
|
83
|
+
|
|
84
|
+
<li class="file"><a href="./Gemfile.html">Gemfile</a></li>
|
|
85
|
+
|
|
86
|
+
<li class="file"><a href="./LICENSE_txt.html">LICENSE.txt</a></li>
|
|
87
|
+
|
|
88
|
+
<li class="file"><a href="./Rakefile.html">Rakefile</a></li>
|
|
89
|
+
|
|
90
|
+
</ul>
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
<div id="classindex-section" class="section project-section">
|
|
95
|
+
<h3 class="section-header">Class/Module Index
|
|
96
|
+
<span class="search-toggle"><img src="./images/find.png"
|
|
97
|
+
height="16" width="16" alt="[+]"
|
|
98
|
+
title="show/hide quicksearch" /></span></h3>
|
|
99
|
+
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
|
100
|
+
<fieldset>
|
|
101
|
+
<legend>Quicksearch</legend>
|
|
102
|
+
<input type="text" name="quicksearch" value=""
|
|
103
|
+
class="quicksearch-field" />
|
|
104
|
+
</fieldset>
|
|
105
|
+
</form>
|
|
106
|
+
|
|
107
|
+
<ul class="link-list">
|
|
108
|
+
|
|
109
|
+
<li><a href="./Fraccion.html">Fraccion</a></li>
|
|
110
|
+
|
|
111
|
+
<li><a href="./Matriz.html">Matriz</a></li>
|
|
112
|
+
|
|
113
|
+
<li><a href="./Matriz_Dispersa.html">Matriz_Dispersa</a></li>
|
|
114
|
+
|
|
115
|
+
<li><a href="./Matriz_densa.html">Matriz_densa</a></li>
|
|
116
|
+
|
|
117
|
+
<li><a href="./Object.html">Object</a></li>
|
|
118
|
+
|
|
119
|
+
<li><a href="./SparseMatrix.html">SparseMatrix</a></li>
|
|
120
|
+
|
|
121
|
+
<li><a href="./SparseVector.html">SparseVector</a></li>
|
|
122
|
+
|
|
123
|
+
<li><a href="./T50MatrizDispersaDensa.html">T50MatrizDispersaDensa</a></li>
|
|
124
|
+
|
|
125
|
+
<li><a href="./TestMatrix.html">TestMatrix</a></li>
|
|
126
|
+
|
|
127
|
+
</ul>
|
|
128
|
+
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
129
|
+
</div>
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
</div>
|
|
133
|
+
</div>
|
|
134
|
+
|
|
135
|
+
<div id="documentation">
|
|
136
|
+
<h1 class="class">Object</h1>
|
|
137
|
+
|
|
138
|
+
<div id="description" class="description">
|
|
139
|
+
|
|
140
|
+
</div><!-- description -->
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
<div id="5Buntitled-5D" class="documentation-section">
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
<!-- Methods -->
|
|
155
|
+
|
|
156
|
+
<div id="public-instance-method-details" class="method-section section">
|
|
157
|
+
<h3 class="section-header">Public Instance Methods</h3>
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
<div id="gcd-method" class="method-detail ">
|
|
161
|
+
<a name="method-i-gcd"></a>
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
<div class="method-heading">
|
|
165
|
+
<span class="method-name">gcd</span><span
|
|
166
|
+
class="method-args">(u, v)</span>
|
|
167
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
168
|
+
</div>
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
<div class="method-description">
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
<div class="method-source-code" id="gcd-source">
|
|
178
|
+
<pre>
|
|
179
|
+
<span class="ruby-comment"># File lib/gcd.rb, line 1</span>
|
|
180
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">gcd</span>(<span class="ruby-identifier">u</span>, <span class="ruby-identifier">v</span>)
|
|
181
|
+
<span class="ruby-identifier">u</span>, <span class="ruby-identifier">v</span> = <span class="ruby-identifier">u</span>.<span class="ruby-identifier">abs</span>, <span class="ruby-identifier">v</span>.<span class="ruby-identifier">abs</span>
|
|
182
|
+
<span class="ruby-keyword">while</span> <span class="ruby-identifier">v</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
183
|
+
<span class="ruby-identifier">u</span>, <span class="ruby-identifier">v</span> = <span class="ruby-identifier">v</span>, <span class="ruby-identifier">u</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">v</span>
|
|
184
|
+
<span class="ruby-keyword">end</span>
|
|
185
|
+
<span class="ruby-identifier">u</span>
|
|
186
|
+
<span class="ruby-keyword">end</span></pre>
|
|
187
|
+
</div><!-- gcd-source -->
|
|
188
|
+
|
|
189
|
+
</div>
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
</div><!-- gcd-method -->
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
</div><!-- public-instance-method-details -->
|
|
198
|
+
|
|
199
|
+
</div><!-- 5Buntitled-5D -->
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
</div><!-- documentation -->
|
|
203
|
+
|
|
204
|
+
<div id="validator-badges">
|
|
205
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
206
|
+
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
|
207
|
+
Rdoc Generator</a> 2</small>.</p>
|
|
208
|
+
</div>
|
|
209
|
+
|
|
210
|
+
</body>
|
|
211
|
+
</html>
|
|
212
|
+
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
4
|
+
|
|
5
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
6
|
+
<head>
|
|
7
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
|
|
8
|
+
|
|
9
|
+
<title>File: Rakefile [RDoc Documentation]</title>
|
|
10
|
+
|
|
11
|
+
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet" />
|
|
12
|
+
|
|
13
|
+
<script src="./js/jquery.js" type="text/javascript"
|
|
14
|
+
charset="utf-8"></script>
|
|
15
|
+
<script src="./js/thickbox-compressed.js" type="text/javascript"
|
|
16
|
+
charset="utf-8"></script>
|
|
17
|
+
<script src="./js/quicksearch.js" type="text/javascript"
|
|
18
|
+
charset="utf-8"></script>
|
|
19
|
+
<script src="./js/darkfish.js" type="text/javascript"
|
|
20
|
+
charset="utf-8"></script>
|
|
21
|
+
</head>
|
|
22
|
+
|
|
23
|
+
<body class="file">
|
|
24
|
+
<div id="metadata">
|
|
25
|
+
<div id="home-metadata">
|
|
26
|
+
<div id="home-section" class="section">
|
|
27
|
+
<h3 class="section-header">
|
|
28
|
+
<a href="./index.html">Home</a>
|
|
29
|
+
<a href="./index.html#classes">Classes</a>
|
|
30
|
+
<a href="./index.html#methods">Methods</a>
|
|
31
|
+
</h3>
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
|
|
35
|
+
<div id="project-metadata">
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
<div id="fileindex-section" class="section project-section">
|
|
39
|
+
<h3 class="section-header">Files</h3>
|
|
40
|
+
<ul>
|
|
41
|
+
|
|
42
|
+
<li class="file"><a href="./Gemfile.html">Gemfile</a></li>
|
|
43
|
+
|
|
44
|
+
<li class="file"><a href="./LICENSE_txt.html">LICENSE.txt</a></li>
|
|
45
|
+
|
|
46
|
+
<li class="file"><a href="./Rakefile.html">Rakefile</a></li>
|
|
47
|
+
|
|
48
|
+
</ul>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
<div id="classindex-section" class="section project-section">
|
|
53
|
+
<h3 class="section-header">Class Index
|
|
54
|
+
<span class="search-toggle"><img src="./images/find.png"
|
|
55
|
+
height="16" width="16" alt="[+]"
|
|
56
|
+
title="show/hide quicksearch" /></span></h3>
|
|
57
|
+
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
|
58
|
+
<fieldset>
|
|
59
|
+
<legend>Quicksearch</legend>
|
|
60
|
+
<input type="text" name="quicksearch" value=""
|
|
61
|
+
class="quicksearch-field" />
|
|
62
|
+
</fieldset>
|
|
63
|
+
</form>
|
|
64
|
+
|
|
65
|
+
<ul class="link-list">
|
|
66
|
+
|
|
67
|
+
<li><a href="./Fraccion.html">Fraccion</a></li>
|
|
68
|
+
|
|
69
|
+
<li><a href="./Matriz.html">Matriz</a></li>
|
|
70
|
+
|
|
71
|
+
<li><a href="./Matriz_Dispersa.html">Matriz_Dispersa</a></li>
|
|
72
|
+
|
|
73
|
+
<li><a href="./Matriz_densa.html">Matriz_densa</a></li>
|
|
74
|
+
|
|
75
|
+
<li><a href="./Object.html">Object</a></li>
|
|
76
|
+
|
|
77
|
+
<li><a href="./SparseMatrix.html">SparseMatrix</a></li>
|
|
78
|
+
|
|
79
|
+
<li><a href="./SparseVector.html">SparseVector</a></li>
|
|
80
|
+
|
|
81
|
+
<li><a href="./T50MatrizDispersaDensa.html">T50MatrizDispersaDensa</a></li>
|
|
82
|
+
|
|
83
|
+
<li><a href="./TestMatrix.html">TestMatrix</a></li>
|
|
84
|
+
|
|
85
|
+
</ul>
|
|
86
|
+
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
<div id="documentation">
|
|
94
|
+
|
|
95
|
+
<p>require “bundler/gem_tasks”</p>
|
|
96
|
+
|
|
97
|
+
<p>task :default => :test</p>
|
|
98
|
+
|
|
99
|
+
<p>desc “Ejecutar test” task :test do</p>
|
|
100
|
+
|
|
101
|
+
<pre>sh "ruby -Ilib -Itest test/tc_matrix.rb"</pre>
|
|
102
|
+
|
|
103
|
+
<p>end</p>
|
|
104
|
+
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
<div id="validator-badges">
|
|
108
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
109
|
+
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
|
110
|
+
Rdoc Generator</a> 2</small>.</p>
|
|
111
|
+
</div>
|
|
112
|
+
</body>
|
|
113
|
+
</html>
|
|
114
|
+
|
|
@@ -0,0 +1,775 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
|
|
7
|
+
|
|
8
|
+
<title>Class: SparseMatrix</title>
|
|
9
|
+
|
|
10
|
+
<link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
|
|
11
|
+
|
|
12
|
+
<script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
|
13
|
+
<script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
|
|
14
|
+
<script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
|
|
15
|
+
<script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
|
|
16
|
+
|
|
17
|
+
</head>
|
|
18
|
+
<body id="top" class="class">
|
|
19
|
+
|
|
20
|
+
<div id="metadata">
|
|
21
|
+
<div id="home-metadata">
|
|
22
|
+
<div id="home-section" class="section">
|
|
23
|
+
<h3 class="section-header">
|
|
24
|
+
<a href="./index.html">Home</a>
|
|
25
|
+
<a href="./index.html#classes">Classes</a>
|
|
26
|
+
<a href="./index.html#methods">Methods</a>
|
|
27
|
+
</h3>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
<div id="file-metadata">
|
|
32
|
+
<div id="file-list-section" class="section">
|
|
33
|
+
<h3 class="section-header">In Files</h3>
|
|
34
|
+
<div class="section-body">
|
|
35
|
+
<ul>
|
|
36
|
+
|
|
37
|
+
<li><a href="./lib/matriz_dispersa_rb.html?TB_iframe=true&height=550&width=785"
|
|
38
|
+
class="thickbox" title="lib/matriz_dispersa.rb">lib/matriz_dispersa.rb</a></li>
|
|
39
|
+
|
|
40
|
+
</ul>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
</div>
|
|
46
|
+
|
|
47
|
+
<div id="class-metadata">
|
|
48
|
+
|
|
49
|
+
<!-- Parent Class -->
|
|
50
|
+
<div id="parent-class-section" class="section">
|
|
51
|
+
<h3 class="section-header">Parent</h3>
|
|
52
|
+
|
|
53
|
+
<p class="link"><a href="Matriz.html">Matriz</a></p>
|
|
54
|
+
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
<!-- Method Quickref -->
|
|
64
|
+
<div id="method-list-section" class="section">
|
|
65
|
+
<h3 class="section-header">Methods</h3>
|
|
66
|
+
<ul class="link-list">
|
|
67
|
+
|
|
68
|
+
<li><a href="#method-c-new">::new</a></li>
|
|
69
|
+
|
|
70
|
+
<li><a href="#method-i-2A">#*</a></li>
|
|
71
|
+
|
|
72
|
+
<li><a href="#method-i-2B">#+</a></li>
|
|
73
|
+
|
|
74
|
+
<li><a href="#method-i-2D">#-</a></li>
|
|
75
|
+
|
|
76
|
+
<li><a href="#method-i-5B-5D">#[]</a></li>
|
|
77
|
+
|
|
78
|
+
<li><a href="#method-i-coerce">#coerce</a></li>
|
|
79
|
+
|
|
80
|
+
<li><a href="#method-i-col">#col</a></li>
|
|
81
|
+
|
|
82
|
+
<li><a href="#method-i-comprobar">#comprobar</a></li>
|
|
83
|
+
|
|
84
|
+
<li><a href="#method-i-max">#max</a></li>
|
|
85
|
+
|
|
86
|
+
<li><a href="#method-i-min">#min</a></li>
|
|
87
|
+
|
|
88
|
+
<li><a href="#method-i-mostrar">#mostrar</a></li>
|
|
89
|
+
|
|
90
|
+
</ul>
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
</div>
|
|
96
|
+
|
|
97
|
+
<div id="project-metadata">
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
<div id="fileindex-section" class="section project-section">
|
|
101
|
+
<h3 class="section-header">Files</h3>
|
|
102
|
+
<ul>
|
|
103
|
+
|
|
104
|
+
<li class="file"><a href="./Gemfile.html">Gemfile</a></li>
|
|
105
|
+
|
|
106
|
+
<li class="file"><a href="./LICENSE_txt.html">LICENSE.txt</a></li>
|
|
107
|
+
|
|
108
|
+
<li class="file"><a href="./Rakefile.html">Rakefile</a></li>
|
|
109
|
+
|
|
110
|
+
</ul>
|
|
111
|
+
</div>
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
<div id="classindex-section" class="section project-section">
|
|
115
|
+
<h3 class="section-header">Class/Module Index
|
|
116
|
+
<span class="search-toggle"><img src="./images/find.png"
|
|
117
|
+
height="16" width="16" alt="[+]"
|
|
118
|
+
title="show/hide quicksearch" /></span></h3>
|
|
119
|
+
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
|
120
|
+
<fieldset>
|
|
121
|
+
<legend>Quicksearch</legend>
|
|
122
|
+
<input type="text" name="quicksearch" value=""
|
|
123
|
+
class="quicksearch-field" />
|
|
124
|
+
</fieldset>
|
|
125
|
+
</form>
|
|
126
|
+
|
|
127
|
+
<ul class="link-list">
|
|
128
|
+
|
|
129
|
+
<li><a href="./Fraccion.html">Fraccion</a></li>
|
|
130
|
+
|
|
131
|
+
<li><a href="./Matriz.html">Matriz</a></li>
|
|
132
|
+
|
|
133
|
+
<li><a href="./Matriz_Dispersa.html">Matriz_Dispersa</a></li>
|
|
134
|
+
|
|
135
|
+
<li><a href="./Matriz_densa.html">Matriz_densa</a></li>
|
|
136
|
+
|
|
137
|
+
<li><a href="./Object.html">Object</a></li>
|
|
138
|
+
|
|
139
|
+
<li><a href="./SparseMatrix.html">SparseMatrix</a></li>
|
|
140
|
+
|
|
141
|
+
<li><a href="./SparseVector.html">SparseVector</a></li>
|
|
142
|
+
|
|
143
|
+
<li><a href="./T50MatrizDispersaDensa.html">T50MatrizDispersaDensa</a></li>
|
|
144
|
+
|
|
145
|
+
<li><a href="./TestMatrix.html">TestMatrix</a></li>
|
|
146
|
+
|
|
147
|
+
</ul>
|
|
148
|
+
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
149
|
+
</div>
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
</div>
|
|
153
|
+
</div>
|
|
154
|
+
|
|
155
|
+
<div id="documentation">
|
|
156
|
+
<h1 class="class">SparseMatrix</h1>
|
|
157
|
+
|
|
158
|
+
<div id="description" class="description">
|
|
159
|
+
|
|
160
|
+
<p>Clase que se encarga de crear el hash</p>
|
|
161
|
+
|
|
162
|
+
</div><!-- description -->
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
<div id="5Buntitled-5D" class="documentation-section">
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
<!-- Attributes -->
|
|
176
|
+
<div id="attribute-method-details" class="method-section section">
|
|
177
|
+
<h3 class="section-header">Attributes</h3>
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
<div id="matrix-attribute-method" class="method-detail">
|
|
181
|
+
<a name="matrix"></a>
|
|
182
|
+
|
|
183
|
+
<div class="method-heading attribute-method-heading">
|
|
184
|
+
<span class="method-name">matrix</span><span
|
|
185
|
+
class="attribute-access-type">[R]</span>
|
|
186
|
+
</div>
|
|
187
|
+
|
|
188
|
+
<div class="method-description">
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
</div>
|
|
193
|
+
</div>
|
|
194
|
+
|
|
195
|
+
</div><!-- attribute-method-details -->
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
<!-- Methods -->
|
|
199
|
+
|
|
200
|
+
<div id="public-class-method-details" class="method-section section">
|
|
201
|
+
<h3 class="section-header">Public Class Methods</h3>
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
<div id="new-method" class="method-detail ">
|
|
205
|
+
<a name="method-c-new"></a>
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
<div class="method-heading">
|
|
209
|
+
<span class="method-name">new</span><span
|
|
210
|
+
class="method-args">(h = {})</span>
|
|
211
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
212
|
+
</div>
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
<div class="method-description">
|
|
216
|
+
|
|
217
|
+
<p>Inicializador propio de la clase</p>
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
<div class="method-source-code" id="new-source">
|
|
222
|
+
<pre>
|
|
223
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 28</span>
|
|
224
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">h</span> = {})
|
|
225
|
+
<span class="ruby-ivar">@matrix</span> = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>({})
|
|
226
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">k</span> <span class="ruby-keyword">in</span> <span class="ruby-identifier">h</span>.<span class="ruby-identifier">keys</span> <span class="ruby-keyword">do</span>
|
|
227
|
+
<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-keyword">if</span> <span class="ruby-identifier">h</span>[<span class="ruby-identifier">k</span>].<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">SparseVector</span>
|
|
228
|
+
<span class="ruby-identifier">h</span>[<span class="ruby-identifier">k</span>]
|
|
229
|
+
<span class="ruby-keyword">else</span>
|
|
230
|
+
<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-constant">SparseVector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">h</span>[<span class="ruby-identifier">k</span>])
|
|
231
|
+
<span class="ruby-keyword">end</span>
|
|
232
|
+
<span class="ruby-keyword">end</span>
|
|
233
|
+
<span class="ruby-keyword">end</span></pre>
|
|
234
|
+
</div><!-- new-source -->
|
|
235
|
+
|
|
236
|
+
</div>
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
</div><!-- new-method -->
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
</div><!-- public-class-method-details -->
|
|
245
|
+
|
|
246
|
+
<div id="public-instance-method-details" class="method-section section">
|
|
247
|
+
<h3 class="section-header">Public Instance Methods</h3>
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
<div id="2A-method" class="method-detail ">
|
|
251
|
+
<a name="method-i-2A"></a>
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
<div class="method-heading">
|
|
255
|
+
<span class="method-name">*</span><span
|
|
256
|
+
class="method-args">(other)</span>
|
|
257
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
258
|
+
</div>
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
<div class="method-description">
|
|
262
|
+
|
|
263
|
+
<p>Operacion de la multiplicacion en la matriz dispersa. Realiza la operacion
|
|
264
|
+
entre dos matrices dispersa y una dispersa con una densa</p>
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
<div class="method-source-code" id="2A-source">
|
|
269
|
+
<pre>
|
|
270
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 158</span>
|
|
271
|
+
<span class="ruby-keyword">def</span> *(<span class="ruby-identifier">other</span>)
|
|
272
|
+
|
|
273
|
+
<span class="ruby-keyword">case</span> <span class="ruby-identifier">other</span>
|
|
274
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">Matriz_Dispersa</span>
|
|
275
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Las columnas de una matriz no coinciden con las filas de la otra."</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>.<span class="ruby-identifier">size</span>
|
|
276
|
+
<span class="ruby-identifier">sumatotal</span> = <span class="ruby-value">0</span>
|
|
277
|
+
<span class="ruby-identifier">mul</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
278
|
+
|
|
279
|
+
<span class="ruby-comment">#for i in @matrix.keys do</span>
|
|
280
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">keys</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
281
|
+
<span class="ruby-identifier">mul_f</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
282
|
+
<span class="ruby-comment">#for j in @matrix[i].vector.keys do</span>
|
|
283
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
284
|
+
<span class="ruby-comment">#for k in @matrix[i].vector.keys do</span>
|
|
285
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
|
|
286
|
+
<span class="ruby-identifier">suma</span> = <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">k</span>] * <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>[<span class="ruby-identifier">k</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>]
|
|
287
|
+
<span class="ruby-identifier">sumatotal</span> = <span class="ruby-identifier">sumatotal</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">suma</span>;
|
|
288
|
+
<span class="ruby-keyword">end</span>
|
|
289
|
+
<span class="ruby-identifier">mul_f</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">sumatotal</span>
|
|
290
|
+
<span class="ruby-identifier">sumatotal</span> = <span class="ruby-value">0</span>
|
|
291
|
+
<span class="ruby-keyword">end</span>
|
|
292
|
+
<span class="ruby-identifier">mul</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">mul_f</span>
|
|
293
|
+
<span class="ruby-keyword">end</span>
|
|
294
|
+
<span class="ruby-comment"> for r in @matrix.keys do
|
|
295
|
+
for j in @matrix[r].vector.keys do
|
|
296
|
+
print " #{mul[r][j]} "
|
|
297
|
+
end
|
|
298
|
+
puts
|
|
299
|
+
end
|
|
300
|
+
</span> <span class="ruby-keyword">return</span> <span class="ruby-identifier">mul</span>
|
|
301
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">Matriz_densa</span>
|
|
302
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Las columnas de una matriz no coinciden con las filas de la otra."</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">f</span>
|
|
303
|
+
<span class="ruby-identifier">sumatotal</span> = <span class="ruby-value">0</span>
|
|
304
|
+
<span class="ruby-identifier">mul</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
305
|
+
|
|
306
|
+
<span class="ruby-comment">#for i in @matrix.keys do</span>
|
|
307
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
308
|
+
<span class="ruby-identifier">mul_f</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
309
|
+
<span class="ruby-comment">#for j in @matrix[i].vector.keys do</span>
|
|
310
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
311
|
+
<span class="ruby-comment">#for k in @matrix[i].vector.keys do</span>
|
|
312
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
|
|
313
|
+
<span class="ruby-identifier">suma</span> = <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">k</span>] * <span class="ruby-identifier">other</span>.<span class="ruby-identifier">m</span>[<span class="ruby-identifier">k</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>][<span class="ruby-identifier">j</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>]
|
|
314
|
+
<span class="ruby-identifier">sumatotal</span> = <span class="ruby-identifier">sumatotal</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">suma</span>;
|
|
315
|
+
<span class="ruby-keyword">end</span>
|
|
316
|
+
<span class="ruby-identifier">mul_f</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">sumatotal</span>
|
|
317
|
+
<span class="ruby-identifier">sumatotal</span> = <span class="ruby-value">0</span>
|
|
318
|
+
<span class="ruby-keyword">end</span>
|
|
319
|
+
<span class="ruby-identifier">mul</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">mul_f</span>
|
|
320
|
+
<span class="ruby-keyword">end</span>
|
|
321
|
+
<span class="ruby-comment"> for r in @matrix.keys do
|
|
322
|
+
for j in @matrix[r].vector.keys do
|
|
323
|
+
print " #{mul[r][j]} "
|
|
324
|
+
end
|
|
325
|
+
puts
|
|
326
|
+
end
|
|
327
|
+
</span> <span class="ruby-keyword">return</span> <span class="ruby-identifier">mul</span>
|
|
328
|
+
<span class="ruby-keyword">else</span>
|
|
329
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"No se puede pasar #{other.inspect} a Matriz"</span>)
|
|
330
|
+
<span class="ruby-keyword">end</span>
|
|
331
|
+
<span class="ruby-keyword">end</span></pre>
|
|
332
|
+
</div><!-- 2A-source -->
|
|
333
|
+
|
|
334
|
+
</div>
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
</div><!-- 2A-method -->
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
<div id="2B-method" class="method-detail ">
|
|
343
|
+
<a name="method-i-2B"></a>
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
<div class="method-heading">
|
|
347
|
+
<span class="method-name">+</span><span
|
|
348
|
+
class="method-args">(other)</span>
|
|
349
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
350
|
+
</div>
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
<div class="method-description">
|
|
354
|
+
|
|
355
|
+
<p>Operacion de la suma en la matriz dispersa. Realiza la operacion entre dos
|
|
356
|
+
matrices dispersa y una dispersa con una densa</p>
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
<div class="method-source-code" id="2B-source">
|
|
361
|
+
<pre>
|
|
362
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 80</span>
|
|
363
|
+
<span class="ruby-keyword">def</span> <span class="ruby-operator">+</span>(<span class="ruby-identifier">other</span>)
|
|
364
|
+
<span class="ruby-keyword">case</span> <span class="ruby-identifier">other</span>
|
|
365
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">Matriz_Dispersa</span>
|
|
366
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Las matrices no son iguales en longitud."</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span>
|
|
367
|
+
<span class="ruby-identifier">resul</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
368
|
+
<span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
|
369
|
+
<span class="ruby-identifier">r</span> = <span class="ruby-identifier">r</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
370
|
+
<span class="ruby-comment">#for r in @matrix.keys do</span>
|
|
371
|
+
<span class="ruby-identifier">resul_f</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
372
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
373
|
+
<span class="ruby-comment">#for j in @matrix[r].vector.keys do </span>
|
|
374
|
+
<span class="ruby-comment">#print " #{@matrix[r].vector[j] + other.matrix[r].vector[j]} "</span>
|
|
375
|
+
<span class="ruby-identifier">resul_f</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">+</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>]
|
|
376
|
+
<span class="ruby-keyword">end</span>
|
|
377
|
+
<span class="ruby-comment">#puts</span>
|
|
378
|
+
<span class="ruby-identifier">resul</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">resul_f</span>
|
|
379
|
+
<span class="ruby-keyword">end</span>
|
|
380
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">resul</span>
|
|
381
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">Matriz_densa</span>
|
|
382
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Las matrices no son iguales en longitud."</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">f</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">c</span>
|
|
383
|
+
<span class="ruby-identifier">resul</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
384
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">f</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
|
385
|
+
<span class="ruby-comment">#for r in 1..other.f do</span>
|
|
386
|
+
<span class="ruby-identifier">resul_f</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
387
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">c</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
388
|
+
<span class="ruby-comment">#for j in 1..other.c do</span>
|
|
389
|
+
<span class="ruby-comment">#print " #{@matrix[r].vector[j] + other.m[r - 1][j - 1]}"</span>
|
|
390
|
+
<span class="ruby-identifier">resul_f</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">+</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">m</span>[<span class="ruby-identifier">r</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>][<span class="ruby-identifier">j</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>]
|
|
391
|
+
<span class="ruby-keyword">end</span>
|
|
392
|
+
<span class="ruby-comment">#puts</span>
|
|
393
|
+
<span class="ruby-identifier">resul</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">resul_f</span>
|
|
394
|
+
<span class="ruby-keyword">end</span>
|
|
395
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">resul</span>
|
|
396
|
+
<span class="ruby-keyword">else</span>
|
|
397
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"No se puede pasar #{other.inspect} a Matriz"</span>)
|
|
398
|
+
<span class="ruby-keyword">end</span>
|
|
399
|
+
<span class="ruby-keyword">end</span></pre>
|
|
400
|
+
</div><!-- 2B-source -->
|
|
401
|
+
|
|
402
|
+
</div>
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
</div><!-- 2B-method -->
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
<div id="2D-method" class="method-detail ">
|
|
411
|
+
<a name="method-i-2D"></a>
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
<div class="method-heading">
|
|
415
|
+
<span class="method-name">-</span><span
|
|
416
|
+
class="method-args">(other)</span>
|
|
417
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
418
|
+
</div>
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
<div class="method-description">
|
|
422
|
+
|
|
423
|
+
<p>Operacion de la resta en la matriz dispersa. Realiza la operacion entre dos
|
|
424
|
+
matrices dispersa y una dispersa con una densa</p>
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
<div class="method-source-code" id="2D-source">
|
|
429
|
+
<pre>
|
|
430
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 119</span>
|
|
431
|
+
<span class="ruby-keyword">def</span> <span class="ruby-operator">-</span>(<span class="ruby-identifier">other</span>)
|
|
432
|
+
<span class="ruby-keyword">case</span> <span class="ruby-identifier">other</span>
|
|
433
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">Matriz_Dispersa</span>
|
|
434
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Las matrices no son iguales en longitud."</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span>
|
|
435
|
+
<span class="ruby-identifier">resul</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
436
|
+
<span class="ruby-comment">#for r in @matrix.keys do</span>
|
|
437
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">keys</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
|
438
|
+
<span class="ruby-identifier">resul_f</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
439
|
+
<span class="ruby-comment">#for j in @matrix[r].vector.keys do </span>
|
|
440
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
441
|
+
<span class="ruby-comment">#print " #{@matrix[r].vector[j] - other.matrix[r].vector[j]} "</span>
|
|
442
|
+
<span class="ruby-identifier">resul_f</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">-</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>]
|
|
443
|
+
<span class="ruby-keyword">end</span>
|
|
444
|
+
<span class="ruby-comment">#puts</span>
|
|
445
|
+
<span class="ruby-identifier">resul</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">resul_f</span>
|
|
446
|
+
<span class="ruby-keyword">end</span>
|
|
447
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">resul</span>
|
|
448
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">Matriz_densa</span>
|
|
449
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Las matrices no son iguales en longitud."</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">f</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">c</span>
|
|
450
|
+
<span class="ruby-identifier">resul</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
451
|
+
<span class="ruby-comment">#for r in 1..other.f do</span>
|
|
452
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">f</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
|
|
453
|
+
<span class="ruby-identifier">resul_f</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
|
|
454
|
+
<span class="ruby-comment">#for j in 1..other.c do</span>
|
|
455
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">c</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
456
|
+
<span class="ruby-comment">#print " #{@matrix[r].vector[j] - other.m[r - 1][j - 1]}"</span>
|
|
457
|
+
<span class="ruby-identifier">resul_f</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">-</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">m</span>[<span class="ruby-identifier">r</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>][<span class="ruby-identifier">j</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>]
|
|
458
|
+
<span class="ruby-keyword">end</span>
|
|
459
|
+
<span class="ruby-comment">#puts</span>
|
|
460
|
+
<span class="ruby-identifier">resul</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">resul_f</span>
|
|
461
|
+
<span class="ruby-keyword">end</span>
|
|
462
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">resul</span>
|
|
463
|
+
<span class="ruby-keyword">else</span>
|
|
464
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"No se puede pasar #{other.inspect} a Matriz"</span>)
|
|
465
|
+
<span class="ruby-keyword">end</span>
|
|
466
|
+
|
|
467
|
+
<span class="ruby-keyword">end</span></pre>
|
|
468
|
+
</div><!-- 2D-source -->
|
|
469
|
+
|
|
470
|
+
</div>
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
|
|
475
|
+
</div><!-- 2D-method -->
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
<div id="5B-5D-method" class="method-detail ">
|
|
479
|
+
<a name="method-i-5B-5D"></a>
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
<div class="method-heading">
|
|
483
|
+
<span class="method-name">[]</span><span
|
|
484
|
+
class="method-args">(i)</span>
|
|
485
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
486
|
+
</div>
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
<div class="method-description">
|
|
490
|
+
|
|
491
|
+
<p>Obtener un valor de la matriz dada una posicion</p>
|
|
492
|
+
|
|
493
|
+
|
|
494
|
+
|
|
495
|
+
<div class="method-source-code" id="5B-5D-source">
|
|
496
|
+
<pre>
|
|
497
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 40</span>
|
|
498
|
+
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">i</span>)
|
|
499
|
+
<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>]
|
|
500
|
+
<span class="ruby-keyword">end</span></pre>
|
|
501
|
+
</div><!-- 5B-5D-source -->
|
|
502
|
+
|
|
503
|
+
</div>
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
</div><!-- 5B-5D-method -->
|
|
509
|
+
|
|
510
|
+
|
|
511
|
+
<div id="coerce-method" class="method-detail ">
|
|
512
|
+
<a name="method-i-coerce"></a>
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
<div class="method-heading">
|
|
516
|
+
<span class="method-name">coerce</span><span
|
|
517
|
+
class="method-args">(other)</span>
|
|
518
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
519
|
+
</div>
|
|
520
|
+
|
|
521
|
+
|
|
522
|
+
<div class="method-description">
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
|
|
528
|
+
<div class="method-source-code" id="coerce-source">
|
|
529
|
+
<pre>
|
|
530
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 269</span>
|
|
531
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">coerce</span>(<span class="ruby-identifier">other</span>)
|
|
532
|
+
[<span class="ruby-identifier">other</span>,<span class="ruby-keyword">self</span>]
|
|
533
|
+
<span class="ruby-keyword">end</span></pre>
|
|
534
|
+
</div><!-- coerce-source -->
|
|
535
|
+
|
|
536
|
+
</div>
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
</div><!-- coerce-method -->
|
|
542
|
+
|
|
543
|
+
|
|
544
|
+
<div id="col-method" class="method-detail ">
|
|
545
|
+
<a name="method-i-col"></a>
|
|
546
|
+
|
|
547
|
+
|
|
548
|
+
<div class="method-heading">
|
|
549
|
+
<span class="method-name">col</span><span
|
|
550
|
+
class="method-args">(j)</span>
|
|
551
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
552
|
+
</div>
|
|
553
|
+
|
|
554
|
+
|
|
555
|
+
<div class="method-description">
|
|
556
|
+
|
|
557
|
+
|
|
558
|
+
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
<div class="method-source-code" id="col-source">
|
|
562
|
+
<pre>
|
|
563
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 44</span>
|
|
564
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">col</span>(<span class="ruby-identifier">j</span>)
|
|
565
|
+
<span class="ruby-identifier">c</span> = {}
|
|
566
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">r</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">keys</span> <span class="ruby-keyword">do</span>
|
|
567
|
+
<span class="ruby-identifier">c</span>[<span class="ruby-identifier">r</span>] = <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-keyword">if</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">j</span>
|
|
568
|
+
<span class="ruby-keyword">end</span>
|
|
569
|
+
<span class="ruby-constant">SparseVector</span>.<span class="ruby-identifier">new</span> <span class="ruby-identifier">c</span>
|
|
570
|
+
<span class="ruby-keyword">end</span></pre>
|
|
571
|
+
</div><!-- col-source -->
|
|
572
|
+
|
|
573
|
+
</div>
|
|
574
|
+
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
</div><!-- col-method -->
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
<div id="comprobar-method" class="method-detail ">
|
|
582
|
+
<a name="method-i-comprobar"></a>
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
<div class="method-heading">
|
|
586
|
+
<span class="method-name">comprobar</span><span
|
|
587
|
+
class="method-args">()</span>
|
|
588
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
589
|
+
</div>
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
<div class="method-description">
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
|
|
598
|
+
<div class="method-source-code" id="comprobar-source">
|
|
599
|
+
<pre>
|
|
600
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 52</span>
|
|
601
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">comprobar</span>
|
|
602
|
+
<span class="ruby-identifier">contar</span> = <span class="ruby-value">0</span>
|
|
603
|
+
<span class="ruby-identifier">contartotal</span> = <span class="ruby-value">0</span>
|
|
604
|
+
<span class="ruby-identifier">result</span> = <span class="ruby-value">0</span>
|
|
605
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">r</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">keys</span> <span class="ruby-keyword">do</span>
|
|
606
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">j</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span> <span class="ruby-keyword">do</span>
|
|
607
|
+
<span class="ruby-identifier">contartotal</span> = <span class="ruby-identifier">contartotal</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
608
|
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
609
|
+
<span class="ruby-identifier">contar</span> = <span class="ruby-identifier">contar</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
610
|
+
<span class="ruby-keyword">end</span>
|
|
611
|
+
<span class="ruby-keyword">end</span>
|
|
612
|
+
<span class="ruby-keyword">end</span>
|
|
613
|
+
<span class="ruby-identifier">result</span> = (<span class="ruby-identifier">contar</span> * <span class="ruby-value">100</span>) <span class="ruby-operator">/</span> <span class="ruby-identifier">contartotal</span>
|
|
614
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span> <span class="ruby-operator"><</span> <span class="ruby-value">60</span>
|
|
615
|
+
<span class="ruby-string">"La matriz no es dispersa"</span>
|
|
616
|
+
<span class="ruby-keyword">end</span>
|
|
617
|
+
<span class="ruby-keyword">end</span></pre>
|
|
618
|
+
</div><!-- comprobar-source -->
|
|
619
|
+
|
|
620
|
+
</div>
|
|
621
|
+
|
|
622
|
+
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
</div><!-- comprobar-method -->
|
|
626
|
+
|
|
627
|
+
|
|
628
|
+
<div id="max-method" class="method-detail ">
|
|
629
|
+
<a name="method-i-max"></a>
|
|
630
|
+
|
|
631
|
+
|
|
632
|
+
<div class="method-heading">
|
|
633
|
+
<span class="method-name">max</span><span
|
|
634
|
+
class="method-args">()</span>
|
|
635
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
636
|
+
</div>
|
|
637
|
+
|
|
638
|
+
|
|
639
|
+
<div class="method-description">
|
|
640
|
+
|
|
641
|
+
<p>Obtención del maximo de una matriz dispersa</p>
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
|
|
645
|
+
<div class="method-source-code" id="max-source">
|
|
646
|
+
<pre>
|
|
647
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 226</span>
|
|
648
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">max</span>
|
|
649
|
+
|
|
650
|
+
<span class="ruby-identifier">maximo</span> = <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-value">1</span>]
|
|
651
|
+
|
|
652
|
+
<span class="ruby-comment">#for i in @matrix.keys do</span>
|
|
653
|
+
<span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
654
|
+
<span class="ruby-identifier">i</span> = <span class="ruby-identifier">i</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
655
|
+
<span class="ruby-comment">#for j in @matrix[i].vector.keys do</span>
|
|
656
|
+
<span class="ruby-comment">#@matrix[i].vector.keys do |j|</span>
|
|
657
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
658
|
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">></span> <span class="ruby-identifier">maximo</span>
|
|
659
|
+
<span class="ruby-identifier">maximo</span> = <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>]
|
|
660
|
+
<span class="ruby-keyword">end</span>
|
|
661
|
+
<span class="ruby-keyword">end</span>
|
|
662
|
+
<span class="ruby-keyword">end</span>
|
|
663
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">maximo</span>
|
|
664
|
+
<span class="ruby-keyword">end</span></pre>
|
|
665
|
+
</div><!-- max-source -->
|
|
666
|
+
|
|
667
|
+
</div>
|
|
668
|
+
|
|
669
|
+
|
|
670
|
+
|
|
671
|
+
|
|
672
|
+
</div><!-- max-method -->
|
|
673
|
+
|
|
674
|
+
|
|
675
|
+
<div id="min-method" class="method-detail ">
|
|
676
|
+
<a name="method-i-min"></a>
|
|
677
|
+
|
|
678
|
+
|
|
679
|
+
<div class="method-heading">
|
|
680
|
+
<span class="method-name">min</span><span
|
|
681
|
+
class="method-args">()</span>
|
|
682
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
683
|
+
</div>
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
<div class="method-description">
|
|
687
|
+
|
|
688
|
+
<p>Obtención del maximo de una matriz dispersa</p>
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
<div class="method-source-code" id="min-source">
|
|
693
|
+
<pre>
|
|
694
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 251</span>
|
|
695
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">min</span>
|
|
696
|
+
|
|
697
|
+
<span class="ruby-identifier">minimo</span> = <span class="ruby-ivar">@matrix</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-value">1</span>]
|
|
698
|
+
|
|
699
|
+
<span class="ruby-comment">#for i in @matrix.keys do</span>
|
|
700
|
+
<span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">size</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
701
|
+
<span class="ruby-comment">#for j in @matrix[i].vector.keys do</span>
|
|
702
|
+
<span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">size</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
|
703
|
+
<span class="ruby-identifier">j</span> = <span class="ruby-identifier">j</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
704
|
+
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator"><</span> <span class="ruby-identifier">minimo</span>
|
|
705
|
+
<span class="ruby-identifier">minimo</span> = <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">vector</span>[<span class="ruby-identifier">j</span>]
|
|
706
|
+
<span class="ruby-keyword">end</span>
|
|
707
|
+
<span class="ruby-keyword">end</span>
|
|
708
|
+
<span class="ruby-keyword">end</span>
|
|
709
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">minimo</span>
|
|
710
|
+
|
|
711
|
+
<span class="ruby-keyword">end</span></pre>
|
|
712
|
+
</div><!-- min-source -->
|
|
713
|
+
|
|
714
|
+
</div>
|
|
715
|
+
|
|
716
|
+
|
|
717
|
+
|
|
718
|
+
|
|
719
|
+
</div><!-- min-method -->
|
|
720
|
+
|
|
721
|
+
|
|
722
|
+
<div id="mostrar-method" class="method-detail ">
|
|
723
|
+
<a name="method-i-mostrar"></a>
|
|
724
|
+
|
|
725
|
+
|
|
726
|
+
<div class="method-heading">
|
|
727
|
+
<span class="method-name">mostrar</span><span
|
|
728
|
+
class="method-args">()</span>
|
|
729
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
730
|
+
</div>
|
|
731
|
+
|
|
732
|
+
|
|
733
|
+
<div class="method-description">
|
|
734
|
+
|
|
735
|
+
|
|
736
|
+
|
|
737
|
+
|
|
738
|
+
|
|
739
|
+
<div class="method-source-code" id="mostrar-source">
|
|
740
|
+
<pre>
|
|
741
|
+
<span class="ruby-comment"># File lib/matriz_dispersa.rb, line 70</span>
|
|
742
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">mostrar</span>
|
|
743
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">r</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@matrix</span>.<span class="ruby-identifier">keys</span> <span class="ruby-keyword">do</span>
|
|
744
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">j</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@matrix</span>[<span class="ruby-identifier">r</span>].<span class="ruby-identifier">vector</span>.<span class="ruby-identifier">keys</span> <span class="ruby-keyword">do</span>
|
|
745
|
+
<span class="ruby-identifier">print</span> <span class="ruby-node">"#{@matrix[r].vector[j]} "</span>
|
|
746
|
+
<span class="ruby-keyword">end</span>
|
|
747
|
+
<span class="ruby-identifier">puts</span>
|
|
748
|
+
<span class="ruby-keyword">end</span>
|
|
749
|
+
<span class="ruby-keyword">end</span></pre>
|
|
750
|
+
</div><!-- mostrar-source -->
|
|
751
|
+
|
|
752
|
+
</div>
|
|
753
|
+
|
|
754
|
+
|
|
755
|
+
|
|
756
|
+
|
|
757
|
+
</div><!-- mostrar-method -->
|
|
758
|
+
|
|
759
|
+
|
|
760
|
+
</div><!-- public-instance-method-details -->
|
|
761
|
+
|
|
762
|
+
</div><!-- 5Buntitled-5D -->
|
|
763
|
+
|
|
764
|
+
|
|
765
|
+
</div><!-- documentation -->
|
|
766
|
+
|
|
767
|
+
<div id="validator-badges">
|
|
768
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
769
|
+
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
|
770
|
+
Rdoc Generator</a> 2</small>.</p>
|
|
771
|
+
</div>
|
|
772
|
+
|
|
773
|
+
</body>
|
|
774
|
+
</html>
|
|
775
|
+
|