检查数字是否只设置了第一位和最后一位|设置2

给定一个正整数n,检查在n的二进制表示中是否只设置了第一位和最后一位。打印“是”或“否”。 例如:

null

输入:9 输出:是的 (9) 10=(1001)2,仅第一个和第二个 最后一位已设置。 输入:15 输出:否 (15) 10=(1111)2,第一个和最后一个除外 还设置了其他位。

我们已经讨论了一个解决方案 在这里 本文讨论了一个更简单的解决方案。

C++

// C++ to check whether the number has only
// first and last bits set
#include <bits/stdc++.h>
using namespace std;
// function to check whether the number has only
// first and last bits set
bool onlyFirstAndLastAreSet(unsigned int n)
{
if (n == 1)
return true ;
if (n == 2)
return false ;
return (((n - 1) & (n - 2)) == 0);
}
// Driver program to test above
int main()
{
unsigned int n = 9;
if (onlyFirstAndLastAreSet(n))
cout << "Yes" ;
else
cout << "No" ;
return 0;
}


JAVA

// Java to check whether
// the number has only
// first and last bits set
class GFG
{
// function to check whether
// the number has only
// first and last bits set
static boolean onlyFirstAndLastAreSet( int n)
{
if (n == 1 )
return true ;
if (n == 2 )
return false ;
return (((n - 1 ) &
(n - 2 )) == 0 );
}
// Driver Code
public static void main(String[] args)
{
int n = 9 ;
if (onlyFirstAndLastAreSet(n))
System.out.println( "Yes" );
else
System.out.println( "No" );
}
}
// This code is contributed
// by Smitha


Python3

# Python 3 to check whether
# the number has only
# first and last bits set
# function to check whether
# the number has only
# first and last bits set
def onlyFirstAndLastAreSet(n):
if (n = = 1 ):
return True
if (n = = 2 ):
return False
return (((n - 1 ) &
(n - 2 )) = = 0 )
# Driver Code
n = 9
if (onlyFirstAndLastAreSet(n)):
print ( "Yes" )
else :
print ( "No" )
# This code is contributed
# by Smitha


C#

// C# to check whether
// the number has only
// first and last bits set
using System;
class GFG
{
// function to check whether
// the number has only
// first and last bits set
static bool onlyFirstAndLastAreSet( int n)
{
if (n == 1)
return true ;
if (n == 2)
return false ;
return (((n - 1) &
(n - 2)) == 0);
}
// Driver Code
public static void Main()
{
int n = 9;
if (onlyFirstAndLastAreSet(n))
Console.Write( "Yes" );
else
Console.Write( "No" );
}
}
// This code is contributed
// by Smitha


PHP

<?php
// PHP to check whether the
// number has only first and
// last bits set
// function to check whether
// the number has only first
// and last bits set
function onlyFirstAndLastAreSet( $n )
{
if ( $n == 1)
return true;
if ( $n == 2)
return false;
return ((( $n - 1) &
( $n - 2)) == 0);
}
// Driver Code
$n = 9;
if (onlyFirstAndLastAreSet( $n ))
echo "Yes" ;
else
echo "No" ;
// This code is contributed
// by Smitha
?>


Javascript

<script>
// javascript to check whether
// the number has only
// first and last bits set
// function to check whether
// the number has only
// first and last bits set
function onlyFirstAndLastAreSet(n)
{
if (n == 1)
return true ;
if (n == 2)
return false ;
return (((n - 1) &
(n - 2)) == 0);
}
// Driver Code
var n = 9;
if (onlyFirstAndLastAreSet(n))
document.write( "Yes" );
else
document.write( "No" );
// This code contributed by shikhasingrajput
</script>


输出:

Yes

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享