쉬운내용입니다. 최적화된 코딩은 어떤방법이 있을까요.
리라
질문 제목 :최적화된 코딩을 위해 연습중입니다.
아래 코딩된 내용을 좀더 간략하게 줄일수 있을까요?
질문 내용 :
문제: 사용자로부터 두 개의 숫자를 입력받아 구구단을 출력하는 프로그램을 작성하자. 예를 들어 3과 5를 입력하면 3단,4단,5단을 출력하고 2와 4를 입력받으면 2단,3단,4단을출력한다. 단 사용자는 두개의 숫자를 입력할때 입력 순서에 자유로워야 한다. 즉 3과 5를 입력하건, 5와 3을 입력하건 같은 결과를 출력해야 한다.
이러한 문제가 있습니다.
아직 배열과 포인터를 들어가기 전이구요. 문제에 대해 아래처럼 만들어봤는데요..
좀더 코딩을 줄일수 있는 방법으로 어떤게 있을까요.. 이번건 답지가 없어서 비교를 못하겠네요.
그리고 아직 초보단계라 그런데.. 잘못된 코딩방법 같은게 있으면 지적 부탁드립니다.#includestdio.h
void x(int i, int j) //곱하기 연산을 수행하기 위한 함수 x 선언
{
int n,m;
for(m=0;i+m=j;m++) //입력된 두수 사이값을 구하기 위한 반복문
for(n=1;n10;n++) //구구단을 실행하고 출력하는 반복문
printf(%d x %d = %d \n, i+m,n,(i+m)*n);
}
int main(void)
{
int input1=0, input2=0, small=0, large=0; //입력받을 변수 input1과 input2 선언
printf(두수를 입력하세요 : );
scanf(%d %d, &input1,&input2);
if(input1=input2) //입력받은 수의 크기에 따라 작은수를 small변수에 큰수를 large 변수에 대입
{
small=input1;
large=input2;
x(small,large);
}
else
{
small=input2;
large=input1;
x(small,large);
}
return 0;
}
-
꿈빛
짧다고 해서 다 좋은 것은 아닙니다.
무조건 줄이기보다는 가장 효율적인 방법을 찾으셔야 할 것입니다. -
소1유물
small = min(input1, input2); large = max(input1, input2);
-
염소자리
알아보기 쉽게 코딩하려면 input1=input2 일경우 input1에서 input2까지 구구단을 출력하는 함수를, input1=input2 일경우 input2에서 input1까지 출력하는함수를, 같은경우 함수를 출력해주는 각각 함수를 정의하고 호출하는게 좋지않을지..