CLR로 c++/c# 결합 후 공학용 계산기 코딩하기

CLR로 c++/c# 결합 후 공학용 계산기 코딩하기

작성일 2023.06.21댓글 1건
    게시물 수정 , 삭제는 로그인 필요

비쥬얼 스튜디오 2022에서
Clr 라이브러리 .net framework 생성 후 컴파일-> dll 생성 후 참조추가로 c++/c# 결합 후 공학용 계산기 코딩하기 부탁드립니다.
인터페이스는 이런식으로....
사칙연산 및 나누기 0일때 예외처리,
삼각함수 sin cos tan, 로그함수, 로그함수 예외처리 까지만 해주시면 감사합니다.....




profile_image 익명 작성일 -

CLR을 사용하여 C++/C#을 결합하여 공학용 계산기를 만드는 것은 흥미로운 프로젝트입니다. 아래는 예시 코드입니다.

C++ 코드:

```cpp

#include 'stdafx.h'

#include <cmath>

using namespace System;

namespace CalculatorLibrary

{

public ref class Calculator

{

public:

static double Add(double a, double b)

{

return a + b;

}

static double Subtract(double a, double b)

{

return a - b;

}

static double Multiply(double a, double b)

{

return a * b;

}

static double Divide(double a, double b)

{

if (b == 0)

{

throw gcnew DivideByZeroException();

}

return a / b;

}

static double Sin(double a)

{

return sin(a);

}

static double Cos(double a)

{

return cos(a);

}

static double Tan(double a)

{

return tan(a);

}

static double Log(double a)

{

if (a <= 0)

{

throw gcnew ArgumentException('The argument must be greater than 0.');

}

return log(a);

}

};

}

```

C# 코드:

```csharp

using System;

using CalculatorLibrary;

namespace CalculatorApp

{

class Program

{

static void Main(string[] args)

{

try

{

Console.WriteLine('Enter the first number:');

double a = double.Parse(Console.ReadLine());

Console.WriteLine('Enter the second number:');

double b = double.Parse(Console.ReadLine());

Console.WriteLine('Enter the operation (+, -, *, /, sin, cos, tan, log):');

string operation = Console.ReadLine();

double result = 0;

switch (operation)

{

case '+':

result = Calculator.Add(a, b);

break;

case '-':

result = Calculator.Subtract(a, b);

break;

case '*':

result = Calculator.Multiply(a, b);

break;

case '/':

result = Calculator.Divide(a, b);

break;

case 'sin':

result = Calculator.Sin(a);

break;

case 'cos':

result = Calculator.Cos(a);

break;

case 'tan':

result = Calculator.Tan(a);

break;

case 'log':

result = Calculator.Log(a);

break;

default:

Console.WriteLine('Invalid operation.');

break;

}

Console.WriteLine('Result: ' + result);

}

catch (Exception ex)

{

Console.WriteLine('Error: ' + ex.Message);

}

Console.ReadLine();

}

}

}

```

위 코드에서는 `Calculator` 클래스를 정의하여 기본적인 수학 함수와 예외 처리를 구현합니다. C# 코드에서는 `Calculator` 클래스를 사용하여 사용자 입력을 받고 결과를 출력합니다.

이 코드를 Visual Studio에서 빌드하고 DLL 파일을 생성한 후, C# 프로젝트에서 참조로 추가하여 사용할 수 있습니다.

C#.NET 관련 질문입니다...^^ 개념...

... 연습삼아 코딩도 해보고 그렇게 혼자 스터디하고... 비주얼 C++의 성능을 결합한 새로운 차세대 주력 언어입니다. --- C#의 장점 --- C#은 네트워크 환경에서 개발자의...

c# 과 java 에 대하여...

... 돌아가듯이, C#도 닷넷 플랫폼 내의 CLR(Common Language... 일단 Class란, 필드와 메소드의 결합체로써... C++을 다뤄보신 분들은 알겠지만, C#C++의 클래스 상속...

C# 공부중입니다. .EXE파일을 열어서...

... EXE 파일을 C#의 Project로 변환하거나 안의 코딩한 소스를 볼수 있는 방법을... C#, VB .NET, Managed Extension C++ 등) .NET CLR 코드를 디스어셈블리 할 수 있습니다. .NET...

c++ Windows Forms Application이 없어요

... 추가질문 스샷에보시면 왜 C#처럼 C++이 템플릿의... Win32 Project로 프로젝트 생성 WinAPI를 사용하여... 오로지 키보드로 코딩만 해서 그 화면을 상상해가며 함수를...

Microsoft Visual C++ Runtime Library...

... Visual C++ Runtime Library Error Microsoft Visual C++ Runtime... 1 파일을 편집기에서 다시 로드할 때 인코딩 변경... 연결합니다. 다음 SQL 명령을 실행합니다. exec sp...

C언어의 종류...

... C, C++, C#은 컴퓨터 언어로 각기 다른 언어입니다. 개발... 어떻게 결합되는지, 품사는 어떤 것이 있으며 주어... 계산기, 공학용 계산기, 스프레드시트 프로그램을 사용할...

프로그래밍.. 그건 꿈..?

... 공학용 계산기만 있으면 다 되는 일이지만.. 그래도... 그리고 기초플러스 한권정도 사서 옆에다가 놓고 코딩을... C를 배우시면 객체지향언어인 C++ 을 사서 보세요. 물론...

프로그래밍 공부 질문

... 그래서 결국 C++가 아닌 C#언어로 프로그래밍 첫 공부를... 오류없이 코딩해내면 되는 것이죠. 알고리즘은 "사고력... 개발이 결합된 수업으로 스피드하게 지식을 쌓고...