Let $M=\begin{pmatrix}
\begin{array}{cccccccc}
 0 & 0 & 1 & 1 & 1 & 1 & 1 &1\\
 0 & 0 & 1 & 1 & 1 & 1 & 1 &1\\
 1 & 1 & 0 & 0 & 0 & 1 & 1 &1\\
 1 & 1 & 0 & 0 & 0 & 1 & 1 &1\\
 1 & 1 & 0 & 0 & 0 & 1 & 1 &1\\
 1 & 1 & 1 & 1 & 1 & 0 & 0 &1\\
 1 & 1 & 1 & 1 & 1 & 0 & 0 &1\\
 1 & 1 & 1 & 1 & 1 & 1 & 1 &0\\
\end{array}
\end{pmatrix}\implies\begin{pmatrix}
\begin{array}{ccc}
 0\_{2\times2} & 1\_{2\times3} & 1\_{2\times2}&1\_{2\times1}\\
 1\_{3\times2} & 0\_{3\times3} & 1\_{3\times2}&1\_{3\times1} \\
 1\_{2\times2} & 1\_{2\times3} & 0\_{2\times2}&1\_{2\times1} \\
 1\_{1\times2} & 1\_{1\times3} & 1\_{1\times2}&0\_{1\times1} \\
 \end{array}
\end{pmatrix}$   
be a symmetric matrix whose entries are blocks(diagonal blocks entry must be zero and non-diagonal blocks entry must be one).   
 How to prove/disprove that all the eigenvalues of $M$ are not integer if and only if the diagonal blocks are not of the same order.  
Note that the number of diagonal blocks $\geq 3$ and order of diagonal blocks$\geq 1$ . 



Can a block matrix with at least 3 zero blocks of different size on the diagonal and 1's everywhere else have only integer eigenvalues?
There are some quantifiers unclear in your question, but regardless of how
to read it, your assertion is false. -- The smallest counterexample with 
blocks of pairwise distinct size all of whose eigenvalues are integers has
blocks of size $5$, $8$ and $12$, and set of eigenvalues $\{-10,-6,0,16\}$.
This can be found with [GAP](http://www.gap-system.org) as follows:


First we write a function to build your matrices for given sizes of
diagonal blocks:



```
ZeroBlockDiagMat := function ( sizes )

  local  M, k, n, i, j;

  M := NullMat(Sum(sizes),Sum(sizes)) + 1;
  n := 1;
  for k in [1..Length(sizes)] do
    M{[n..n+sizes[k]-1]}{[n..n+sizes[k]-1]} := NullMat(sizes[k],sizes[k]);
    n := n + sizes[k];
  od;
  return M;
end;

```

Then we search for counterexamples to your hypothesis:



```
gap> Filtered(Combinations([1..12],3),
>             c->ForAll(Factors(CharacteristicPolynomial(ZeroBlockDiagMat(c))),
>                       p->DegreeOfUnivariateLaurentPolynomial(p)=1));
[ [ 5, 8, 12 ] ]

```

And indeed:



```
gap> M := ZeroBlockDiagMat([5,8,12]);;
gap> P := CharacteristicPolynomial(M);
x_1^25-196*x_1^23-960*x_1^22
gap> Factors(P);
[ x_1-16, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1,
  x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1, x_1+6, x_1+10 ]

```

If you are also happy with an example where $2$ of the $3$ diagonal blocks
have the same size, then already the matrix with diagonal blocks of
sizes $1$, $1$ and $3$ works:



```
gap> M := ZeroBlockDiagMat([1,1,3]);;
gap> Display(M);
[ [  0,  1,  1,  1,  1 ],
  [  1,  0,  1,  1,  1 ],
  [  1,  1,  0,  0,  0 ],
  [  1,  1,  0,  0,  0 ],
  [  1,  1,  0,  0,  0 ] ]
gap> P := CharacteristicPolynomial(M);
x_1^5-7*x_1^3-6*x_1^2
gap> Factors(P);
[ x_1-3, x_1, x_1, x_1+1, x_1+2 ]

```

