create arr 9 , 1 , -1 , -3 , 4 , 0 , 5 , -6 , -7 , 9 ,
: each: ( array ) r> swap
dup @ cells swap cell+ dup >r + r>
do i @ swap >r r@ execute r> cell +loop drop ;
: negatives ( array - count ) 0 swap each: 0< if 1+ then ;
: zeroes ( array - count ) 0 swap each: 0= if 1+ then ;
: positives ( array - count ) 0 swap each: 0 > if 1+ then ;
: main
cr ." Negatives=" arr negatives .
cr ." Zeroes=" arr zeroes .
cr ." Posiives=" arr positives . ;
main
Y3JlYXRlIGFyciA5ICwgMSAsIC0xICwgLTMgLCA0ICwgMCAsIDUgLCAtNiAsIC03ICwgOSAsCgo6IGVhY2g6ICAoIGFycmF5ICkgcj4gc3dhcAogIGR1cCBAIGNlbGxzIHN3YXAgY2VsbCsgZHVwID5yICsgcj4KIGRvIGkgQCBzd2FwID5yIHJAIGV4ZWN1dGUgcj4gY2VsbCArbG9vcCBkcm9wIDsKCjogbmVnYXRpdmVzICggYXJyYXkgLSBjb3VudCApIDAgc3dhcCAgZWFjaDogMDwgaWYgMSsgdGhlbiA7CjogemVyb2VzICggYXJyYXkgLSBjb3VudCApIDAgc3dhcCBlYWNoOiAwPSBpZiAxKyB0aGVuIDsKOiBwb3NpdGl2ZXMgKCBhcnJheSAtIGNvdW50ICkgMCBzd2FwIGVhY2g6IDAgPiBpZiAxKyB0aGVuIDsKCjogbWFpbgogY3IgLiIgTmVnYXRpdmVzPSIgYXJyIG5lZ2F0aXZlcyAuCiBjciAuIiBaZXJvZXM9IiBhcnIgemVyb2VzIC4KIGNyIC4iIFBvc2lpdmVzPSIgYXJyIHBvc2l0aXZlcyAuIDsKCm1haW4K