Considering the header size of IP fragment is $20$ B
MTU = $576$ B out of which $20$ B will be for header
So maximum data we can send = $576 – 20$ = $556$ B and since this is not multiple of $8$ we will consider nearest multiple of $8$ and $\leq 556$ i.e. $552$ B
Since you mentioned in question size of IP packet is $21000$ B, first we will delete the IP header from it to get the data = $21000-20 = 20980$ B
So number of fragments = $\lceil{\frac{20980}{552}}\rceil = 39$