当前位置: 首页 > news >正文

golang学习笔记——查找质数

查找质数

编写一个程序来查找小于 20 的所有质数。 质数是大于 1 的任意数字,只能被它自己和 1 整除。 “整除”表示经过除法运算后没有余数。 与大多数编程语言一样,Go 还提供了一种方法来检查除法运算是否产生余数。 我们可以使用模数 %(百分号)运算符。

在本练习中,你将更新一个名为 findprimes 的函数,以检查数值是否为质数。 该函数有一个整数参数,并返回一个布尔值。 函数通过检查是否有余数来测试输入数字是否为质数。 如果数字为质数,则该函数返回 true。

使用以下代码片段作为起点,并使用正确的语法替换 ?? 的所有实例:

package main

import "fmt"

func findprimes(number int) bool {
	for i := 2; i ?? number; i ?? {
        if number ?? i == ?? {
			return false
        }
    }

	if number ?? {
		return true
	} else {
	    return false
	}
}

func main() {
    fmt.Println("Prime numbers less than 20:")

    for number := ??; number ?? 20; number++ {
        if ?? {
            fmt.Printf("%v ", number)
        }
    }
}

此程序检查 1 到 20 的数字,如果数字为质数,则打印它。 按说明修改示例。

  • main 函数中,遍历要检查的所有数字。 在检查完最后一个数字后退出循环。
  • 调用 findprimes 函数以检查数字。 如果函数返回 true,则打印质数。
  • findprimes 循环中,从 2 开始并重复,直到计数器的值大于 number 值。
  • 检查 number 是否可被当前计数器值整除。 如果是,则退出循环。
  • 如果 number 为质数,则返回 true;否则返回 false。
  • 提示:请务必正确处理输入数字为 1 的情况。

代码

package main

import "fmt"

func findprimes(number int) bool {
	temp := number - 1
	for i := 2; i <= temp; i++ {
        if number % i == 0 {
			return false
        }
    }

	if number > 1 {
		return true
	} else {
	    return false
	}
}

func main() {
    fmt.Println("Prime numbers less than 20:")

    for number := 1 ;  number <= 20; number++ {
        if findprimes(number) {
            fmt.Printf("%v ", number)
        }
    }
}

输出

Prime numbers less than 20:
2 3 5 7 11 13 17 19 
http://www.dtcms.com/a/4163.html

相关文章:

  • iApp祁天社区UI成品源码 功能齐全的社区应用
  • RabbitMQ-基础篇-黑马程序员
  • 如何设计开发一对一交友App吸引更多活跃用户
  • [代码实战和详解]VGG16
  • 【你哥电力电子】从耦合电感到变压器
  • Gitlab CI如何实现安全获取ssh-key拉取依赖项目,打包成品
  • 这款开源神器,让聚类算法从此变得简单易用
  • 【MATLAB源码-第80期】基于蚯蚓优化算法(EOA)的无人机三维路径规划,输出做短路径图和适应度曲线
  • C# 集合用法介绍
  • Apache SCXML2 RCE漏洞
  • mysql常用命令
  • Mallab勒索病毒的最新威胁:如何恢复您的数据?
  • 腾讯云优惠服务器有哪些?腾讯云服务器优惠券领取入口汇总
  • Go 理解零值
  • docker入门
  • Django(三、数据的增删改查、Django生命周期流程图)
  • STM32 寄存器配置笔记——GPIO配置输出
  • 【Amazon】云上探索实验室—了解 AI 编程助手 Amazon Codewhisperer
  • 【数据分享】1961—2022年全国范围的逐日降水栅格数据
  • 【java】idea可以连接但看不到database相关的files
  • Java版本spring cloud + spring boot企业电子招投标系统源代码
  • 基于GPTs个性化定制SCI论文专业翻译器
  • web前端开发网页设计课堂作业/html练习《课程表》
  • ARM课程发送一个字符,接收一个字符
  • 区域入侵AI算法如何应用在工地场景,保卫工地施工安全?
  • 【Linux】Ubuntu16.04配置repo
  • 如何准备2024年的系统设计面试?
  • docker小技能:容器IP和宿主机IP一致( Nacos服务注册ip为内网ip,导致Fegin无法根据服务名访问 )
  • 高防IP是什么?如何隐藏源站IP?如何进行防护?
  • 短路语法 [SUCTF 2019]EasySQL1