반응형
극소값 카운트 출력
#include <iostream>
#include <string>
using namespace std;
int main()
{
int data[100];
int n = 0, k;
while (true)
{
cin >> k;
if (k == -1)
break;
data[n++] = k;
}
int count = 0;
if (data[0] <= data[1])
count++;
for (int i = 1; i < n - 1; i++)
{
if (data[i - 1] >= data[i] && data[i] <= data[i + 1])
count++;
}
if (data[n-2] >= data[n - 1])
count++;
cout << count << endl;
}
길이가 100인 data 배열을 선언합니다. 이거는 각 입력받은 수의 앞 뒤를 비교해야 하기 때문에 하나하나씩 입력할 때마다 해결을 할 수 없는 구조입니다.
변수 n을 0으로 초기화하고 while 루프를 사용하여 사용자로부터 입력을 받습니다. 입력이 -1이면 루프를 탈출하며 data[n++]를 통해 입력 받는 수가 몇개인지 알아냅니다.
그 다음 for문을 통해 구해줍니다. 먼저 앞 뒤의 if문을 통해 맨 첫째 자리수와 끝 자리 수를 비교해서 출력을 해주고 중간에는 for문을 통해 앞뒤를 분석해서 출력해주는 함수를 만듭니다.
반응형
'IT 프로그래밍 > 객체지향프로그래밍' 카테고리의 다른 글
객체지향프로그래밍 16번, 17,번, 18번, 19번, 22번, 23번, 24번 (0) | 2024.04.20 |
---|---|
객체지향 프로그래밍 13번 , 14번, 15번 (0) | 2024.04.20 |
[C++]음이 아닌 정수 중 최소값 출력, 이진수 변환 출력 (0) | 2024.04.17 |
[C++] Finding the Smallest Positive Integer (0) | 2024.04.17 |
[C++] 세 정수 오름차순 정렬 (0) | 2024.04.17 |