判断数字是否为奇数或偶数

判断数字是否为奇数或偶数,可以参考下面2个自定义函数:

奇数:

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:      Insus.NET
-- Blog:        https://insus.cnblogs.com
-- Create date: 2019-06-02
-- Update date: 2019-06-02
-- Description: 是否为奇数
-- =============================================
 CREATE FUNCTION [dbo].[svf_IsOdd]
 (
    @number INT
 )
 RETURNS BIT
 AS
 BEGIN
    RETURN CASE WHEN @number % 2 <> 0 THEN 1 ELSE 0 END
 END
 GO

Source Code

偶数:

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:      Insus.NET
-- Blog:        https://insus.cnblogs.com
-- Create date: 2019-06-02
-- Update date: 2019-06-02
-- Description: 是否为偶数
-- =============================================
 CREATE FUNCTION [dbo].[svf_IsEven]
 (
    @number INT
 )
 RETURNS BIT
 AS
 BEGIN
    RETURN CASE WHEN @number % 2 = 0 THEN 1 ELSE 0 END
 END
 GO

Source Code

举例说明:

;WITH Digits AS
(
    SELECT 0 AS digit
    UNION ALL
    SELECT digit + 1 FROM Digits where digit < 9
)
SELECT [digit],[dbo].[svf_IsEven]([digit]) AS [even],[dbo].[svf_IsOdd]([digit]) AS [odd] FROM Digits

Source Code

运行结果:

原文地址:https://www.cnblogs.com/insus/p/10965118.html

时间: 2024-08-30 09:17:25

判断数字是否为奇数或偶数的相关文章

判断一个数是奇数还是偶数?

1.方法一 int num = 11; if (num % 2 == 0) { printf("这个数是偶数\n"); } else { printf("这个数是奇数\n"); } 2.方法二 int num = 10; if ((num & 1) == 0) { printf("这个数是偶数\n"); } else { printf("这个数是奇数\n"); } 在计算机中,数据是以补码的二进制存储的. 偶数的最低位

24、输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变.  思路:新建一个数组先把原数组中的奇数push进去再把偶数push进去,然后用新数组数据覆盖原数组即可 复杂度O(n),用空间换时间 class Solution { public:     void reOrderArray(vector<int> &array) {         vector<int&

spoj10606 数位dp (求出现的数字,所有偶数出现奇数次,所有奇数出现偶数次)

http://www.spoj.com/problems/BALNUM/ SPOJ Problem Set (classical) 10606. Balanced Numbers Problem code: BALNUM Balanced numbers have been used by mathematicians for centuries. A positive integer is considered a balanced number if: 1)      Every even 

实例12 用三元运算符判断奇数和偶数

package wjf;import java.util.Scanner;public class wjf1 {          public static void main(){                    Scanner scan=new Scanner(System.in);               //创建输入流扫描器                    System.out.println("请输入一个整数:");                    l

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

如果不考虑奇数和奇数,偶数和偶数之间的相对位置不变.那么只需要两个指针分别指向数组的头和尾,依次比较. 1. 如果头指针指向的数组位置为奇数,那么就判断尾指针指向的数组位置的奇偶性.如果是奇数,则头指针后移一个位置,如果是偶数,则尾指针前移一个位置. 2. 如果头指针指向的数组位置为偶数,那么就判断尾指针指向的数组位置的奇偶性.如果是奇数,则交换头尾指针指向的数组元素,如果是偶数,则尾指针前移一个位置. 代码如下: public class Q13_ReOrderArray { public s

循环赛日常表算法(N可为奇数和偶数)

一. 实验题目 设有n位选手参加网球循环赛,循环赛共进行n-1天,每位选手要与其他n-1位选手比赛一场,且每位选手每天必须比赛一场,不能轮空.试按此要求为比赛安排日程. 二.实验目的 1.深刻理解并掌握“分治算法”的设计思想: 2.提高应用“分治算法”设计技能: 3.理解这样一个观点:用递归方法编写的问题解决程序具有结构清晰,可读性强等优点,且递归算法的设计比非递归算法的设计往往要容易一些,所以当问题本身是递归定义的,或者问题所涉及到的数据结构是递归定义的,或者是问题的解决方法是递归形式的时候,

剑指OFFER之调整数组顺序使奇数位于偶数前面找(九度OJ1516)

题目描述: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 输入: 每个输入文件包含一组测试案例.对于每个测试案例,第一行输入一个n,代表该数组中数字的个数.接下来的一行输入n个整数.代表数组中的n个数. 输出: 对应每个测试案例,输入一行n个数字,代表调整后的数组.注意,数字和数字之间用一个空格隔开,最后一个数字后面没有空格. 样例输入: 5 1 2 3 4 5 样例输

【剑指Offer学习】【面试题14 :调整数组顺序使奇数位于偶数前面】

题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位予数组的后半部分. 这个题目要求把奇数放在数组的前半部分, 偶数放在数组的后半部分,因此所有的奇数应该位于偶数的前面.也就是说我们在扫描这个数组的时候, 如果发现有偶数出现在奇数的前面,我们可以交换它们的顺序,交换之后就符合要求了. 因此我们可以维护两个指针,第一个指针初始化时指向数组的第一个数字,它只向后移动:第二个指针初始化时指向数组的最后一个数字, 它只向前移动.在两个指针相遇之前,第一

(剑指Offer)面试题14:调整数组顺序使奇数位于偶数前面

题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 如果去掉约束条件:并保证奇数和奇数,偶数和偶数之间的相对位置不变? 思路: 如果要保证奇数和奇数,偶数和偶数之间的相对位置不变,那么需要开辟新的空间来保存奇数和偶数,方法有两种: 1.开辟一个新数组,遍历第一遍原数组,将奇数依次写入新数组,遍历第二遍原数组,将偶数依次写入新数组,返回新数组: 2.开辟两个数组,遍历一