Golang 使用Switch Case制作简单计算器

Golang 使用Switch Case制作简单计算器

在本教程中,我们将看到如何在Go编程语言中使用switch case语句制作一个简单的计算器。

switch语句将评估一个表达式,将表达式的值与一系列给定的case条件进行比较,并在找到与之匹配的值的第一个条件后执行语句,直到遇到break为止。

Golang基本的switch case和默认情况

  • switch语句运行与输入的选择相等的第一个case。

  • 案例按顺序评估,并在一个案例成功时停止。

  • 如果没有匹配的案例(输入的选择),则为默认情况,并执行其语句。

如何使用switch case制作一个简单的计算器

语法

switch expression {
   case 1:
   // code block 1

   case 2:
   // code block 2

   ...
   ...
   default:
   // default code block
}

步骤

  • 步骤1 - 导入fmt包

  • 步骤2 - 开始主函数main()

  • 步骤3 - 声明并初始化变量

  • 步骤4 - 创建switch case语句

  • 步骤5 - 使用内置函数fmt.Println()打印结果

示例

展示如何使用golang程序中的switch case制作一个简单的计算器

// Golang program to make a Simple
// Calculator using Switch Case
package main

// fmt package provides the function to print anything
import "fmt"

// start the main() function
func main() {

   // Declare amd initialize the variables
   var number1 int=20
   var number2 int=10
   var choice int = 0 

   // choice of the input calculation
   var x int // the result variable
   fmt.Println("number 1 = ",number1,"\nnumber 2 =",number2)
   fmt.Println(" choice 1: Addition of the two numbers")
   fmt.Println(" choice 2: Subtraction of the two numbers")
   fmt.Println(" choice 3: Multiplication of the two numbers")
   fmt.Println(" choice 4: Division of the two numbers")
   fmt.Scanln(&choice)
   // print the choice of calculation using switch case
   switch choice{
      case 1:
         x=number1+number2
         fmt.Printf("Addition of the two numbers is: %d",x)
      case 2:
         x=number1-number2
         fmt.Printf("Subtraction of the two numbers is: %d",x)
      case 3:
         x=number1*number2
         fmt.Printf("Multiplication of the two numbers is: %d",x)
      case 4:
         x=number1/number2
         fmt.Printf("Division of the two numbers is: %d",x)
      default:
         fmt.Println("Invalid number")
   }
   // Print the result using built-in function fmt.Println()
}

输入

number 1 = 20
number 2 = 10
choice 1: Addition of the two numbers
choice 2: Subtraction of the two numbers
choice 3: Multiplication of the two numbers
choice 4: Division of the two numbers
2

输出

Subtraction of the two numbers is: 10

代码说明

  • 在上面的程序中,我们首先声明了package main。

  • 导入了fmt包,该包包含了fmt包的文件。

  • 现在开始定义函数main()。GO程序的执行从函数main()开始。

  • 声明并初始化变量number1和number2,变量choice对应计算的选择。变量x是结果的整数变量。

  • 创建switch case语句来执行代码。

  • 最后,我们使用内置函数fmt.Println()在屏幕上打印结果。这个函数定义在fmt包下,它帮助我们写入标准输出。

如何使用两个不同函数中的Switch Case制作一个简单的计算器

语法

func functionname(list_of_parameters)(return_type) {
   //...
   //function_body
}

步骤

  • 步骤1 - 导入fmt包

  • 步骤2 - 创建函数calculator()

  • 步骤3 - 声明并初始化变量

  • 步骤4 - 创建switch case语句

  • 步骤5 - 开始函数main()

  • 步骤6 - 调用函数calculator()

  • 步骤7 - 使用内置函数fmt.Println()打印结果

示例

展示如何使用switch case在golang程序中创建一个简单的计算器,分为两个独立的函数

// Golang program to make a Simple
// Calculator using Switch Case
package main

// fmt package provides the function to print anything
import "fmt"

// Creating a function Calculator()
func calculator(choice int) int {

   // declare and initialize the variables
   var result int
   var num1 int = 30
   var num2 int = 15

   // print the choice of calculation using switch case
   switch choice {
      case 1:
         result = num1 + num2
         fmt.Printf("Addition is: %d \n", result)
      case 2:
         result = num1 - num2
         fmt.Printf("Subtraction is: %d \n", result)
      case 3:
         result = num1 * num2
         fmt.Printf("Multiplication is: %d \n", result)
      case 4:
         result = num1 / num2
         fmt.Printf("Division is: %d \n", result)
      default:
         fmt.Println("Invalid value")
   }
   return 0
}
// start the main() function
func main() {
   fmt.Println("Number 1 = 30 \nNumber 2= 15")
   fmt.Println("Enter the following operation you want to perform")
   fmt.Println("1 for addition \n2 for Subtration \n3 for Multiplication \n4 for Division")
   var option int = 0 // calling the calculator() function
   fmt.Scanln(&option)
   calculator(option)
   // Print the result using built-in function fmt.Println()
}

输入

Number 1 = 30
Number 2= 15
Enter the following operation you want to perform
1 for addition
2 for Subtration
3 for Multiplication
4 for Division
2

输出

Subtraction is: 15

代码描述

  • 在上面的程序中,我们首先声明了包main。

  • 我们导入了包含fmt包文件的fmt包。

  • 创建函数calculator()来计算选择。

  • 声明并初始化变量num1和num2。变量result是最终结果的整数变量。

  • 创建switch case语句来执行与输入选择相对应的代码。

  • 接下来我们开始函数main()。GO程序的执行从函数main()开始。

  • 在这里我们将使用用户输入函数 – fmt.Scanln(),然后我们调用函数calculator()来计算结果。

  • 最终结果通过内置函数fmt.Println()打印到控制台屏幕上。此函数定义在fmt包下,它帮助写入标准输出。

结论

在上面的两个示例中,我们成功编译并执行了使用switch case制作简单计算器的Golang代码。

即使我们可以使用if…else语句替代switch case语句,但使用switch case编写的代码更清晰、更容易编写。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程