magic_square::put_var()
{
cout<<"행 입력"<<endl;
cin>>menu;
if(menu<0) cout<<"행은 0보다 커야 합니다.";
else if(menu>size) cout<<"행은 크기보다 작아야 합니다.";
else
{
column=menu;
cout<<"열 입력"<<endl;
cin>>menu;
if(menu<0) cout<<"열은 0보다 커야 합니다.";
else if(menu>size) cout<<"열은 크기보다 작아야 합니다.";
else
{
row=menu;
cout<<"숫자 입력"<<endl;
cin>>menu;
if(menu<0) cout<<"숫자는 0보다 커야 합니다.";
else if(menu>pow(size,2)) cout<<"숫자는 크기의 제곱 이하여야 합니다.";
else
{
square[column-1][row-1]=menu;
}
}
}
}
너무 더러워보임..
나같으면 if를 성립조건을 주고 나머지를 else로 처리해서 맨밑에서 정리할듯
성능이 상관 없다면 try-catch를 쓰는 건 어떰
이거혹시 돌리면 마나가 빵꾸난다는 마빵진인가
이런거 함수형으로 해결하면 이쁘게 되는데
(validator, onsuccess, onfail) => { param => if(validator(param)) { onsuccess(param); } else { onfail(param); } };이런식으로
마방진인건 대체 어떻게 안겨.. 다들 ㄳㄳ.
이름이 마방진 아닝교 ㅋㅋ
아 맞네 ㅋㅋ
기본 템플릿은 비슷하니까 helper function만들어서 사용하면 5줄 안으로 정리가능할듯?