Send Feedback
Skip to content

div

Integer division

x div y    div[x;y]

Returns the greatest whole number that does not exceed x%y.

q)7 div 3
2

q)7 div 2 3 4
3 2 1

q)-7 7 div/:\:-2.5 -2 2 2.5
2  3  -4 -3
-3 -4 3  2

Except for char, byte, short, and real, preserves the type of the first argument.

q)7f div 2
3f
q)6i div 4
1i
q)2014.10.13 div 365
2000.01.15

The exceptions get converted to ints.

q)7h div 3
2i
q)0x80 div 16
8i
q)"\023" div 8
2i

div is a multithreaded primitive.

Implicit iteration

div is an atomic function.

q)(10;20 30)div(3 4; -5)
3  2
-4 -6

It applies to dictionaries and keyed tables.

q)kt:`k xkey update k:`abc`def`ghi from t:flip d:`a`b!(10 -21 3;4 5 -6)

q)d div 5
a| 2 -5 0
b| 0 1  -2

q)kt div 5
k  | a  b
---| -----
abc| 2  0
def| -5 1
ghi| 0  -2

Domain and range

The following shows the resulting output type given the input type of x and y. The character representation of the datatypes referenced can be found here.

 | b g x h i j e f c s p m d z n u v t
-| -----------------------------------
b| i . i i i i i i i . i i i i i i i i
g| . . . . . . . . . . . . . . . . . .
x| i . i i i i i i i . i i i i i i i i
h| i . i i i i i i i . i i i i i i i i
i| i . i i i i i i i . i i i i i i i i
j| j . j j j j j j j . j j j j j j j j
e| f . f f f f f f f . f f f f f f f f
f| f . f f f f f f f . f f f f f f f f
c| i . i i i i i i i . i i i i i i i i
s| . . . . . . . . . . . . . . . . . .
p| p . p p p p p p p . p p p p p p p p
m| m . m m m m m m m . m m m m m m m m
d| d . d d d d d d d . d d d d d d d d
z| z . z z z z z z z . z z z z z z z z
n| n . n n n n n n n . n n n n n n n n
u| u . u u u u u u u . u u u u u u u u
v| v . v v v v v v v . v v v v v v v v
t| t . t t t t t t t . t t t t t t t t

The possible range of output types are dfijmnptuvz.


% Divide, div, reciprocal

Mathematics

Q for Mortals: §4.8.1 Integer Division div and Modulus mod