Write a program to find & print maximum number from list

C Program to Find Factorial of a Number

In this example, you will learn to calculate the factorial of a number entered by the user.

To understand this example, you should have the knowledge of the following C programming topics:

  • C Data Types
  • C Programming Operators
  • C if...else Statement
  • C for Loop

The factorial of a positive number n is given by:

factorial of n (n!) = 1 * 2 * 3 * 4....n

The factorial of a negative number doesn't exist. And, the factorial of 0 is 1.

C Program to Find the Largest Number Among Three Numbers

In this example, you will learn to find the largest number among the three numbers entered by the user.

To understand this example, you should have the knowledge of the following C programming topics:

  • C Programming Operators
  • C if...else Statement

C Exercises: Read 10 numbers and find their sum and average

Last update on January 12 2022 06:20:54 (UTC/GMT +8 hours)

C Exercises: Calculate the factorial of a given number

Last update on January 12 2022 06:20:41 (UTC/GMT +8 hours)

Program to find whether a given number is power of 2

Given a positive integer, write a function to find if it is a power of two or not.
Examples :

Input : n = 4 Output : Yes 22 = 4 Input : n = 7 Output : No Input : n = 32 Output : Yes 25 = 32
Recommended: Please solve it on “PRACTICE” first, before moving on to the solution.

1. A simple method for this is to simply take the log of the number on base 2 and if you get an integer then the number is the power of 2

C++




// C++ Program to find whether a
// no is power of two
#include<bits/stdc++.h>
using namespace std;
// Function to check if x is power of 2
bool isPowerOfTwo(int n)
{
if(n==0)
return false;
return (ceil(log2(n)) == floor(log2(n)));
}
// Driver program
int main()
{
isPowerOfTwo(31)? cout<<"Yes"<<endl: cout<<"No"<<endl;
isPowerOfTwo(64)? cout<<"Yes"<<endl: cout<<"No"<<endl;
return 0;
}
// This code is contributed by Surendra_Gangwar
C




// C Program to find whether a
// no is power of two
#include<stdio.h>
#include<stdbool.h>
#include<math.h>
/* Function to check if x is power of 2*/
bool isPowerOfTwo(int n)
{
if(n==0)
return false;
return (ceil(log2(n)) == floor(log2(n)));
}
// Driver program
int main()
{
isPowerOfTwo(31)? printf("Yes\n"): printf("No\n");
isPowerOfTwo(64)? printf("Yes\n"): printf("No\n");
return 0;
}
// This code is contributed by bibhudhendra
Java




// Java Program to find whether a
// no is power of two
class GFG
{
/* Function to check if x is power of 2*/
static boolean isPowerOfTwo(int n)
{
if(n==0)
return false;
return (int)(Math.ceil((Math.log(n) / Math.log(2)))) ==
(int)(Math.floor(((Math.log(n) / Math.log(2)))));
}
// Driver Code
public static void main(String[] args)
{
if(isPowerOfTwo(31))
System.out.println("Yes");
else
System.out.println("No");
if(isPowerOfTwo(64))
System.out.println("Yes");
else
System.out.println("No");
}
}
// This code is contributed by mits
Python3




# Python3 Program to find
# whether a no is
# power of two
import math
# Function to check
# Log base 2
def Log2(x):
if x == 0:
return false;
return (math.log10(x) /
math.log10(2));
# Function to check
# if x is power of 2
def isPowerOfTwo(n):
return (math.ceil(Log2(n)) ==
math.floor(Log2(n)));
# Driver Code
if(isPowerOfTwo(31)):
print("Yes");
else:
print("No");
if(isPowerOfTwo(64)):
print("Yes");
else:
print("No");
# This code is contributed
# by mits
C#




// C# Program to find whether
// a no is power of two
using System;
class GFG
{
/* Function to check if
x is power of 2*/
static bool isPowerOfTwo(int n)
{
if(n==0)
return false;
return (int)(Math.Ceiling((Math.Log(n) /
Math.Log(2)))) ==
(int)(Math.Floor(((Math.Log(n) /
Math.Log(2)))));
}
// Driver Code
public static void Main()
{
if(isPowerOfTwo(31))
Console.WriteLine("Yes");
else
Console.WriteLine("No");
if(isPowerOfTwo(64))
Console.WriteLine("Yes");
else
Console.WriteLine("No");
}
}
// This code is contributed
// by Akanksha Rai(Abby_akku)
PHP




