1. 두 개의 정수를 입력받고 두 정수 사이에 5의 배수의 개수를 출력하는 프로그램을 작성해보겠습니다.
출력) 정수(2개) 입력 : 5 21
출력 : 3
두값사이의 5의 배수는 10 15 20 입니다!
두값사이이니 두값은 포함하지 않겠습니다!! 그리고 중요한점은 5 21일 경우도 있고 21 5일 경우도 있습니다
앞자리가 큰수가 나오든 작은수가 나오든 두값사이의 5의 배수를 구해야합니다
#include<stdio.h>
int main()
{
int n1, n2, a=0;
printf("정수(2개) 입력 : ");
scanf("%d %d", &n1, &n2);
if(n1>n2)
{
a = n1 - n2;
a = a/5;
}
else if(n1<n2)
{
a = n2 - n1;
a = a/5;
}
if(n1%5==0||0==n2%5) a = a+1;
printf("출력 : %d\n", a);
return 0;
}
추가로 main의 계산하는 부분을 따로 함수를 선언하여 main아래에 선언해보겠습니다
추가로 포인터를 사용하여 main 함수의 변수 값을 바꾸는 형태로 해보겠습니다
#include<stdio.h>
void processCount(int *pn1, int *pn2, int *pCount);
int main()
{
int n1, n2, count = 0;
printf("정수(2개) 입력 : ");
scanf("%d %d", &n1, &n2);
processCount(&n1, &n2, &count);
printf("Multiple of 5 : %d \n", count);
return 0;
}
void processCount(int *pn1, int *pn2, int *pCount)
{
int temp, i;
if(*pn1>*pn2)
{
temp = *pn1;
*pn1 = *pn2;
*pn2 = temp;
}
for(i=(*pn1+1);i<(*pn2);i++)
{
if(i%5==0)
{
*pCount = *pCount + 1;
}
}
return ;
}
'Embeded C > C언어 예제' 카테고리의 다른 글
C언어 두 개의 정수를 입력받고 두 정수 사이의 부호를 바꿔가면서 계산한 식과 결과를 출력 (0) | 2011.06.09 |
---|---|
C언어 입력된 정수의 2의 보수를 구하여 10진수, 16진수 형태로 출력하는 프로그램 (0) | 2011.06.09 |
C언어 문자열 중첩 for문 활용예제 -응용편- 수직막대그래프 (0) | 2011.06.09 |
C언어 문자열 중첩 for문 활용예제 -기본편- (0) | 2011.06.09 |
C언어 정수를 입력 받아 소수 와 합성수 판별하는 프로그램 (1) | 2011.06.01 |