>백엔드 개발 >Golang >Go 언어를 사용하여 기본 산술 연산자 구현

Go 언어를 사용하여 기본 산술 연산자 구현

王林
王林원래의
2023-12-23 14:52:20708검색

Go 언어를 사용하여 기본 산술 연산자 구현

Go 언어는 오픈 소스, 정적으로 유형이 지정된 컴파일 언어로 단순성, 효율성 및 손쉬운 확장으로 인해 광범위한 관심과 사용을 받아왔습니다. 이 기사에서는 Go 언어를 사용하여 간단한 사칙연산 계산기를 작성하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.

먼저, 연산식과 연산자를 표현하기 위한 몇 가지 기본 데이터 구조를 정의해야 합니다. 구조를 사용하여 연산자와 피연산자를 나타낼 수 있고 열거형을 사용하여 연산자의 값 범위를 제한할 수 있습니다.

type Operator int

const (
    Add Operator = iota
    Subtract
    Multiply
    Divide
)

type Operand struct {
    value float64
}

type Expression struct {
    operator Operator
    leftOperand  Operand
    rightOperand Operand
}

다음으로, 사용자가 입력한 연산 표현식을 구문 분석하고 Expression 객체를 반환하는 함수를 구현할 수 있습니다.

func parseExpression(input string) (Expression, error) {
    // 解析输入字符串并生成Expression对象
    // 如果输入不合法则返回错误信息
}

그런 다음 주어진 Expression 개체를 기반으로 결과를 계산하는 계산 함수를 구현할 수 있습니다.

func calculate(expression Expression) float64 {
    switch expression.operator {
    case Add:
        return expression.leftOperand.value + expression.rightOperand.value
    case Subtract:
        return expression.leftOperand.value - expression.rightOperand.value
    case Multiply:
        return expression.leftOperand.value * expression.rightOperand.value
    case Divide:
        return expression.leftOperand.value / expression.rightOperand.value
    default:
        return 0
    }
}

마지막으로 사용자 입력을 처리하고 구문 분석 및 계산 함수를 호출하여 결과를 출력하는 기본 함수를 작성할 수 있습니다.

func main() {
    fmt.Println("欢迎使用四则运算计算器!")
    fmt.Println("请输入一个四则运算表达式:")
    
    scanner := bufio.NewScanner(os.Stdin)
    for scanner.Scan() {
        input := scanner.Text()
        
        expression, err := parseExpression(input)
        if err != nil {
            fmt.Println("输入无效,请重新输入")
            continue
        }
        
        result := calculate(expression)
        fmt.Println("结果是:", result)
    }
    
    if err := scanner.Err(); err != nil {
        fmt.Println("读取输入失败:", err)
    }
}

위는 Go 언어로 작성된 사칙계산기의 간단한 예제 코드입니다. 데이터 구조를 정의하고 구문 분석 및 계산 기능을 구현함으로써 사용자의 입력 및 출력 결과를 쉽게 처리할 수 있습니다. 물론 이 예제는 더 많은 연산자를 추가하고 복잡한 연산 표현식을 지원하는 등 더욱 확장되고 최적화될 수 있지만 기본 프레임워크와 아이디어는 동일합니다.

요약하자면, Go 언어는 4개의 산술 계산기를 포함하여 다양한 애플리케이션을 쉽게 작성할 수 있는 강력한 프로그래밍 언어입니다. 이 기사의 샘플 코드와 설명이 도움이 되기를 바랍니다.

위 내용은 Go 언어를 사용하여 기본 산술 연산자 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.