<?php
// PHP Program to find
// whether a no is
// power of two
// Function to check
// Log base 2
function Log2($x)
{
return (log10($x) /
log10(2));
}
// Function to check
// if x is power of 2
function isPowerOfTwo($n)
{
return (ceil(Log2($n)) ==
floor(Log2($n)));
}
// Driver Code
if(isPowerOfTwo(31))
echo "Yes\n";
else
echo "No\n";
if(isPowerOfTwo(64))
echo "Yes\n";
else
echo "No\n";
// This code is contributed
// by Sam007
?>
Javascript




<script>
// javascript Program to find whether a
// no is power of two
/* Function to check if x is power of 2 */
function isPowerOfTwo(n)
{
if (n == 0)
return false;
return parseInt( (Math.ceil((Math.log(n) / Math.log(2))))) == parseInt( (Math.floor(((Math.log(n) / Math.log(2))))));
}
// Driver Code
if (isPowerOfTwo(31))
document.write("Yes<br/>");
else
document.write("No<br/>");
if (isPowerOfTwo(64))
document.write("Yes<br/>");
else
document.write("No<br/>");
// This code is contributed by shikhasingrajput.
</script>

Output:

No Yes

Time Complexity: O(1)
Auxiliary Space: O(1)

2. Another solution is to keep dividing the number by two, i.e, do n = n/2 iteratively. In any iteration, if n%2 becomes non-zero and n is not 1 then n is not a power of 2. If n becomes 1 then it is a power of 2.

C++




#include <bits/stdc++.h>
using namespace std;
/* Function to check if x is power of 2*/
bool isPowerOfTwo(int n)
{
if (n == 0)
return 0;
while (n != 1)
{
if (n%2 != 0)
return 0;
n = n/2;
}
return 1;
}
/*Driver code*/
int main()
{
isPowerOfTwo(31)? cout<<"Yes\n": cout<<"No\n";
isPowerOfTwo(64)? cout<<"Yes\n": cout<<"No\n";
return 0;
}
// This code is contributed by rathbhupendra
C




#include<stdio.h>
#include<stdbool.h>
/* Function to check if x is power of 2*/
bool isPowerOfTwo(int n)
{
if (n == 0)
return 0;
while (n != 1)
{
if (n%2 != 0)
return 0;
n = n/2;
}
return 1;
}
/*Driver program to test above function*/
int main()
{
isPowerOfTwo(31)? printf("Yes\n"): printf("No\n");
isPowerOfTwo(64)? printf("Yes\n"): printf("No\n");
return 0;
}
Java




// Java program to find whether
// a no is power of two
import java.io.*;
class GFG {
// Function to check if
// x is power of 2
static boolean isPowerOfTwo(int n)
{
if (n == 0)
return false;
while (n != 1)
{
if (n % 2 != 0)
return false;
n = n / 2;
}
return true;
}
// Driver program
public static void main(String args[])
{
if (isPowerOfTwo(31))
System.out.println("Yes");
else
System.out.println("No");
if (isPowerOfTwo(64))
System.out.println("Yes");
else
System.out.println("No");
}
}
// This code is contributed by Nikita tiwari.
Python3




# Python program to check if given
# number is power of 2 or not
# Function to check if x is power of 2
def isPowerOfTwo(n):
if (n == 0):
return False
while (n != 1):
if (n % 2 != 0):
return False
n = n // 2
return True
# Driver code
if(isPowerOfTwo(31)):
print('Yes')
else:
print('No')
if(isPowerOfTwo(64)):
print('Yes')
else:
print('No')
# This code is contributed by Danish Raza
C#




// C# program to find whether
// a no is power of two
using System;
class GFG
{
// Function to check if
// x is power of 2
static bool isPowerOfTwo(int n)
{
if (n == 0)
return false;
while (n != 1) {
if (n % 2 != 0)
return false;
n = n / 2;
}
return true;
}
// Driver program
public static void Main()
{
Console.WriteLine(isPowerOfTwo(31) ? "Yes" : "No");
Console.WriteLine(isPowerOfTwo(64) ? "Yes" : "No");
}
}
// This code is contributed by Sam007
PHP




