Determine se dois retângulos se sobrepõem?

Eu estou tentando escrever um programa C ++ que leva as seguintes entradas do usuário para construir retângulos (entre 2 e 5): altura, largura, x-pos, y-pos. Todos esses retângulos existirão paralelos aos eixos xe y, ou seja, todas as suas arestas terão inclinações de 0 ou infinito. Eu tentei...