【算法小技巧】如何判断奇偶

news2024/12/24 20:49:50

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
    • 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

      • 1.除法运算
      • 2.位运算
      • 3.字符串比较
      • 4.列表判断
      • 5.数学性质
      • 6.使用函数

判断一个数是奇数还是偶数有许多方法,以下是一些常见的方法:

1.除法运算

  • 如果一个整数除以 2 的余数为 0,那么它是偶数;否则,它是奇数。
if num % 2 == 0:
    print("偶数")
else:
    print("奇数")

2.位运算

  • 利用位运算,通过检查最低位的值来判断奇偶性。例如,(num & 1) == 0 表示 num 是偶数。
  • & 是位与运算符,它对两个二进制数的每一位执行与操作。如果两个相应位都为 1,则结果为 1;否则,结果为 0。
  • (len & 1) 表示对整数 len 和二进制数 1 进行位与运算。这将返回一个新的整数,其二进制表示仅保留 len 最低位与 1 相对应的位。
  • == 0 检查上一步的结果是否等于 0。如果 (len & 1) 的结果为 0,则整数的最低位是 0;如果结果为 1,则最低位是 1。
  • (len & 1) == 0 表达式用于检查整数 len 的二进制表示的最低位是否为 0。如果条件成立(即整数的最低位是 0),则整数是偶数;如果条件不成立(即最低位是 1),则整数是奇数。
if (num & 1) == 0:
    print("偶数")
else:
    print("奇数")

3.字符串比较

  • 将整数转换为字符串,然后检查字符串的最后一位数字。
if str(num)[-1] in ['0', '2', '4', '6', '8']:
    print("偶数")
else:
    print("奇数")

4.列表判断

  • 利用一个包含偶数的列表,判断给定的数是否在列表中。
even_numbers = [0, 2, 4, 6, 8]
if num in even_numbers:
    print("偶数")
else:
    print("奇数")

5.数学性质

  • 利用数学性质,例如奇数和偶数之间的关系,判断给定的数。
if num // 2 * 2 == num:
    print("偶数")
else:
    print("奇数")

6.使用函数

  • 定义一个函数来判断奇偶性,使代码更模块化。
def is_even(n):
    return n % 2 == 0

if is_even(num):
    print("偶数")
else:
    print("奇数")

选择适合你代码场景的方法,这些方法在实际编程中都是可行的。

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1312483.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LLM(七)| Mamba:LLM新架构的浅探

