Go语言100例练习题
在学习Python的时候,做过菜鸟教程的100例练习题,但是Golang的练习题较少,不过可以参考Go语言圣经,里面有一些练习题,决定把菜鸟教程Python100例用Go语言再刷一遍,巩固一下自己的知识~
菜鸟教程Python100例:https://www.runoob.com/python/python-100-examples.html
1. 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
package main
import "fmt"
//题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
func main() {
for i:=1;i<=4;i++{
for j:=1;j<=4;j++{
for k:=1;k<=4;k++{
if (i!=j) && (i!=k) && (j!=k){
fmt.Print(i)
fmt.Print(j)
fmt.Print(k)
fmt.Println()
// 如果写成fmt.Print(i,j,k) 则输出1 2 3
}
}
}
}
}

2. 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
package main
import "fmt"
func main() {
// 这里为了省事,全部定义成float32类型
var i float32
fmt.Print("请输入企业净利润:")
fmt.Scanln(&i)
arr := []float32{1000000,600000,400000,200000,100000,0}
rat := []float32{0.01,0.015,0.03,0.05,0.075,0.1}
r := float32(0)
for idx:=0;idx<len(arr);idx++{
if i>arr[idx]{
r = r + (i-arr[idx])*rat[idx] // 计算奖金部分
}
}
fmt.Printf("发放的奖金总额为:%.2f",i+r)
}

3.一个整数,它加上
100后是一个完全平方数,再加上268又是一个完全平方数,请问该数是多少?
注意:原来菜鸟教程上的题目有问题,应该是268不是168
package main
import (
"fmt"
"math"
)
func main() {
i := 0
for i<100000{
x := int(math.Sqrt(float64(i+ 100)))
y := int(math.Sqrt(float64(i+ 268)))
if x*x == i+100 && y*y == i+268 {
fmt.Printf("这个数字是 %d\n", i)
}
i++
}
}

待更新…
版权声明:本文为stephen_curry300原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。