<?php
// Function to check if
// x is power of 2
function isPowerOfTwo($n)
{
if ($n == 0)
return 0;
while ($n != 1)
{
if ($n % 2 != 0)
return 0;
$n = $n / 2;
}
return 1;
}
// Driver Code
if(isPowerOfTwo(31))
echo "Yes\n";
else
echo "No\n";
if(isPowerOfTwo(64))
echo "Yes\n";
else
echo "No\n";
// This code is contributed
// by Sam007
?>
Javascript




<script>
/* Function to check if x is power of 2*/
function isPowerOfTwo(n)
{
if (n == 0)
return 0;
while (n != 1)
{
if (n%2 != 0)
return 0;
n = n/2;
}
return 1;
}
isPowerOfTwo(31)? document.write("Yes" + "</br>"): document.write("No" + "</br>");
isPowerOfTwo(64)? document.write("Yes"): document.write("No");
</script>

Output :



No Yes

Time Complexity: O(log2n)

Auxiliary Space: O(1)

3. Another way is to use this simple recursive solution. It uses the same logic as the above iterative solution but uses recursion instead of iteration.

C++




// C++ program for above approach
#include <bits/stdc++.h>
using namespace std;
// Function which checks whether a
// number is a power of 2
bool powerOf2(int n)
{
// base cases
// '1' is the only odd number
// which is a power of 2(2^0)
if (n == 1)
return true;
// all other odd numbers are not powers of 2
else if (n % 2 != 0 || n ==0)
return false;
// recursive function call
return powerOf2(n / 2);
}
// Driver Code
int main()
{
int n = 64;//True
int m = 12;//False
if (powerOf2(n) == 1)
cout << "True" << endl;
else cout << "False" << endl;
if (powerOf2(m) == 1)
cout << "True" << endl;
else
cout << "False" << endl;
}
//code contributed by Moukthik a.k.a rowdyninja
Java




// Java program for
// the above approach
import java.util.*;
class GFG{
// Function which checks
// whether a number is a
// power of 2
static boolean powerOf2(int n)
{
// base cases
// '1' is the only odd number
// which is a power of 2(2^0)
if (n == 1)
return true;
// all other odd numbers are
// not powers of 2
else if (n % 2 != 0 ||
n ==0)
return false;
// recursive function call
return powerOf2(n / 2);
}
// Driver Code
public static void main(String[] args)
{
//True
int n = 64;
//False
int m = 12;
if (powerOf2(n) == true)
System.out.print("True" + "\n");
else System.out.print("False" + "\n");
if (powerOf2(m) == true)
System.out.print("True" + "\n");
else
System.out.print("False" + "\n");
}
}
// This code is contributed by Princi Singh
Python3




# Python program for above approach
# function which checks whether a
# number is a power of 2
def powerof2(n):
# base cases
# '1' is the only odd number
# which is a power of 2(2^0)
if n == 1:
return True
# all other odd numbers are not powers of 2
elif n%2 != 0 or n == 0:
return False
#recursive function call
return powerof2(n/2)
# Driver Code
if __name__ == "__main__":
print(powerof2(64)) #True
print(powerof2(12)) #False
#code contributed by Moukthik a.k.a rowdyninja
C#




// C# program for above approach
using System;
class GFG{
// Function which checks whether a
// number is a power of 2
static bool powerOf2(int n)
{
// Base cases
// '1' is the only odd number
// which is a power of 2(2^0)
if (n == 1)
return true;
// All other odd numbers
// are not powers of 2
else if (n % 2 != 0 || n == 0)
return false;
// Recursive function call
return powerOf2(n / 2);
}
// Driver code
static void Main()
{
int n = 64;//True
int m = 12;//False
if (powerOf2(n))
{
Console.Write("True" + "\n");
}
else
{
Console.Write("False" + "\n");
}
if (powerOf2(m))
{
Console.Write("True");
}
else
{
Console.Write("False");
}
}
}
// This code is contributed by rutvik_56
Javascript




