   #!/usr/bin/python3
import random
def read_integer():
    while True:
        try:
            m=int(input("ΔΩΣΕ m:"))
            if m<=10:
                raise ValueError("ΤΟ m>10")
            return m
        except Exception as e:
            print("Error {e}")
            exit(1)
def generate_complex_2d_list(m):
    return [[ complex(round(random.uniform(-1,1),2),
    round(random.uniform(-1,1),2)) for _ in range(m)]
    for _ in range(m)]

def split_real_imag(matrix):
    real_parts=[]
    imag_parts=[]
    for row in matrix:
        for z in row:
            real_parts.append(z.real)
            imag_parts.append(z.imag)
    return real_parts,imag_parts

def main():
    m=read_integer()
    complex_matrix=generate_complex_2d_list(m)
    print(complex_matrix)
    for row in complex_matrix:
        print([f"{z.real}+{z.imag}j" for z in row])
    real_parts,imag_parts=split_real_imag(complex_matrix)
    print(f"Max real={max(real_parts)}, Mean imag={sum(imag_parts)/len(imag_parts)}")
if __name__=="__main__":
    main()
