2023-05-25 17:47:19 +02:00
|
|
|
# Lösung: Mixin benutzen
|
2023-05-23 09:19:31 +02:00
|
|
|
|
2023-05-25 17:49:42 +02:00
|
|
|
|
|
|
|
```ruby
|
2023-05-25 17:47:19 +02:00
|
|
|
class Squares
|
|
|
|
include Enumerable
|
|
|
|
|
|
|
|
def initialize(max)
|
|
|
|
@max = max
|
|
|
|
end
|
|
|
|
|
|
|
|
def each
|
|
|
|
for i in 1..@max
|
|
|
|
yield i ** 2
|
|
|
|
end
|
|
|
|
end
|
2023-05-23 09:19:31 +02:00
|
|
|
end
|
|
|
|
|
2023-05-25 17:47:19 +02:00
|
|
|
s = Squares.new(20)
|
|
|
|
s.each { |e| puts e }
|
|
|
|
s.first
|
|
|
|
```
|