a, Giả sử hỗn hợp chỉ chứa Mg. $\Rightarrow n_{hh}< 0,1575(mol)$
$\Rightarrow n_{HCl}< 0,315< 0,5(mol)$
Do đó sau phản ứng axit còn dư
b, Gọi số mol Mg và Al lần lượt là a;b(mol)
$\Rightarrow 24a+27b=3,78$
Bảo toàn e ta có: $2a+3b=0,39$
Giải hệ ta được $a=0,045;b=0,1$
$\Rightarrow m_{Mg}=1,08(g);m_{Al}=2,7(g)$