<script>
// javascript program for
// the above approach
// Function which checks
// whether a number is a
// power of 2
function powerOf2(n)
{
// base cases
// '1' is the only odd number
// which is a power of 2(2^0)
if (n == 1)
return true;
// all other odd numbers are
// not powers of 2
else if (n % 2 != 0 ||
n ==0)
return false;
// recursive function call
return powerOf2(n / 2);
}
// Driver Code
//True
var n = 64;
//False
var m = 12;
if (powerOf2(n) == true)
document.write("True" + "\n");
else document.write("False" + "\n");
if (powerOf2(m) == true)
document.write("True" + "\n");
else
document.write("False" + "\n");
// This code contributed by shikhasingrajput
</script>
Output True False

Time Complexity: O(log2n)

Auxiliary Space: O(log2n)

4. All power of two numbers has only a one-bit set. So count the no. of set bits and if you get 1 then the number is a power of 2. Please see Count set bits in an integer for counting set bits.

5. If we subtract a power of 2 numbers by 1 then all unset bits after the only set bit become set; and the set bit becomes unset.
For example for 4 ( 100) and 16(10000), we get the following after subtracting 1
3 –> 011
15 –> 01111

So, if a number n is a power of 2 then bitwise & of n and n-1 will be zero. We can say n is a power of 2 or not based on the value of n&(n-1). The expression n&(n-1) will not work when n is 0. To handle this case also, our expression will become n& (!n&(n-1)) (thanks to //www.geeksforgeeks.org/program-to-find-whether-a-no-is-power-of-two/Mohammad for adding this case).

Below is the implementation of this method.

Time complexity : O(1)

Space complexity : O(1)

C++




#include <bits/stdc++.h>
using namespace std;
#define bool int
/* Function to check if x is power of 2*/
bool isPowerOfTwo (int x)
{
/* First x in the below expression is for the case when x is 0 */
return x && (!(x&(x-1)));
}
/*Driver code*/
int main()
{
isPowerOfTwo(31)? cout<<"Yes\n": cout<<"No\n";
isPowerOfTwo(64)? cout<<"Yes\n": cout<<"No\n";
return 0;
}
// This code is contributed by rathbhupendra
C




#include<stdio.h>
#define bool int
/* Function to check if x is power of 2*/
bool isPowerOfTwo (int x)
{
/* First x in the below expression is for the case when x is 0 */
return x && (!(x&(x-1)));
}
/*Driver program to test above function*/
int main()
{
isPowerOfTwo(31)? printf("Yes\n"): printf("No\n");
isPowerOfTwo(64)? printf("Yes\n"): printf("No\n");
return 0;
}
Java




// Java program to efficiently
// check for power for 2
class Test
{
/* Method to check if x is power of 2*/
static boolean isPowerOfTwo (int x)
{
/* First x in the below expression is
for the case when x is 0 */
return x!=0 && ((x&(x-1)) == 0);
}
// Driver method
public static void main(String[] args)
{
System.out.println(isPowerOfTwo(31) ? "Yes" : "No");
System.out.println(isPowerOfTwo(64) ? "Yes" : "No");
}
}
// This program is contributed by Gaurav Miglani
Python3




# Python program to check if given
# number is power of 2 or not
# Function to check if x is power of 2
def isPowerOfTwo (x):
# First x in the below expression
# is for the case when x is 0
return (x and (not(x & (x - 1))) )
# Driver code
if(isPowerOfTwo(31)):
print('Yes')
else:
print('No')
if(isPowerOfTwo(64)):
print('Yes')
else:
print('No')
# This code is contributed by Danish Raza
C#




// C# program to efficiently
// check for power for 2
using System;
class GFG
{
// Method to check if x is power of 2
static bool isPowerOfTwo (int x)
{
// First x in the below expression
// is for the case when x is 0
return x != 0 && ((x & (x - 1)) == 0);
}
// Driver method
public static void Main()
{
Console.WriteLine(isPowerOfTwo(31) ? "Yes" : "No");
Console.WriteLine(isPowerOfTwo(64) ? "Yes" : "No");
}
}
// This code is contributed by Sam007
PHP




<?php
// PHP program to efficiently
// check for power for 2
// Function to check if
// x is power of 2
function isPowerOfTwo ($x)
{
// First x in the below expression
// is for the case when x is 0
return $x && (!($x & ($x - 1)));
}
// Driver Code
if(isPowerOfTwo(31))
echo "Yes\n" ;
else
echo "No\n";
if(isPowerOfTwo(64))
echo "Yes\n" ;
else
echo "No\n";
// This code is contributed by Sam007
?>
Javascript




<script>
// JavaScript program to efficiently
// check for power for 2
/* Method to check if x is power of 2*/
function isPowerOfTwo (x)
{
/* First x in the below expression is
for the case when x is 0 */
return x!=0 && ((x&(x-1)) == 0);
}
// Driver method
document.write(isPowerOfTwo(31) ? "Yes" : "No");
document.write("<br>"+(isPowerOfTwo(64) ? "Yes" : "No"));
// This code is contributed by 29AjayKumar
</script>

Output :

No Yes

Time Complexity: O(1)

Auxiliary Space: O(1)

6. Another way is to use the logic to find the rightmost bit set of a given number.

C++




#include <iostream>
using namespace std;
/* Function to check if x is power of 2*/
bool isPowerofTwo(long long n)
{
if (n == 0)
return 0;
if ((n & (~(n - 1))) == n)
return 1;
return 0;
}
/*Driver code*/
int main()
{
isPowerofTwo(30) ? cout << "Yes\n" : cout << "No\n";
isPowerofTwo(128) ? cout << "Yes\n" : cout << "No\n";
return 0;
}
// This code is contributed by Sachin
Java




// Java program of the above approach
import java.io.*;
class GFG {
// Function to check if x is power of 2
static boolean isPowerofTwo(int n)
{
if (n == 0)
return false;
if ((n & (~(n - 1))) == n)
return true;
return false;
}
public static void main(String[] args)
{
if (isPowerofTwo(30) == true)
System.out.println("Yes");
else
System.out.println("No");
if (isPowerofTwo(128) == true)
System.out.println("Yes");
else
System.out.println("No");
}
}
// This code is contributed by rajsanghavi9.
Python3




# Python program of the above approach
# Function to check if x is power of 2*/
def isPowerofTwo(n):
if (n == 0):
return 0
if ((n & (~(n - 1))) == n):
return 1
return 0
# Driver code
if(isPowerofTwo(30)):
print('Yes')
else:
print('No')
if(isPowerofTwo(128)):
print('Yes')
else:
print('No')
# This code is contributed by shivanisinghss2110
C#




// C# program of the above approach
using System;
public class GFG {
// Function to check if x is power of 2
static bool isPowerofTwo(int n)
{
if (n == 0)
return false;
if ((n & (~(n - 1))) == n)
return true;
return false;
}
public static void Main(String[] args)
{
if (isPowerofTwo(30) == true)
Console.WriteLine("Yes");
else
Console.WriteLine("No");
if (isPowerofTwo(128) == true)
Console.WriteLine("Yes");
else
Console.WriteLine("No");
}
}
// This code contributed by gauravrajput1
Javascript




<script>
// javascript program of the above approach
// Function to check if x is power of 2
function isPowerofTwo(n)
{
if (n == 0)
return false;
if ((n & (~(n - 1))) == n)
return true;
return false;
}
if (isPowerofTwo(30) == true)
document.write("Yes<br/>");
else
document.write("No<br/>");
if (isPowerofTwo(128) == true)
document.write("Yes<br/>");
else
document.write("No<br/>");
// This code is contributed by umadevi9616
</script>
Output No Yes

Time complexity : O(1)

Space complexity : O(1)

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.




Article Tags :
Bit Magic
Mathematical
FactSet
Qualcomm
Samsung
SAP Labs
Practice Tags :
Samsung
FactSet
SAP Labs
Qualcomm
Mathematical
Bit Magic
Read Full Article

Write a program to find the sum of even numbers

In this article, we will discuss the program to find the sum of even numbers in different programming languages.

But before writing the programs, let's first see a brief description of even numbers and the formula to find the sum of even numbers.

Even numbers

Any integer number that is completely divided by 2 is known as the even number. All the even numbers must be divided by 2. To check whether the given integer number is an odd number or an even number; we have to check the number's last digit. The even numbers always end with the last digit of 0, 2, 4, 6, and 8.

Video liên quan

Postingan terbaru

LIHAT SEMUA