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编写的代码更清晰、更容易编写。