Задания по ООП с решением

выкладываю решения заданий по ООП для тех кому трудно, не претендую на звание программиста в принципе, так что всё сделано “лишь бы проходило тесты”
если не открываются файлы ПКМ, открыть с помощью, любая открывашка пдф, докину еще файлы, когда примут решения
ООП.rar (1.3 МБ)

5 Likes

Просмотрел задачки, часть pdf поехала. А в последней задачке какой-то уж слишком мудреный код, переписал её.

Задание 3_2_5_1

Calculator.h
#pragma once

class Calculator
{
private:
	int Result = 0;

public:
	void Operation(int A, int B, char OperationSymbol);
	void Operation(int Number, char OperationSymbol);

	int GetResult() const;

private:
	static int Calc(int A, int B, char OperationSymbol);
};
Calculator.cpp
#include "Calculator.h"

void Calculator::Operation(int A, int B, char OperationSymbol)
{
	Result = Calc(A, B, OperationSymbol);
}

void Calculator::Operation(int Number, char OperationSymbol)
{
	Result = Calc(Result, Number, OperationSymbol);
}

int Calculator::GetResult() const
{
	return Result;
}

int Calculator::Calc(int A, int B, char OperationSymbol)
{
	switch (OperationSymbol)
	{
	case '+':
		return A + B;
	case '-':
		return A - B;
	case '*':
		return A * B;
	case '%':
		return A % B;
	default:
		return 0;
	}
}
Main.cpp
#include "Calculator.h"
#include <cstdio>

void main()
{
	Calculator calc;

	char operationSymbol(' ');
	int firstNumber(0), secondNumber(0);

	scanf_s("%d", &firstNumber);
	scanf_s(" %c", &operationSymbol, 1);
	scanf_s(" %d", &secondNumber);

	calc.Operation(firstNumber, secondNumber, operationSymbol);

	while (true)
	{
		scanf_s(" %c", &operationSymbol, 1);
		if (operationSymbol == 'C')
		{
			break;
		}
		scanf_s(" %d", &secondNumber);


		calc.Operation(secondNumber, operationSymbol);
	}
	printf("%d", calc.GetResult());
}
5 Likes

да я сдал уже, но всё равно большое спасибо)

1 Like

не открывается

Поставь у каждого файла в архиве расширение pdf