본문 바로가기
지식인 문제풀이C_C++_파이썬

C언어 종료 입력시까지 최대값,최소값,합,평균 구하기

by 코드덕후 2022. 9. 3.
728x90

 

대표사진 삭제

사진 설명을 입력하세요.

이미지 썸네일 삭제
C언어 과제 풀어주세요

과제 풀어주시면감사하겠습니다^^

kin.naver.com

대표사진 삭제

사진 설명을 입력하세요.

 

의사코드

화면에 명령메뉴를 출력한다.

화면으로부터 숫자를 빈칸단위로 입력받는다

IF 입력받은 값이 -1이라면 THEN

반복을 중지한다.(break;

ELSE

IF입력이 처음이라면 THEN

최소값을 입력값으로 설정

최댁닶을 입려값으로 설정

ELSE

IF 입력값이 기존 MIN값보다 작다면 THEN

최소값을 입력값으로 변경

ENDIF

IF 입력값이 기존 MAX값보다 크다면 THEN

최대값을 입력값으로 변경

ENDIF

합변수에 입력값을 더해준다

평균을 구하기위해서 입력변수를 카운트 합니다.

ENDIF

 

화면에 합,평균(합/입력개수(둘중하나는 실수로연산),최대값,최소값을 출력한다.

 

의사코드를 작성한다면 위와같을것 같습니다.

 

이제 코드를 짜보겠습니다.

#include <stdio.h>

int main(void)
{
	int sum = 0, min = 0, max= 0,inputCnt = 0,number;

	printf("양수를 입력하세요.(입력을 종료하려면 -1을 입력하세요.)\n");
	printf("--->");
	while (1)
	{
		scanf_s("%d", &number);
		//< 종료
		if (number == -1)
			break;

		//< 최대값 확인 /최소값 처음은 그냥설정
		if (inputCnt == 0)
		{
			max = number;
			min = number;
		}
		else
		{
			if (max < number)
			{
				max = number;
			}
			//< 최소값 확인
			if (min > number)
			{
				min = number;
			}
		}
				//< 합
		sum += number;

		inputCnt++;

	}

	printf("합계:%d\t평균:%.2f\t,최대값:%d,최소값:%d\n", sum, (float)sum / inputCnt, max, min);
}
 
 

 

대표사진 삭제

사진 설명을 입력하세요.

 

이번문제는 크게 어렵지 않지만 의사코드(수도코드)까지 작성해보았습니다.

앞으로도 수도코드를 최대한 작성하도록 하겠습니다.

 

 

728x90
반응형
LIST

댓글