# Generate all cyclic permutations of a number

Here given code implementation process.

``````/*
C Program
Generate all cyclic permutations of a number
*/
#include <stdio.h>

// Get number multiplier to permutations
int multiplier(int num)
{
int ans = 0;
while (num != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans *10;
}
num /= 10;
}
return ans;
}
// Find all cyclic permutations in number form
void permutation(int num, int actual, int multiply)
{
printf(" %d\n", num);
int next = (num % 10) *multiply + (num / 10);
if (next != actual)
{
permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
void cyclicPermutations(int num)
{
if (num < 0)
{
// When number is less then zero
return;
}
int multiply = multiplier(num);
printf("\n Cyclic Permutation Of Number %d are \n", num);
permutation(num, num, multiply);
}
int main()
{
// Test
cyclicPermutations(76832);
cyclicPermutations(123456);
cyclicPermutations(420);
return 0;
}``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````/*
Java Program
Generate all cyclic permutations of a number
*/
class Permutations
{
// Get number multiplier to permutations
public int multiplier(int num)
{
int ans = 0;
while (num != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans * 10;
}
num /= 10;
}
return ans;
}
// Find all cyclic permutations in number form
public void permutation(int num, int actual, int multiply)
{
System.out.print(" " + num + "\n");
int next = (num % 10) * multiply + (num / 10);
if (next != actual)
{
permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
public void cyclicPermutations(int num)
{
if (num < 0)
{
// When number is less then zero
return;
}
int multiply = multiplier(num);
System.out.print("\n Cyclic Permutation Of Number " + num + " are \n");
permutation(num, num, multiply);
}
public static void main(String[] args)
{
// Test
}
}``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````// Include header file
#include <iostream>
using namespace std;
/*
C++ Program
Generate all cyclic permutations of a number
*/
class Permutations
{
public:
// Get number multiplier to permutations
int multiplier(int num)
{
int ans = 0;
while (num != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans *10;
}
num /= 10;
}
return ans;
}
// Find all cyclic permutations in number form
void permutation(int num, int actual, int multiply)
{
cout << " " << num << "\n";
int next = (num % 10) *multiply + (num / 10);
if (next != actual)
{
this->permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
void cyclicPermutations(int num)
{
// When number is less then zero
if (num < 0)
{
return;
}
int multiply = this->multiplier(num);
cout << "\n Cyclic Permutation Of Number " << num << " are \n";
this->permutation(num, num, multiply);
}
};
int main()
{
// Test
return 0;
}``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````// Include namespace system
using System;
/*
C# Program
Generate all cyclic permutations of a number
*/
public class Permutations
{
// Get number multiplier to permutations
public int multiplier(int num)
{
int ans = 0;
while (num != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans * 10;
}
num /= 10;
}
return ans;
}
// Find all cyclic permutations in number form
public void permutation(int num, int actual, int multiply)
{
Console.Write(" " + num + "\n");
int next = (num % 10) * multiply + (num / 10);
if (next != actual)
{
permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
public void cyclicPermutations(int num)
{
// When number is less then zero
if (num < 0)
{
return;
}
int multiply = multiplier(num);
Console.Write("\n Cyclic Permutation Of Number " + num + " are \n");
permutation(num, num, multiply);
}
public static void Main(String[] args)
{
// Test
}
}``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````<?php
/*
Php Program
Generate all cyclic permutations of a number
*/
class Permutations
{
// Get number multiplier to permutations
public	function multiplier(\$num)
{
\$ans = 0;
while (\$num != 0)
{
if (\$ans == 0)
{
\$ans = 1;
}
else
{
\$ans = \$ans * 10;
}
\$num = intval(\$num / 10);
}
return \$ans;
}
// Find all cyclic permutations in number form
public	function permutation(\$num, \$actual, \$multiply)
{
echo " ". \$num ."\n";
\$next = (\$num % 10) * \$multiply + (intval(\$num / 10));
if (\$next != \$actual)
{
\$this->permutation(\$next, \$actual, \$multiply);
}
}
// Handles the request of finding cyclic Permutation
public	function cyclicPermutations(\$num)
{
// When number is less then zero
if (\$num < 0)
{
return;
}
\$multiply = \$this->multiplier(\$num);
echo "\n Cyclic Permutation Of Number ". \$num ." are \n";
\$this->permutation(\$num, \$num, \$multiply);
}
}

function main()
{
// Test
}
main();``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````/*
Node Js Program
Generate all cyclic permutations of a number
*/
class Permutations
{
// Get number multiplier to permutations
multiplier(num)
{
var ans = 0;
while (num != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans * 10;
}
num = parseInt(num / 10);
}
return ans;
}
// Find all cyclic permutations in number form
permutation(num, actual, multiply)
{
process.stdout.write(" " + num + "\n");
var next = (num % 10) * multiply + (parseInt(num / 10));
if (next != actual)
{
this.permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
cyclicPermutations(num)
{
// When number is less then zero
if (num < 0)
{
return;
}
var multiply = this.multiplier(num);
process.stdout.write("\n Cyclic Permutation Of Number " + num + " are \n");
this.permutation(num, num, multiply);
}
}

function main()
{
// Test
}
main();``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````#   Python 3 Program
#   Generate all cyclic permutations of a number

class Permutations :
#  Get number multiplier to permutations
def multiplier(self, num) :
ans = 0
while (num != 0) :
if (ans == 0) :
ans = 1
else :
ans = ans * 10

num = int(num / 10)

return ans

#  Find all cyclic permutations in number form
def permutation(self, num, actual, multiply) :
print(" ", num )
next = (num % 10) * multiply + (int(num / 10))
if (next != actual) :
self.permutation(next, actual, multiply)

#  Handles the request of finding cyclic Permutation
def cyclicPermutations(self, num) :
if (num < 0) :
#  When number is less then zero
return

multiply = self.multiplier(num)
print("\n Cyclic Permutation Of Number ", num ," are ")
self.permutation(num, num, multiply)

def main() :
#  Test

if __name__ == "__main__": main()``````

#### Output

`````` Cyclic Permutation Of Number  76832  are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number  123456  are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number  420  are
420
42
204``````
``````#   Ruby Program
#   Generate all cyclic permutations of a number

class Permutations
#  Get number multiplier to permutations
def multiplier(num)
ans = 0
while (num != 0)
if (ans == 0)
ans = 1
else
ans = ans * 10
end

num /= 10
end

return ans
end

#  Find all cyclic permutations in number form
def permutation(num, actual, multiply)
print(" ", num ,"\n")
nextNum = (num % 10) * multiply + (num / 10)
if (nextNum != actual)
self.permutation(nextNum, actual, multiply)
end

end

#  Handles the request of finding cyclic Permutation
def cyclicPermutations(num)
if (num < 0)
#  When number is less then zero
return
end

multiply = self.multiplier(num)
print("\n Cyclic Permutation Of Number ", num ," are \n")
self.permutation(num, num, multiply)
end

end

def main()
#  Test
end

main()``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204
``````
``````/*
Scala Program
Generate all cyclic permutations of a number
*/
class Permutations
{
// Get number multiplier to permutations
def multiplier(num: Int): Int = {
var n = num;
var ans: Int = 0;
while (n != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans * 10;
}
n = (n / 10).toInt;
}
return ans;
}
// Find all cyclic permutations in number form
def permutation(num: Int, actual: Int, multiply: Int): Unit = {
print(" " + num + "\n");
var next: Int = (num % 10) * multiply + ((num / 10).toInt);
if (next != actual)
{
this.permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
def cyclicPermutations(num: Int): Unit = {
// When number is less then zero
if (num < 0)
{
return;
}
var multiply: Int = this.multiplier(num);
print("\n Cyclic Permutation Of Number " + num + " are \n");
this.permutation(num, num, multiply);
}
}
object Main
{
def main(args: Array[String]): Unit = {
var task: Permutations = new Permutations();
// Test
}
}``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````
``````/*
Swift 4 Program
Generate all cyclic permutations of a number
*/
class Permutations
{
// Get number multiplier to permutations
func multiplier(_ num: Int)->Int
{	var n  = num;
var ans: Int = 0;
while (n  != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans * 10;
}
n /= 10;
}
return ans;
}
// Find all cyclic permutations in number form
func permutation(_ num: Int, _ actual: Int, _ multiply: Int)
{
print(" ", num );
let next: Int = (num % 10) * multiply + (num / 10);
if (next  != actual)
{
self.permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
func cyclicPermutations(_ num: Int)
{
// When number is less then zero
if (num < 0)
{
return;
}
let multiply: Int = self.multiplier(num);
print("\n Cyclic Permutation Of Number ", num ," are ");
self.permutation(num, num, multiply);
}
}
func main()
{
// Test
}
main();``````

#### Output

`````` Cyclic Permutation Of Number  76832  are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number  123456  are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number  420  are
420
42
204``````
``````/*
Kotlin Program
Generate all cyclic permutations of a number
*/
class Permutations
{
// Get number multiplier to permutations
fun multiplier(num: Int): Int
{
var n  = num;
var ans: Int = 0;
while (n != 0)
{
if (ans == 0)
{
ans = 1;
}
else
{
ans = ans * 10;
}
n /= 10;
}
return ans;
}
// Find all cyclic permutations in number form
fun permutation(num: Int, actual: Int, multiply: Int): Unit
{
print(" " + num + "\n");
var next: Int = (num % 10) * multiply + (num / 10);
if (next != actual)
{
this.permutation(next, actual, multiply);
}
}
// Handles the request of finding cyclic Permutation
fun cyclicPermutations(num: Int): Unit
{
// When number is less then zero
if (num < 0)
{
return;
}
var multiply: Int = this.multiplier(num);
print("\n Cyclic Permutation Of Number " + num + " are \n");
this.permutation(num, num, multiply);
}
}
fun main(args: Array < String > ): Unit
{
// Test
}``````

#### Output

`````` Cyclic Permutation Of Number 76832 are
76832
27683
32768
83276
68327

Cyclic Permutation Of Number 123456 are
123456
612345
561234
456123
345612
234561

Cyclic Permutation Of Number 420 are
420
42
204``````

## Comment

Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.