We know that for a cyclic group $G$, if $G=A\oplus B$, then for some subgroups $H$ of $G$, We have $G/H=(A+H)/H\oplus (B+H)/H.$ But, if we know that for a subgroup $H$ of $G$,  $G/H=(A+H)/H\oplus (B+H)/H$, where $H\cap A$ is a subgroup of $G$. Then what conditions do we need to make  $G=A\oplus B$?