본문 바로가기
C, C++

[C/C++][코딩연습] 2개의 실수를 입력 받은 후, 2개의 실수 사이의 정수를 출력하시오.

by I!i어★떤☆날★에Ι!i 2022. 4. 16.
반응형

2개의 실수를 입력받는다. 그다음 입력받은 2개의 실수 사이의 정수를 출력하는 코드를 연습해 보자.

 

수에는 실수와 정수가 있다. C언어에서 정수에 대한 변수는 short, int 등의 변수에 저장하여 사용하며, 실수는 float와 double 변수를 사용한다. 이러한 자료형은 컴퓨터의 운영체제(OS)나 시스템에 따라서 달라지기도 하므로 복잡한 프로그램에서는 주의해야 한다.

 

반응형

 

* 2개의 실수를 입력받아 정수 출력

 

2개의 실수를 입력받을 때에는 float이나 double을 사용해야 한다. float는 4 bytes의 범위를 지원하며, double은 8 bytes의 범위의 수를 지원한다. float의 범위가 이미 1.2E-38 ~ 3.4E+38 이므로, 일반 계산에서는 float를 사용해도 충분하다.

 

또한 정수는 char, int, short, long 등의 자료형을 사용해야 한다. char는 1 bye이고 short는 2 bytes, int는 4byte의 수를 표현할 수 있다.

#include <stdio.h>

int main(void)
{
	float a, b;
	int i, sum = 0;
    
	printf("두개의 실수를 입력하세요 : ");
	scanf("%f %f", &a, &b);
	for (i=(int)a + 1; i<=(int)b; i++) {
		printf("%d ", i);
		sum += i;
	}

	printf("\n%f와 %f 사이의 정수의 합계는 %d 입니다.\n", a, b, sum);

	return 0;
}
​

scanf로 두 실수를 입력받고 실수형 변수 a, b에 저장하였다. 그리고 실수 a를 정수로 강제 형변환 한 후, a ~ b사이의 정수를 구하기 위해 a+1을 하였다. 그리고 실수 b를 정수로 강제로 형변환한 값까지 계산하면 된다.

 

결과가 잘 출력되는 것을 확인할 수 있다.

C:\Project\Study>
C:\Project\Study>gcc -o temp temp.c

C:\Project\Study>
C:\Project\Study>temp
두개의 실수를 입력하세요 : 1.232 5.3322
2 3 4 5 
1.232000와 5.332200 사이의 정수의 합계는 14 입니다.

C:\Project\Study>

 

반응형

'C, C++' 카테고리의 다른 글

GPS데이터로 거리계산하기 - 소스코드  (0) 2022.04.06

댓글