Cześć. Mam problem otóż muszę napisać program uzupełniający Magiczny Kwadrat. Maksymalnie 3 niewiadome, kwadrat 3x3. Te dwa fragmenty pozwalają na obliczenie sumy i wypisanie jeśli trzy niewiadome są po przekątnej. Potrzebuje pomocy przy tym, aby w innym przypadku program chodził. Dodatkowo powinien być w miarę prosty w budowie. Pomożecie? Proszę.

#include <iostream>
using namespace std;
int main()
{
	int suma;
	int a,b,c,d,e,f,g,h,i;
	cin>>a;cin>>b;cin>>c;cin>>d;cin>>e;cin>>f;cin>>g;cin>>h;cin>>i;
	if(a+e+i<=0)
	{suma=(b+c+d+f+g+h)/2;
	a=suma-b-c;
	e=suma-d-f;
	i=suma-g-h;
	cout<<a<<b<<c<<"\n";
	cout<<d<<e<<f<<"\n";
	cout<<g<<h<<i;
	}
	else
	{if(c+e+g<=0)
	suma=(a+b+d+f+h+i)/2;
	c=suma-a-b;
	e=suma-d-f;
	g=suma-h-i;
	cout<<a<<b<<c<<"\n";
	cout<<d<<e<<f<<"\n";
	cout<<g<<h<<i;
	}
	return 0;
}