Data update
This commit is contained in:
parent
72eb4943cb
commit
4d5544505c
2347 changed files with 62432 additions and 16731 deletions
|
|
@ -1,2 +1,2 @@
|
|||
⎕IO←0
|
||||
(L,'Fizz' 'Buzz' 'FizzBuzz')[¯1+(L×W=0)+W←(100×~0=W)+W←⊃+/1 2×0=3 5|⊂L←1+⍳100]
|
||||
⎕io←1
|
||||
{⎕←∊'Fizz' 'Buzz'⍵/⍨d,⍱/d←0=3 5|⍵}¨⍳100
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
A[I]←1+I←(0⍷A)/⍳⍴A←('FIZZBUZZ' 'FIZZ’ 'BUZZ' 0)[2⊥¨×(⊂3 5)|¨1+⍳100]
|
||||
{⍵ 'Fizz' 'Buzz' 'FizzBuzz'[2⊥0=5 3|⍵]}¨1+⍳100
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
{ ⍵ 'Fizz' 'Buzz' 'FizzBuzz'[ +/1 2×0=3 5|⍵] }¨1+⍳100
|
||||
{('FizzBuzz' 'Fizz' 'Buzz',⍵)[(0=15 3 5|⍵)⍳1]}¨⍳100
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
{(‘FizzBuzz’ ‘Fizz’ ‘Buzz’,⍵)[(0=15 3 5|⍵)⍳1]}¨⍳100
|
||||
⎕IO←0
|
||||
A[I]←1+I←(0⍷A)/⍳⍴A←('FIZZBUZZ' 'FIZZ' 'BUZZ' 0)[2⊥¨×(⊂3 5)|¨1+⍳100]
|
||||
|
|
|
|||
|
|
@ -1,40 +1,2 @@
|
|||
∇ sv ← fizzbuzz n; t;d
|
||||
[1] ⍝⍝ Solve the popular 'fizzbuzz' problem in APL.
|
||||
[2] ⍝⍝ \param n - highest number to compute (≥0)
|
||||
[3] ⍝⍝ \returns sv - a vector of strings representing the fizzbuzz solution for ⍳n
|
||||
[4] ⍝⍝ (note we return a string vector to avoid a mixed-type result; remove the
|
||||
[5] ⍝⍝ ⍕ function from the (⍕t[⍵]) term to see the difference).
|
||||
[6] ⍝⍝⍝⍝
|
||||
[7] t←⍳n ⍝ the sequence 1..n itself which we'll pick from
|
||||
[8] ⍝ ... or the words 'fizz', 'buzz', 'fizzbuzz' depending on
|
||||
[9] ⍝ ... divisibility by 3 and/or 5
|
||||
[10] ⍝⎕←t ⍝ (Uncomment to see during call)
|
||||
[11]
|
||||
[12] d←1+(+⌿ ⊃ {((0=3|⍵)) (2×(0=5|⍵))} ⍳n)
|
||||
[13] ⍝ || || | | | ↓↓
|
||||
[14] ⍝ || || | | | ⍳n: generate range (1..n)
|
||||
[15] ⍝ || || | ↓.....................↓ ↓↓
|
||||
[16] ⍝ || || | A dfn (lambda) taking its right arg (⍵, ⍳n here) to compute two boolean
|
||||
[17] ⍝ || || | vectors(v12): divisibility by 3 and 5, respectively, for each of ⍳n
|
||||
[18] ⍝ || || ↓
|
||||
[19] ⍝ || || ⊃: Disclose ('lift-up' and pad w/zeros) the 'ragged' matrix of vectors (v12)
|
||||
[20] ⍝ || || holding divisibility by 3 and 5 of each ⍳n
|
||||
[21] ⍝ || ↓↓
|
||||
[22] ⍝ || +⌿: Sum (v12) row-wise to count divisibility (0=neither 3 nor 5, 1=3, 2=3 and 5)
|
||||
[23] ⍝ ↓↓
|
||||
[24] ⍝ 1+: Add one to (v12) to make them 1-based for indexing below:
|
||||
[25] ⍝⎕←d
|
||||
[26]
|
||||
[27] sv ← { ((⍕t[⍵]) 'Fizz' 'Buzz' 'FizzBuzz') [d[⍵]]}¨ ⍳n
|
||||
[28] ⍝ | | | | | |
|
||||
[29] ⍝ | | | ↓....↓ |
|
||||
[30] ⍝ | |................................↓ idx |
|
||||
[31] ⍝ | ( lookup output vector ) |
|
||||
[32] ⍝ ↓...........................................↓
|
||||
[33] ⍝ A dfn (lambda) taking as its right arg (⍵) ⍳n and using the 'each' (¨)
|
||||
[34] ⍝ operator to apply the lambda to each (idx) of ⍳n.
|
||||
[35]
|
||||
[36] ⍝⍝ USAGE
|
||||
[37] ⍝⍝ ⎕ ← ,fizzbuzz 15
|
||||
[38] ⍝ 1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz
|
||||
∇
|
||||
⎕IO←0
|
||||
(L,'Fizz' 'Buzz' 'FizzBuzz')[¯1+(L×W=0)+W←(100×0≠W)+W←⊃+/1 2×0=3 5|⊂L←1+⍳100]
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
⎕io←1
|
||||
{⎕←∊'Fizz' 'Buzz'⍵/⍨d,⍱/d←0=3 5|⍵}¨⍳100
|
||||
⎕IO←0
|
||||
(L,'Fizz' 'Buzz' 'FizzBuzz')[¯1+(100+W[I])@(I←⍸0≠W←⊃+/1 2×0=3 5|⊂L)⊢L←1+⍳100]
|
||||
|
|
|
|||
40
Task/FizzBuzz/APL/fizzbuzz-7.apl
Normal file
40
Task/FizzBuzz/APL/fizzbuzz-7.apl
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
∇ sv ← fizzbuzz n; t;d
|
||||
[1] ⍝⍝ Solve the popular 'fizzbuzz' problem in APL.
|
||||
[2] ⍝⍝ \param n - highest number to compute (≥0)
|
||||
[3] ⍝⍝ \returns sv - a vector of strings representing the fizzbuzz solution for ⍳n
|
||||
[4] ⍝⍝ (note we return a string vector to avoid a mixed-type result; remove the
|
||||
[5] ⍝⍝ ⍕ function from the (⍕t[⍵]) term to see the difference).
|
||||
[6] ⍝⍝⍝⍝
|
||||
[7] t←⍳n ⍝ the sequence 1..n itself which we'll pick from
|
||||
[8] ⍝ ... or the words 'fizz', 'buzz', 'fizzbuzz' depending on
|
||||
[9] ⍝ ... divisibility by 3 and/or 5
|
||||
[10] ⍝⎕←t ⍝ (Uncomment to see during call)
|
||||
[11]
|
||||
[12] d←1+(+⌿ ⊃ {((0=3|⍵)) (2×(0=5|⍵))} ⍳n)
|
||||
[13] ⍝ || || | | | ↓↓
|
||||
[14] ⍝ || || | | | ⍳n: generate range (1..n)
|
||||
[15] ⍝ || || | ↓.....................↓ ↓↓
|
||||
[16] ⍝ || || | A dfn (lambda) taking its right arg (⍵, ⍳n here) to compute two boolean
|
||||
[17] ⍝ || || | vectors(v12): divisibility by 3 and 5, respectively, for each of ⍳n
|
||||
[18] ⍝ || || ↓
|
||||
[19] ⍝ || || ⊃: Disclose ('lift-up' and pad w/zeros) the 'ragged' matrix of vectors (v12)
|
||||
[20] ⍝ || || holding divisibility by 3 and 5 of each ⍳n
|
||||
[21] ⍝ || ↓↓
|
||||
[22] ⍝ || +⌿: Sum (v12) row-wise to count divisibility (0=neither 3 nor 5, 1=3, 2=3 and 5)
|
||||
[23] ⍝ ↓↓
|
||||
[24] ⍝ 1+: Add one to (v12) to make them 1-based for indexing below:
|
||||
[25] ⍝⎕←d
|
||||
[26]
|
||||
[27] sv ← { ((⍕t[⍵]) 'Fizz' 'Buzz' 'FizzBuzz') [d[⍵]]}¨ ⍳n
|
||||
[28] ⍝ | | | | | |
|
||||
[29] ⍝ | | | ↓....↓ |
|
||||
[30] ⍝ | |................................↓ idx |
|
||||
[31] ⍝ | ( lookup output vector ) |
|
||||
[32] ⍝ ↓...........................................↓
|
||||
[33] ⍝ A dfn (lambda) taking as its right arg (⍵) ⍳n and using the 'each' (¨)
|
||||
[34] ⍝ operator to apply the lambda to each (idx) of ⍳n.
|
||||
[35]
|
||||
[36] ⍝⍝ USAGE
|
||||
[37] ⍝⍝ ⎕ ← ,fizzbuzz 15
|
||||
[38] ⍝ 1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz
|
||||
∇
|
||||
27
Task/FizzBuzz/Erlang/fizzbuzz-2.erl
Normal file
27
Task/FizzBuzz/Erlang/fizzbuzz-2.erl
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
-module(fizzbuzz).
|
||||
-export([start/1, count/2, display/0]).
|
||||
|
||||
fizzbuzz(N) when N rem 15 == 0 -> fizzbuzz;
|
||||
fizzbuzz(N) when N rem 5 == 0 -> buzz;
|
||||
fizzbuzz(N) when N rem 3 == 0 -> fizz;
|
||||
fizzbuzz(N) -> N.
|
||||
|
||||
count(N, Limit) when N==Limit ->
|
||||
display ! fizzbuzz(N),
|
||||
display ! finished;
|
||||
count(N, Limit) when N<Limit ->
|
||||
display ! fizzbuzz(N),
|
||||
count(N+1, Limit).
|
||||
|
||||
display() ->
|
||||
receive
|
||||
finished -> io:format("end!\n");
|
||||
fizzbuzz -> io:format("FizzBuzz!\n"), display();
|
||||
buzz -> io:format("Buzz!\n"), display();
|
||||
fizz -> io:format("Fizz!\n"), display();
|
||||
N -> io:format("~p\n", [N]), display()
|
||||
end.
|
||||
|
||||
start(Max) ->
|
||||
register(display, spawn(fizzbuzz, display, [])),
|
||||
count(1, Max).
|
||||
11
Task/FizzBuzz/Excel/fizzbuzz.excel
Normal file
11
Task/FizzBuzz/Excel/fizzbuzz.excel
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
=LET(
|
||||
i, SEQUENCE(100),
|
||||
isDivBy3, MOD(i, 3) = 0,
|
||||
isDivBy5, MOD(i, 5) = 0,
|
||||
IFS(
|
||||
isDivBy3 * isDivBy5, "FizzBuzz",
|
||||
isDivBy3, "Fizz",
|
||||
isDivBy5, "Buzz",
|
||||
TRUE, i
|
||||
)
|
||||
)
|
||||
|
|
@ -1,7 +1,2 @@
|
|||
USING: math kernel io math.functions math.parser math.ranges ;
|
||||
IN: fizzbuzz
|
||||
: fizz ( n -- str ) 3 divisor? "Fizz" "" ? ;
|
||||
: buzz ( n -- str ) 5 divisor? "Buzz" "" ? ;
|
||||
: fizzbuzz ( n -- str ) dup [ fizz ] [ buzz ] bi append [ number>string ] [ nip ] if-empty ;
|
||||
: main ( -- ) 100 [1,b] [ fizzbuzz print ] each ;
|
||||
MAIN: main
|
||||
USE: math.parser
|
||||
1 101 [ [ 3 5 [ mod 0 = ] bi-curry@ bi "Fizz" "Buzz" swapd [ and ] 2bi@ append ] keep number>string or print ] each-integer-from
|
||||
|
|
|
|||
|
|
@ -1,19 +1,7 @@
|
|||
USING: kernel sequences arrays generalizations fry math math.parser prettyprint ;
|
||||
USING: math kernel io math.functions math.parser math.ranges ;
|
||||
IN: fizzbuzz
|
||||
|
||||
: zz ( m seq -- v ) dup length 1 <array> V{ } clone 4 -nrot 1 4 -nrot 3 nrot
|
||||
'[ dup _ <= ]
|
||||
3 -nrot
|
||||
'[
|
||||
"" _ [ _ [ swap execute( str n -- str n ) ] change-nth ] each-index
|
||||
dup empty? [ drop dup number>string ] [ ] if swapd suffix! swap 1 +
|
||||
]
|
||||
while drop ;
|
||||
|
||||
: fizz ( str n -- str n ) dup 3 < [ 1 + ] [ drop "Fizz" append 1 ] if ;
|
||||
: buzz ( str n -- str n ) dup 5 < [ 1 + ] [ drop "Buzz" append 1 ] if ;
|
||||
: quxx ( str n -- str n ) dup 7 < [ 1 + ] [ drop "Quxx" append 1 ] if ;
|
||||
: FizzBuzzQuxx ( m -- v ) { fizz buzz quxx } zz ;
|
||||
: FizzBuzzQuxx-100 ( -- ) 100 FizzBuzzQuxx . ;
|
||||
|
||||
MAIN: FizzBuzzQuxx-100
|
||||
: fizz ( n -- str ) 3 divisor? "Fizz" "" ? ;
|
||||
: buzz ( n -- str ) 5 divisor? "Buzz" "" ? ;
|
||||
: fizzbuzz ( n -- str ) dup [ fizz ] [ buzz ] bi append [ number>string ] [ nip ] if-empty ;
|
||||
: main ( -- ) 100 [1,b] [ fizzbuzz print ] each ;
|
||||
MAIN: main
|
||||
|
|
|
|||
|
|
@ -1,24 +1,19 @@
|
|||
USING: io kernel math math.functions math.parser ranges
|
||||
sequences ;
|
||||
IN: rosetta-code.fizz-buzz
|
||||
USING: kernel sequences arrays generalizations fry math math.parser prettyprint ;
|
||||
IN: fizzbuzz
|
||||
|
||||
PREDICATE: fizz < integer 3 divisor? ;
|
||||
PREDICATE: buzz < integer 5 divisor? ;
|
||||
: zz ( m seq -- v ) dup length 1 <array> V{ } clone 4 -nrot 1 4 -nrot 3 nrot
|
||||
'[ dup _ <= ]
|
||||
3 -nrot
|
||||
'[
|
||||
"" _ [ _ [ swap execute( str n -- str n ) ] change-nth ] each-index
|
||||
dup empty? [ drop dup number>string ] [ ] if swapd suffix! swap 1 +
|
||||
]
|
||||
while drop ;
|
||||
|
||||
INTERSECTION: fizzbuzz fizz buzz ;
|
||||
: fizz ( str n -- str n ) dup 3 < [ 1 + ] [ drop "Fizz" append 1 ] if ;
|
||||
: buzz ( str n -- str n ) dup 5 < [ 1 + ] [ drop "Buzz" append 1 ] if ;
|
||||
: quxx ( str n -- str n ) dup 7 < [ 1 + ] [ drop "Quxx" append 1 ] if ;
|
||||
: FizzBuzzQuxx ( m -- v ) { fizz buzz quxx } zz ;
|
||||
: FizzBuzzQuxx-100 ( -- ) 100 FizzBuzzQuxx . ;
|
||||
|
||||
GENERIC: fizzbuzz>string ( n -- str )
|
||||
|
||||
M: fizz fizzbuzz>string
|
||||
drop "Fizz" ;
|
||||
|
||||
M: buzz fizzbuzz>string
|
||||
drop "Buzz" ;
|
||||
|
||||
M: fizzbuzz fizzbuzz>string
|
||||
drop "FizzBuzz" ;
|
||||
|
||||
M: integer fizzbuzz>string
|
||||
number>string ;
|
||||
|
||||
MAIN: [ 1 100 [a..b] [ fizzbuzz>string print ] each ]
|
||||
MAIN: FizzBuzzQuxx-100
|
||||
|
|
|
|||
24
Task/FizzBuzz/Factor/fizzbuzz-4.factor
Normal file
24
Task/FizzBuzz/Factor/fizzbuzz-4.factor
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
USING: io kernel math math.functions math.parser ranges
|
||||
sequences ;
|
||||
IN: rosetta-code.fizz-buzz
|
||||
|
||||
PREDICATE: fizz < integer 3 divisor? ;
|
||||
PREDICATE: buzz < integer 5 divisor? ;
|
||||
|
||||
INTERSECTION: fizzbuzz fizz buzz ;
|
||||
|
||||
GENERIC: fizzbuzz>string ( n -- str )
|
||||
|
||||
M: fizz fizzbuzz>string
|
||||
drop "Fizz" ;
|
||||
|
||||
M: buzz fizzbuzz>string
|
||||
drop "Buzz" ;
|
||||
|
||||
M: fizzbuzz fizzbuzz>string
|
||||
drop "FizzBuzz" ;
|
||||
|
||||
M: integer fizzbuzz>string
|
||||
number>string ;
|
||||
|
||||
MAIN: [ 1 100 [a..b] [ fizzbuzz>string print ] each ]
|
||||
|
|
@ -1,2 +1 @@
|
|||
classify =: +/@(1 2 * 0 = 3 5&|~)
|
||||
(":@]`('Fizz'"_)`('Buzz'"_)`('FizzBuzz'"_) @. classify "0) >:i.100
|
||||
(":[^:(0=#@])(>;:'Fizz Buzz'),@#~0=3 5&|)"0>:i.100
|
||||
|
|
|
|||
2
Task/FizzBuzz/J/fizzbuzz-10.j
Normal file
2
Task/FizzBuzz/J/fizzbuzz-10.j
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
;:inv}.(":&.> [^:(0 = #@])&.> [: ,&.>/ ;:@'Fizz Buzz' #&.>~ 0=3 5|/])i.101
|
||||
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz 31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz 41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz 61 62 Fiz...
|
||||
36
Task/FizzBuzz/J/fizzbuzz-11.j
Normal file
36
Task/FizzBuzz/J/fizzbuzz-11.j
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
i.10
|
||||
0 1 2 3 4 5 6 7 8 9
|
||||
(3 5 |/ ])i.10
|
||||
0 1 2 0 1 2 0 1 2 0
|
||||
0 1 2 3 4 0 1 2 3 4
|
||||
(0=3 5 |/ ])i.10
|
||||
1 0 0 1 0 0 1 0 0 1
|
||||
1 0 0 0 0 1 0 0 0 0
|
||||
(;:'Fizz Buzz')
|
||||
┌────┬────┐
|
||||
│Fizz│Buzz│
|
||||
└────┴────┘
|
||||
((;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌────┬┬┬────┬┬────┬────┬┬┬────┐
|
||||
│Fizz│││Fizz││ │Fizz│││Fizz│
|
||||
├────┼┼┼────┼┼────┼────┼┼┼────┤
|
||||
│Buzz│││ ││Buzz│ │││ │
|
||||
└────┴┴┴────┴┴────┴────┴┴┴────┘
|
||||
([: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌────────┬┬┬────┬┬────┬────┬┬┬────┐
|
||||
│FizzBuzz│││Fizz││Buzz│Fizz│││Fizz│
|
||||
└────────┴┴┴────┴┴────┴────┴┴┴────┘
|
||||
(":&.>)i.10
|
||||
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
|
||||
│0│1│2│3│4│5│6│7│8│9│
|
||||
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
|
||||
(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌────────┬─┬─┬────┬─┬────┬────┬─┬─┬────┐
|
||||
│FizzBuzz│1│2│Fizz│4│Buzz│Fizz│7│8│Fizz│
|
||||
└────────┴─┴─┴────┴─┴────┴────┴─┴─┴────┘
|
||||
}.(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌─┬─┬────┬─┬────┬────┬─┬─┬────┐
|
||||
│1│2│Fizz│4│Buzz│Fizz│7│8│Fizz│
|
||||
└─┴─┴────┴─┴────┴────┴─┴─┴────┘
|
||||
;:inv}.(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
1 2 Fizz 4 Buzz Fizz 7 8 Fizz
|
||||
|
|
@ -1 +1 @@
|
|||
> }. (<'FizzBuzz') (I.0=15|n)} (<'Buzz') (I.0=5|n)} (<'Fizz') (I.0=3|n)} ":&.> n=: i.101
|
||||
>((2#.3 q:15&+.){(|.(;~,&;);:'Fizz Buzz');~":)&>1+i.100
|
||||
|
|
|
|||
|
|
@ -1,5 +1 @@
|
|||
Fizz=: 'Fizz' #~ 0 = 3&|
|
||||
Buzz=: 'Buzz' #~ 0 = 5&|
|
||||
FizzBuzz=: ": [^:('' -: ]) Fizz,Buzz
|
||||
|
||||
FizzBuzz"0 >: i.100
|
||||
":`('Fizz'"_)`('Buzz'"_)`('FizzBuzz'"_)@.(2#.0=3 5&|)"0>:i.100
|
||||
|
|
|
|||
|
|
@ -1,6 +1 @@
|
|||
CRT0=: 2 : ' (, 0 = +./)@(0 = m | ]) ;@# n , <@": '
|
||||
NB. Rather (, 0 = +./) than (, +:/) because designed for
|
||||
NB. 3 5 7 CRT0 (;:'Chinese Remainder Period') "0 >: i. */3 5 7
|
||||
FizzBuzz=: 3 5 CRT0 (;:'Fizz Buzz')
|
||||
|
||||
FizzBuzz"0 >: i.100
|
||||
{{":`('Fizz'"_)`('Buzz'"_)`,@.((0;1;2;1 3 2){~#.0=3 5|y)y}}"0 >:i.20
|
||||
|
|
|
|||
|
|
@ -1,6 +1 @@
|
|||
'`f b fb' =: ('Fizz'"_) ` ('Buzz'"_) ` (f , b)
|
||||
'`cm3 cm5 cm15'=: (3&|) ` (5&|) ` (15&|) (0&=@)
|
||||
FizzBuzz=: ": ` f @. cm3 ` b @. cm5 ` fb @. cm15 NB. also:
|
||||
FizzBuzz=: ": ` f @. cm3 ` b @. cm5 ` (f,b) @. (cm3 *. cm5)
|
||||
|
||||
FizzBuzz"0 >: i.100
|
||||
> }. (<'FizzBuzz') (I.0=15|n)} (<'Buzz') (I.0=5|n)} (<'Fizz') (I.0=3|n)} ":&.> n=: i.101
|
||||
|
|
|
|||
|
|
@ -1,2 +1,5 @@
|
|||
;:inv}.(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~ 0 = 3 5 |/ ])i.101
|
||||
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz 31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz 41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz 61 62 Fiz...
|
||||
Fizz=: 'Fizz' #~ 0 = 3&|
|
||||
Buzz=: 'Buzz' #~ 0 = 5&|
|
||||
FizzBuzz=: ": [^:('' -: ]) Fizz,Buzz
|
||||
|
||||
FizzBuzz"0 >: i.100
|
||||
|
|
|
|||
|
|
@ -1,36 +1,6 @@
|
|||
i.10
|
||||
0 1 2 3 4 5 6 7 8 9
|
||||
(3 5 |/ ])i.10
|
||||
0 1 2 0 1 2 0 1 2 0
|
||||
0 1 2 3 4 0 1 2 3 4
|
||||
(0=3 5 |/ ])i.10
|
||||
1 0 0 1 0 0 1 0 0 1
|
||||
1 0 0 0 0 1 0 0 0 0
|
||||
(;:'Fizz Buzz')
|
||||
┌────┬────┐
|
||||
│Fizz│Buzz│
|
||||
└────┴────┘
|
||||
((;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌────┬┬┬────┬┬────┬────┬┬┬────┐
|
||||
│Fizz│││Fizz││ │Fizz│││Fizz│
|
||||
├────┼┼┼────┼┼────┼────┼┼┼────┤
|
||||
│Buzz│││ ││Buzz│ │││ │
|
||||
└────┴┴┴────┴┴────┴────┴┴┴────┘
|
||||
([: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌────────┬┬┬────┬┬────┬────┬┬┬────┐
|
||||
│FizzBuzz│││Fizz││Buzz│Fizz│││Fizz│
|
||||
└────────┴┴┴────┴┴────┴────┴┴┴────┘
|
||||
(":&.>)i.10
|
||||
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
|
||||
│0│1│2│3│4│5│6│7│8│9│
|
||||
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
|
||||
(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌────────┬─┬─┬────┬─┬────┬────┬─┬─┬────┐
|
||||
│FizzBuzz│1│2│Fizz│4│Buzz│Fizz│7│8│Fizz│
|
||||
└────────┴─┴─┴────┴─┴────┴────┴─┴─┴────┘
|
||||
}.(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
┌─┬─┬────┬─┬────┬────┬─┬─┬────┐
|
||||
│1│2│Fizz│4│Buzz│Fizz│7│8│Fizz│
|
||||
└─┴─┴────┴─┴────┴────┴─┴─┴────┘
|
||||
;:inv}.(":&.> [^:(0 = #@])&.> [: ,&.>/ (;:'Fizz Buzz') #&.>~0=3 5 |/ ])i.10
|
||||
1 2 Fizz 4 Buzz Fizz 7 8 Fizz
|
||||
CRT0=: 2 : ' (, 0 = +./)@(0 = m | ]) ;@# n , <@": '
|
||||
NB. Rather (, 0 = +./) than (, +:/) because designed for
|
||||
NB. 3 5 7 CRT0 (;:'Chinese Remainder Period') "0 >: i. */3 5 7
|
||||
FizzBuzz=: 3 5 CRT0 (;:'Fizz Buzz')
|
||||
|
||||
FizzBuzz"0 >: i.100
|
||||
|
|
|
|||
6
Task/FizzBuzz/J/fizzbuzz-8.j
Normal file
6
Task/FizzBuzz/J/fizzbuzz-8.j
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
'`f b fb' =: ('Fizz'"_) ` ('Buzz'"_) ` (f , b)
|
||||
'`cm3 cm5 cm15'=: (3&|) ` (5&|) ` (15&|) (0&=@)
|
||||
FizzBuzz=: ": ` f @. cm3 ` b @. cm5 ` fb @. cm15 NB. also:
|
||||
FizzBuzz=: ": ` f @. cm3 ` b @. cm5 ` (f,b) @. (cm3 *. cm5)
|
||||
|
||||
FizzBuzz"0 >: i.100
|
||||
1
Task/FizzBuzz/J/fizzbuzz-9.j
Normal file
1
Task/FizzBuzz/J/fizzbuzz-9.j
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{>(#.|:0=3 5|&><L)}(":&.>L=.1+i.y),|:(y,3)$;:'Fizz Buzz FizzBuzz'}}100
|
||||
|
|
@ -1 +1 @@
|
|||
`0:\:{:[0=#a:{,/$(:[0=x!3;"Fizz"];:[0=x!5;"Buzz"])}@x;$x;a]}'1_!101
|
||||
{,/$(s;x)@~#s:`Fizz`Buzz@&~x!'3 5}'1+!30
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
fizzbuzz:{:[0=x!15;`0:,"FizzBuzz";0=x!3;`0:,"Fizz";0=x!5;`0:,"Buzz";`0:,$x]}
|
||||
fizzbuzz' 1+!100
|
||||
{:[0=x!15;`0:,"FizzBuzz";0=x!3;`0:,"Fizz";0=x!5;`0:,"Buzz";`0:,$x]}'1+!100
|
||||
|
|
|
|||
|
|
@ -1,8 +1 @@
|
|||
fizzbuzz:{
|
||||
v:1+!x
|
||||
i:(&0=)'v!/:3 5 15
|
||||
r:@[v;i 0;{"Fizz"}]
|
||||
r:@[r;i 1;{"Buzz"}]
|
||||
@[r;i 2;{"FizzBuzz"}]}
|
||||
|
||||
`0:$fizzbuzz 100
|
||||
`0:\:{:[0=#a:{,/$(:[0=x!3;"Fizz"];:[0=x!5;"Buzz"])}@x;$x;a]}'1_!101
|
||||
|
|
|
|||
|
|
@ -1 +1,8 @@
|
|||
{,/$(s;x)@~#s:`Fizz`Buzz@&~x!'3 5}'1+!30
|
||||
fizzbuzz:{
|
||||
v:1+!x
|
||||
i:(&0=)'v!/:3 5 15
|
||||
r:@[v;i 0;{"Fizz"}]
|
||||
r:@[r;i 1;{"Buzz"}]
|
||||
@[r;i 2;{"FizzBuzz"}]}
|
||||
|
||||
`0:$fizzbuzz 100
|
||||
|
|
|
|||
|
|
@ -1,14 +0,0 @@
|
|||
program fizzbuzz(output);
|
||||
var
|
||||
i: integer;
|
||||
begin
|
||||
for i := 1 to 100 do
|
||||
if i mod 15 = 0 then
|
||||
writeln('FizzBuzz')
|
||||
else if i mod 3 = 0 then
|
||||
writeln('Fizz')
|
||||
else if i mod 5 = 0 then
|
||||
writeln('Buzz')
|
||||
else
|
||||
writeln(i)
|
||||
end.
|
||||
|
|
@ -1,33 +1,13 @@
|
|||
'''Fizz buzz'''
|
||||
from itertools import cycle, izip, count, islice
|
||||
|
||||
from itertools import count, cycle, islice
|
||||
fizzes = cycle([""] * 2 + ["Fizz"])
|
||||
buzzes = cycle([""] * 4 + ["Buzz"])
|
||||
both = (f + b for f, b in izip(fizzes, buzzes))
|
||||
|
||||
# if the string is "", yield the number
|
||||
# otherwise yield the string
|
||||
fizzbuzz = (word or n for word, n in izip(both, count(1)))
|
||||
|
||||
# fizzBuzz :: () -> Generator [String]
|
||||
def fizzBuzz():
|
||||
'''A non-finite stream of fizzbuzz terms.
|
||||
'''
|
||||
return map(
|
||||
lambda f, b, n: (f + b) or str(n),
|
||||
cycle([''] * 2 + ['Fizz']),
|
||||
cycle([''] * 4 + ['Buzz']),
|
||||
count(1)
|
||||
)
|
||||
|
||||
|
||||
# ------------------------- TEST -------------------------
|
||||
def main():
|
||||
'''Display of first 100 terms of the fizzbuzz series.
|
||||
'''
|
||||
print(
|
||||
'\n'.join(
|
||||
list(islice(
|
||||
fizzBuzz(),
|
||||
100
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
# print the first 100
|
||||
for i in islice(fizzbuzz, 100):
|
||||
print i
|
||||
|
|
|
|||
|
|
@ -1 +1,33 @@
|
|||
print(*map(lambda n: 'Fizzbuzz '[(i):i+13] if (i := n**4%-15) > -14 else n, range(1,100)))
|
||||
'''Fizz buzz'''
|
||||
|
||||
from itertools import count, cycle, islice
|
||||
|
||||
|
||||
# fizzBuzz :: () -> Generator [String]
|
||||
def fizzBuzz():
|
||||
'''A non-finite stream of fizzbuzz terms.
|
||||
'''
|
||||
return map(
|
||||
lambda f, b, n: (f + b) or str(n),
|
||||
cycle([''] * 2 + ['Fizz']),
|
||||
cycle([''] * 4 + ['Buzz']),
|
||||
count(1)
|
||||
)
|
||||
|
||||
|
||||
# ------------------------- TEST -------------------------
|
||||
def main():
|
||||
'''Display of first 100 terms of the fizzbuzz series.
|
||||
'''
|
||||
print(
|
||||
'\n'.join(
|
||||
list(islice(
|
||||
fizzBuzz(),
|
||||
100
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
|
|
|||
|
|
@ -1,12 +1 @@
|
|||
def numsum(n):
|
||||
''' The recursive sum of all digits in a number
|
||||
unit a single character is obtained'''
|
||||
res = sum([int(i) for i in str(n)])
|
||||
if res < 10: return res
|
||||
else : return numsum(res)
|
||||
|
||||
for n in range(1,101):
|
||||
response = 'Fizz'*(numsum(n) in [3,6,9]) + \
|
||||
'Buzz'*(str(n)[-1] in ['5','0'])\
|
||||
or n
|
||||
print(response)
|
||||
print(*map(lambda n: 'Fizzbuzz '[(i):i+13] if (i := n**4%-15) > -14 else n, range(1,100)))
|
||||
|
|
|
|||
|
|
@ -1 +1,12 @@
|
|||
print(*((lambda x=x: ''.join(chr(c) for c in (102, 105)) + (2 * chr(122)) + ''.join(chr(c) for c in (98, 117)) + (2 * chr(122)) + '\n' if x % (30 >> 1) == 0 else ''.join(chr(c) for c in (102, 105)) + (2 * chr(122)) + '\n' if x % (6 >> 1) == 0 else ''.join(chr(c) for c in (98, 117)) + (2 * chr(122)) + '\n' if x % (10 >> 1) == 0 else str(x) + '\n')() for x in range(1, 101)))
|
||||
def numsum(n):
|
||||
''' The recursive sum of all digits in a number
|
||||
unit a single character is obtained'''
|
||||
res = sum([int(i) for i in str(n)])
|
||||
if res < 10: return res
|
||||
else : return numsum(res)
|
||||
|
||||
for n in range(1,101):
|
||||
response = 'Fizz'*(numsum(n) in [3,6,9]) + \
|
||||
'Buzz'*(str(n)[-1] in ['5','0'])\
|
||||
or n
|
||||
print(response)
|
||||
|
|
|
|||
1
Task/FizzBuzz/Python/fizzbuzz-14.py
Normal file
1
Task/FizzBuzz/Python/fizzbuzz-14.py
Normal file
|
|
@ -0,0 +1 @@
|
|||
print(*((lambda x=x: ''.join(chr(c) for c in (102, 105)) + (2 * chr(122)) + ''.join(chr(c) for c in (98, 117)) + (2 * chr(122)) + '\n' if x % (30 >> 1) == 0 else ''.join(chr(c) for c in (102, 105)) + (2 * chr(122)) + '\n' if x % (6 >> 1) == 0 else ''.join(chr(c) for c in (98, 117)) + (2 * chr(122)) + '\n' if x % (10 >> 1) == 0 else str(x) + '\n')() for x in range(1, 101)))
|
||||
|
|
@ -1 +1,17 @@
|
|||
[print("FizzBuzz") if i % 15 == 0 else print("Fizz") if i % 3 == 0 else print("Buzz") if i % 5 == 0 else print(i) for i in range(1,101)]
|
||||
actions = {
|
||||
0: lambda i: print(i),
|
||||
1: lambda i: print("fizz"),
|
||||
2: lambda i: print("buzz"),
|
||||
3: lambda i: print("fizzbuzz"),
|
||||
}
|
||||
|
||||
for i in range(1, 101):
|
||||
action_index = 0
|
||||
|
||||
if i % 3 == 0:
|
||||
action_index += 1
|
||||
|
||||
if i % 5 == 0:
|
||||
action_index += 2
|
||||
|
||||
actions[action_index](i)
|
||||
|
|
|
|||
|
|
@ -1,13 +1 @@
|
|||
from itertools import cycle, izip, count, islice
|
||||
|
||||
fizzes = cycle([""] * 2 + ["Fizz"])
|
||||
buzzes = cycle([""] * 4 + ["Buzz"])
|
||||
both = (f + b for f, b in izip(fizzes, buzzes))
|
||||
|
||||
# if the string is "", yield the number
|
||||
# otherwise yield the string
|
||||
fizzbuzz = (word or n for word, n in izip(both, count(1)))
|
||||
|
||||
# print the first 100
|
||||
for i in islice(fizzbuzz, 100):
|
||||
print i
|
||||
[print("FizzBuzz") if i % 15 == 0 else print("Fizz") if i % 3 == 0 else print("Buzz") if i % 5 == 0 else print(i) for i in range(1,101)]
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
1 to: 100 do: [:n | |r|
|
||||
r := n rem: 15.
|
||||
Transcript show: (r isZero
|
||||
ifTrue:['fizzbuzz']
|
||||
ifFalse: [(#(3 6 9 12) includes: r)
|
||||
ifTrue:['fizz']
|
||||
ifFalse:[((#(5 10) includes: r))
|
||||
ifTrue:['buzz']
|
||||
ifFalse:[n]]]);
|
||||
cr].
|
||||
0 to: 100 do: [ :i |
|
||||
(i \\ 3 = 0 and: [ i \\ 5 = 0 ])
|
||||
ifTrue: [ Transcript show: 'FizzBuzz'; cr. ]
|
||||
ifFalse: [
|
||||
(i \\ 3 = 0)
|
||||
ifTrue: [ Transcript show: 'Fizz'; cr. ].
|
||||
(i \\ 5 = 0)
|
||||
ifTrue: [ Transcript show: 'Buzz'; cr. ].
|
||||
((i \\ 3 ~= 0) and: [ i \\ 5 ~= 0 ])
|
||||
ifTrue: [ Transcript show: i printString; cr. ].
|
||||
].
|
||||
].
|
||||
|
|
|
|||
|
|
@ -1,5 +1,10 @@
|
|||
fbz := (1 to: 100) asOrderedCollection.
|
||||
3 to: 100 by: 3 do: [:i | fbz at: i put: 'Fizz'].
|
||||
5 to: 100 by: 5 do: [:i | fbz at: i put: 'Buzz'].
|
||||
15 to: 100 by: 15 do: [:i | fbz at: i put: 'FizzBuzz'].
|
||||
fbz do: [:i | Transcript show: i; cr].
|
||||
1 to: 100 do: [:n | |r|
|
||||
r := n rem: 15.
|
||||
Transcript show: (r isZero
|
||||
ifTrue:['fizzbuzz']
|
||||
ifFalse: [(#(3 6 9 12) includes: r)
|
||||
ifTrue:['fizz']
|
||||
ifFalse:[((#(5 10) includes: r))
|
||||
ifTrue:['buzz']
|
||||
ifFalse:[n]]]);
|
||||
cr].
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
1 to: 100 do: [:i | |fb s|
|
||||
fb := {i isDivisibleBy: 3. i isDivisibleBy: 5. nil}.
|
||||
fb at: 3 put: (fb first | fb second) not.
|
||||
s := '<1?Fizz:><2?Buzz:><3?{1}:>' format: {i printString}.
|
||||
Transcript show: (s expandMacrosWithArguments: fb); cr].
|
||||
fbz := (1 to: 100) asOrderedCollection.
|
||||
3 to: 100 by: 3 do: [:i | fbz at: i put: 'Fizz'].
|
||||
5 to: 100 by: 5 do: [:i | fbz at: i put: 'Buzz'].
|
||||
15 to: 100 by: 15 do: [:i | fbz at: i put: 'FizzBuzz'].
|
||||
fbz do: [:i | Transcript show: i; cr].
|
||||
|
|
|
|||
5
Task/FizzBuzz/Smalltalk/fizzbuzz-7.st
Normal file
5
Task/FizzBuzz/Smalltalk/fizzbuzz-7.st
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
1 to: 100 do: [:i | |fb s|
|
||||
fb := {i isDivisibleBy: 3. i isDivisibleBy: 5. nil}.
|
||||
fb at: 3 put: (fb first | fb second) not.
|
||||
s := '<1?Fizz:><2?Buzz:><3?{1}:>' format: {i printString}.
|
||||
Transcript show: (s expandMacrosWithArguments: fb); cr].
|
||||
Loading…
Add table
Add a link
Reference in a new issue