728x90
반응형

문제 : https://codeup.kr/problem.php?id=1547

 

[기초-함수작성] 함수로 prime/composite 판별하기

*주의사항 : 이 (함수 제출형) 문제는 함수 부분만 작성해서 제출해야 오류 없이 채점이 됩니다. 미리 작성되어있는 코드를 읽고 해석해서, 함수 부분만 작성해서 제출하면 됩니다. 작성한 함수��

codeup.kr

문제 설명

*주의사항 : 이 (함수 제출형) 문제는 함수 부분만 작성해서 제출해야 오류 없이 채점이 됩니다.
미리 작성되어있는 코드를 읽고 해석해서, 함수 부분만 작성해서 제출하면 됩니다.
작성한 함수의 테스트를 위해서는 제시된 코드를 복사해 사용하면 되고, 제출은 함수 부분만 하세요.

------

1보다 큰 자연수 1개를 입력 받아
소수인 경우 prime, 합성수인 경우 composite를 출력하시오.

단, 함수형 문제이므로 함수 prime()만 제출하시오.

참고
int 형 정수 값 1개를 전달 받아
prime/composite 를 구분해 출력할 수 있도록 하는 bool 형 함수 prime()은 다음과 같이 설계할 수 있다.

bool prime(int k)
{
  int i;
  for(i=2; i<k; i++)
    if(k%i == 0) //나누어 지면 중단 
      break;
  //k-1까지 모두 안 나뉘어져도 반복 중단 됨
  return i==k;
}


[함수형 문제란??]
함수형 문제는 기본적인 main() 등은 미리 작성되어 있습니다.
미리 작성되어 있는 프로그램은 다음과 같습니다.

미리 작성된 프로그램을 복사해 붙여 넣은 후 함수 부분을 설계하여 작성해 넣고,
테스트 한 후, 함수 부분만 제출하세요.

[미리 작성된 프로그램] - C/C++로 제출하는 경우에만 추가됩니다.#include <stdio.h> int n; // 이 부분에 들어가야 될 코드를 작성하여 제출int main() { scanf("%d", &n); if(prime(n)) printf("prime"); else printf("composite"); return 0; }※ JAVA/Python으로 제출시 위 코드가 추가되지 않습니다.

 

[그림1] 입 출력 형식 및 출력

 

 

정답코드 : 

# include <stdbool.h>

bool prime(int k)
{
	int i;
	
	for(i = 2; i<=k; i++)
	{
		if(k%i == 0)
			break;
	}
	return i == k;
}

 

전체코드 : 

# include <stdio.h>
# include <stdbool.h>
int n;

bool prime(int k)
{
	int i;
	
	for(i = 2; i<=k; i++)
	{
		if(k%i == 0)
			break;
	}
	return i == k;
}

int main()
{
  scanf("%d", &n);
  if(prime(n)) 
  		printf("prime");
  else 
  		printf("composite");
  return 0;
}

 

 

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기