Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FizzBuzz code golf by ruby
Search
gurrium
February 22, 2018
Programming
1
220
FizzBuzz code golf by ruby
FizzBuzz code golf for hiroshima.rb #062
gurrium
February 22, 2018
Tweet
Share
More Decks by gurrium
See All by gurrium
作りながら紹介するマンガビューワの機能
gurrium
0
7
プライベートでも毎日コードを書く暮らし / Hatena Engineer Seminar #18
gurrium
0
1.4k
Other Decks in Programming
See All in Programming
はじめてみよう量子プログラミング
itokoichi01
0
220
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
1k
Kotlin 2.0 and Beyond
antonarhipov
2
150
Perl 5 OOP機構30年史 - Perl 5's OOP Mechanism over the past 30 years
moznion
0
390
GoのIteratorに詳しくなってしまう
inatonix
1
210
大公開!iOS開発の悩みトップ5 〜iOSDC Japan 2024〜
ryunakayama
0
190
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
4
90k
React + TextAliveでカッコいいLyric Applicatioinを作ろう!!
tosuri13
0
400
o1モデルのプロンプトエンジニアリングって?
ktc_wada
0
290
いつか使える ObjectSpace / Maybe useful ObjectSpace
euglena1215
2
140
LangChainの現在とv0.3にむけて
os1ma
4
940
エンジニア1年目で複雑なコードの改善に取り組んだ話
mtnmr
3
2k
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
327
20k
The Cost Of JavaScript in 2023
addyosmani
42
5.7k
Design by the Numbers
sachag
277
19k
We Have a Design System, Now What?
morganepeng
48
7.1k
Designing for humans not robots
tammielis
248
25k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
YesSQL, Process and Tooling at Scale
rocio
167
14k
Become a Pro
speakerdeck
PRO
22
4.9k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
36
1.7k
No one is an island. Learnings from fostering a developers community.
thoeni
18
2.9k
Automating Front-end Workflow
addyosmani
1365
200k
Transcript
FizzBuzz code golf
first code
(1..100).each do |i| puts "#{i} " if i % 3
== 0 if i % 5 == 0 puts 'fizzbuzz' next else puts 'fizz' next end end if i % 5 == 0 puts 'buzz' next end end count 207
if…else…end -> ? :
(1..100).each do |i| print "#{i} " if i % 3
== 0 puts i % 5 == 0 ? 'fizzbuzz' : 'fizz' next end puts i % 5 == 0 ? 'buzz' : nil end count 148
nest conditional operator
(1..100).each do |i| print "#{i} " puts i % 3
== 0 ? i % 5 == 0 ? 'fizzbuzz' : 'fizz' : i % 5 == 0 ? 'buzz' : nil end count 122
do…end -> {…}
(1..100).each { |i| print "#{i} " puts i % 3
== 0 ? i % 5 == 0 ? 'fizzbuzz' : 'fizz' : i % 5 == 0 ? 'buzz' : nil } count 119
join lines
(1..100).each { |i| print "#{i} ";puts i % 3 ==
0 ? i % 5 == 0 ? 'fizzbuzz' : 'fizz' : i % 5 == 0 ? 'buzz' : nil } count 115
nil -> ''
(1..100).each { |i| print "#{i} “; puts i % 3
== 0 ? i % 5 == 0 ? 'fizzbuzz' : 'fizz' : i % 5 == 0 ? 'buzz' : '' } count 114
into string
(1..100).each { |i| puts "#{i} #{'fizz' if i % 3
== 0}#{'buzz' if i % 5 == 0}" } count 81
(1..100).each -> Integer#upto
1.upto(100) { |i| puts "#{i} #{'fizz' if i % 3
== 0}#{'buzz' if i % 5 == 0}" } count 79
i == 0 -> i < 1
1.upto(100) { |i| puts "#{i} #{'fizz' if i % 3
< 1}#{'buzz' if i % 5 < 1}" } count 77
delete whitespace
1.upto(100){|i|puts"#{i} #{'fizz'if i%3<1}#{'buzz'if i%5<1}"} count 62