12
24

문제 조건

기능
배터리 잔량(0~100)을 관리
배터리 사용 및 충전.
초기 배터리는 0

구현할 메소드
배터리 잔량을 반환하는 메서드
배터리를 사용하는 매서드 (5 감소)
배터리를 충전하는 메서드 (7충전)

초기 상태
배터리 잔량의 기본값 100

 

결과창

 

코드

더보기
#include <iostream>

using namespace std;

class Battery
{
private:
	int charge;

public:
	Battery(int initialCharge = 100) : charge(initialCharge)
	{
		if (charge < 0)
		{
			charge = 0;
		}
		else if (charge > 100)
		{
			charge = 100;
		}
	}

	int getCharge() const
	{
		return charge;
	}

	void useBattery()
	{
		if (charge >= 5)
		{
			charge -= 5;
		}
		else
		{
			charge = 0;
		}

		cout << "Battery used. Current charge : " << charge << endl;
	}

	void chargeBattery()
	{
		if (charge <= 93)
		{
			charge += 7;
		}
		else
		{
			charge = 100;
		}

		cout << "Battery charged. Current charge: " << charge << endl;
	}


};

int main()
{
	Battery battery;

	cout << "Initial charge: " << battery.getCharge() << endl;

	battery.useBattery();
	battery.useBattery();

	battery.chargeBattery();
	battery.useBattery();

	return 0;
}

 

코드 해설

Battery 클래스를 하나 생성한다. 

private로 charge 변수를 하나 만든다.

 

먼저 생성자로 값을 먼저 100으로 지정해준다. 그리고 0 이하면 0으로 고정하고, 100이상이면 100으로 고정해준다.

 

getCharge 함수를 만들어서 현재 charge값을 불러올 수 있다.

 

useBattery 함수로 charge 값이 5이상 까지만 5감소가 되게 한다. 그 이하는 0이 되게 한다.

 

chargeBattery 함수로 93 이하면 7증가하게 한다. 그 이상은 100으로 수치를 고정한다.

 

나머지는 main에서 호출을 해준다.

'코딩 > 코드 문제 묶음' 카테고리의 다른 글

[프로그래머스] 약수의 개수와 덧셈  (2) 2025.01.04
[프로그래머스] 제일 작은 수 제거하기  (0) 2024.12.31
C++ 연습 문제_2  (1) 2024.12.23
C++ 연습 문제_1  (1) 2024.12.23
오늘의 코딩 3일차  (1) 2023.10.20
COMMENT