目前大型语言模型(LLM)领域发展如火如荼,本文将重点探索在单个消费级GPU上可以有效运行的小型模型(≤7B个参数)。 我们将从以下几个方面重点介绍基于新架构的语言模型:🐍Mamba模型(h…

图-数据结构

图的介绍 如果你有学过《离散数学》,那么对图的概念一定不陌生,在计算机科学中,一个图就是一些顶点的集合,这些顶点通过一系列边连接(结对)。顶点用圆圈表示,边就是这些圆圈之间的连线。注意&a…

webGL开发数字孪生项目的流程

数字孪生是指使用数字模型来模拟和仿真现实世界的实体或系统。WebGL(Web Graphics Library)是一种用于在Web浏览器中进行高性能图形渲染的JavaScript API。将数字孪生与WebGL结合起来,可以实现在Web环境中呈现和交互数字模型的目标。北京木奇…

不完全伽马函数-Incomplete Gamma Function

REFERENCES Abramowitz, M. and Stegun, I. A. (Eds.). Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables, 9th printing. New York: Dover, p. 260, 1972. Arfken, G. “The Incomplete Gamma Function and Related Functions.” 10.5 in…

FRP 内网穿透工具部署

FRP 介绍 frp 是一个专注于内网穿透的高性能反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。 官方网站:https://gofrp.org/zh-cn/ 项目地…

KylinV10 将项目上传至 Github

KylinV10 将项目上传至 Github 银河麒麟操作系统 V10 是在 Ubuntu 的基础上开发的,所以适用于 Ubuntu 的也适用于 KylinV10 一般上传至 GitHub,有两种方式,一种是 HTTPS,一种是 SSH,但是在 KylinV10 操作系统 HTTPS 的…

Gradio入门详细教程

常用的两款AI可视化交互应用比较: Gradio Gradio的优势在于易用性,代码结构相比Streamlit简单,只需简单定义输入和输出接口即可快速构建简单的交互页面,更轻松部署模型。适合场景相对简单,想要快速部署应用的开发者。便…

设计模式详解---抽象工厂模式

继续前言,工厂模式中抽象工厂模式的讲解: 1. 前面的工厂模式有啥问题? 前面的工厂模式有这么个问题:一个产品就给了一个工厂,这样子如果产品变多,系统就会很复杂: 2. 解决方法 我们可以按照手…

如何利用Python爬取网络上的图片

在当今数字化时代,网络上蕴藏着丰富的图片资源。对于开发者和研究者来说,从网络上获取图片数据是十分常见的需求。而Python作为一种强大的编程语言,提供了丰富的工具和库,使得爬取网络上的图片变得简单和高效。本文将介绍如何利用…

扫描电镜中的信号-噪声比(SNR)参数如何优化

在扫描电镜(SEM)中,信号-噪声比(SNR)的优化对于获得高质量的图像和可靠的数据分析至关重要。以下是一些优化SNR的方法: 选择适当的检测器:SEM通常配备了不同类型的检测器,如二次电子…

cmake 最基础示例

C 代码 文件名&#xff1a;first_cmake.cpp #include <iostream> using namespace std;int main() {cout<< "A" << endl;return 0; }CMakeLists.txt 文件 #CMakeLists.txt # 设置:版本 cmake_minimum_required(VERSION 3.20)# 定义 :项目名称 …

小红书种草和抖音传播区别是什么?

目前品牌较为关注的2大平台小红书和抖音&#xff0c;两者在种草方面存在一些明显的区别。本次就存量竞争、种草形式和种草策略这三个方面入手进行分析&#xff0c;今天和大家分享下小红书种草和抖音传播区别是什么&#xff1f; 一、存量竞争下的2大平台 2个都是属于存量竞争下的…

Point A的配置方式

Point A是5g中进行资源分配的参考点&#xff0c;所以UE驻留在小区上时&#xff0c;必须要知道Point A的位置&#xff0c;才能进一步根据参数确定属于自己的资源&#xff0c;这里就整理下协议上告知UE PointA的2种方式。 先看38.211中的描述&#xff0c;Point A是RB grids的公共…

Mysql - 常用插入数据的三种方法详解及练习

目录 &#x1f959;8.1.1 mysql中常用的三种插入数据的语句 1. insert into - 插入数据 2. replace into - 插入替换数据 3. insert ignore - 如果已存在&#xff0c;忽略当前新数据 &#x1f959;8.1.2 以上三种方法的练习及区分 &#x1f959;8.1.3 说明 &#x1f959…

C# WPF上位机开发(日志调试)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 程序开发的过程中&#xff0c;调试肯定是少不了的。比如说&#xff0c;这个时候&#xff0c;我们可以设置断点、查看变量、检查函数调用堆栈等等。…

Polkadot 品牌焕新提案:重返前卫,市场营销的创新愿景

波卡的品牌形象和营销策略也许将迎来新变化。长久以来一些社区成员批评道&#xff0c;波卡的形象过于保守、太企业化&#xff0c;缺乏 Crypto 行业应有的先锋气质。 在前阵子的 Parity “去中心化” 变革中&#xff0c;Parity 的营销团队经历了大幅的变动&#xff0c;随后建立…

ToolLLM model 以及LangChain AutoGPT Xagent在调用外部工具Tools的表现对比浅析

文章主要谈及主流ToolLLM 以及高口碑Agent 在调用Tools上的一些对比&#xff0c;框架先上&#xff0c;内容会不断丰富与更新。 ToolLLM model 也就是主打Function Call 的大模型 OPENAI GPT 宇宙第一LLM NexusRaven 开源&#xff0c;可商用&#xff0c;function call的效果对…

vue3 vite动态路由的问题

因为to.matched未配到路由导致&#xff0c; vue-router.mjs:35 [Vue Router warn]: No match found for location with path "/basedata/psiIntialCustomer/add"加下面的代码&#xff0c;是解决不了问题&#xff0c;因为它只是转向了404页面。 const routes_404 {…

Vmare安装Centos8系统

vmare虚拟机Centos8系统安装 之前虚拟机已经安装好了&#xff0c;现在开始尝试在虚拟机里面安装系统&#xff0c;这次使用Centos8进行安装。 前提条件&#xff1a; 虚拟机安装完成 Centos8系统镜像下载完成 网上资源很多&#xff0c;如果没有也可以私信我。 本篇文章全程图片资…

ChatGPT对话为什么不用WebSocket而使用EventSource?

文章目录 1. 引言2. WebSocket和EventSource简介2.1 WebSocket2.2 EventSource 3. ChatGPT对话系统的特点4. EventSource的优势4.1 简单易用4.2 容错性强4.3 兼容性良好 5. 为何选择EventSource而非WebSocket&#xff1f;5.1 单向通信模式5.2 长轮询模式5.3 简化部署和维护 6. …