목차
■ 문제인식
■ 문제접근 방법 및 분석
■ 소스코드 및 주석
■ 결과화면
■ 느낀점
■ 문제접근 방법 및 분석
■ 소스코드 및 주석
■ 결과화면
■ 느낀점
본문내용
;
key++; //key값에 1을 더해준다
count++;
}
for(int i=0;i
{ count++;
for(int j=0;j
{
cout<
count++;
}
cout<
}
}
}
int main()
{
int n; //행렬값 입력
cout<<"****매직스퀘어 프로그램****"<
cout << "*구하고자 하는 숫자를 입력하세요* "<
cout<<"입력: ";
cin>>n;
cout<
Magicsquare(n); //magicsquare함수 호출
cout<
cout<<"count: "<
}
■ 결과화면
1. n값이 3일 때
2. n값이 5일 때
3. n값이 7일 때
■ 느낀점
이번 과제는 매직스퀘어를 구현하고, 각 단계수를 카운터하여 파악하는 것이었다. 매직스퀘어를 구현하는데 있어서는 교수님이 시키신대로 교재에 나와있는 소스코드 중 핵심적인 부분만 따와 구현하였더니 예상보다 빨리 프로그램을 실행할수 있었다. 하지만 교재에 나와있던 throw문을 사용하는데 있어 어려움이 있어 이 부분은 다르게 구현하였다. 단계수를 구할때는 if, for, while문에만 단계수를 계산하였으며, 프로그램 실행결과 행렬의 n값에 따라 단계수가 크게 증가하는 것을 알수 있었다. for문과 while문을 단계수로 나타내었을 때 단계수는 2에 의해 계속 증가하며, 이는 O()으로 나타낼수 있었다.
key++; //key값에 1을 더해준다
count++;
}
for(int i=0;i
for(int j=0;j
cout<
}
cout<
}
}
int main()
{
int n; //행렬값 입력
cout<<"****매직스퀘어 프로그램****"<
cin>>n;
cout<
cout<
■ 결과화면
1. n값이 3일 때
2. n값이 5일 때
3. n값이 7일 때
■ 느낀점
이번 과제는 매직스퀘어를 구현하고, 각 단계수를 카운터하여 파악하는 것이었다. 매직스퀘어를 구현하는데 있어서는 교수님이 시키신대로 교재에 나와있는 소스코드 중 핵심적인 부분만 따와 구현하였더니 예상보다 빨리 프로그램을 실행할수 있었다. 하지만 교재에 나와있던 throw문을 사용하는데 있어 어려움이 있어 이 부분은 다르게 구현하였다. 단계수를 구할때는 if, for, while문에만 단계수를 계산하였으며, 프로그램 실행결과 행렬의 n값에 따라 단계수가 크게 증가하는 것을 알수 있었다. for문과 while문을 단계수로 나타내었을 때 단계수는 2에 의해 계속 증가하며, 이는 O()으로 나타낼수 있었다.