아까 밑에 글에 작성한 함수에서 컴파일 오류가 나지 않게끔 코드를 수정했는데 함수의 기능적 측면으로 봤을 때 적절히 나눈건지 판단 좀 부탁드리겠습니다.
#include <stdio.h>
void Sort(int ary[])
{
int odd=0, even=9;
int i, num;
for(i=0; i<10; i++)
{
printf("입력: ");
scanf("%d", &num);
if(num%2==0)
{
ary[even]=num;
even--;
}
else
{
ary[odd]=num;
odd++;
}
}
}
int main(void)
{
int arr[10];
int i;
printf("총 10개의 숫자 입력 \n");
Sort(arr);
for(i=0; i<10; i++)
printf("%d ", arr[i]);
printf("\n");
return 0;
}
얌마 니가 생각할 땐 뭐가 문젠데? 니가 수학에서 배운 함수를 생각해 봐라
기억해하나만잘하자
입력, 처리, 출력으로 기능 구분해서 잘 나눠보시길...
sort: 짝수 홀수 구분하기 위한 함수일텐데 거기안에서 입력을 받고 있어요. 즉, 입력을 배열에 받은다음에 그 배열을 sort에 넣어서 정렬을 하면 되겠죠?
아래 문제가 있었네요.. 저런 문제면 굳이 함수의 기능 나눈다기 보다 지금처럼 하나의 함수로 처리해도 상관없을꺼같네요. 다만 메서드이름이 직관적이지가 않네요. 정렬삽입이니 sortedInput 이라든가 네이밍 잘생각해서 지어보세요.