This is the java program to generate N passwords each of length M given by the user. The number of passwords, N, returned doesn’t exceed M!.
Here is the source code of the Java Program to Generate N Number of Passwords of Length M Each. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is sample program to generate N passwords of length M, where N < M!
import java.util.Random;
import java.util.Scanner;
public class N_Password_M_Length
{
static void permute(int []a, int k)
{
if(k==a.length)
{
for(int i=0; i<a.length; i++)
{
System.out.print(a[i]);
}
System.out.println();
}
else
{
for (int i = k; i<a.length; i++)
{
int temp=a[k];
a[k]=a[i];
a[i]=temp;
permute(a,k+1);
temp=a[k];
a[k]=a[i];
a[i]=temp;
}
}
}
public static void main(String args[])
{
System.out.println("Enter the length of the password: ");
Scanner input = new Scanner(System.in);
int m = input.nextInt();
Random random = new Random();
int []a = new int[m];
for(int i=0; i<m; i++)
{
a[i] = random.nextInt(10);
}
System.out.println("The Possible Passwords are: ");
N_Password_M_Length.permute(a, 0);
input.close();
}
}
Output:
$ javac N_Password_M_Length.java $ java N_Password_M_Length Enter the length of the password: 5 The Passwords are: 31210 31201 31120 31102 31012 31021 32110 32101 32110 32101 32011 32011 31210 31201 31120 31102 31012 31021 30211 30211 30121 30112 30112 30121 13210 13201 13120 13102 13012 13021 12310 12301 12130 12103 12013 12031 11230 11203 11320 11302 11032 11023 10213 10231 10123 10132 10312 10321 21310 21301 21130 21103 21013 21031 23110 23101 23110 23101 23011 23011 21310 21301 21130 21103 21013 21031 20311 20311 20131 20113 20113 20131 11230 11203 11320 11302 11032 11023 12130 12103 12310 12301 12031 12013 13210 13201 13120 13102 13012 13021 10231 10213 10321 10312 10132 10123 01213 01231 01123 01132 01312 01321 02113 02131 02113 02131 02311 02311 01213 01231 01123 01132 01312 01321 03211 03211 03121 03112 03112 03121
Related posts:
Java Program to Implement LinkedBlockingQueue API
Java Program to Compute the Area of a Triangle Using Determinants
Java – Reader to InputStream
Entity To DTO Conversion for a Spring REST API
Java Program to Find the Minimum value of Binary Search Tree
“Stream has already been operated upon or closed” Exception in Java
Spring Boot - Building RESTful Web Services
Java Program to Generate All Possible Combinations of a Given List of Numbers
Filtering a Stream of Optionals in Java
Java Program to Implement Borwein Algorithm
Java Program to Implement Flood Fill Algorithm
Refactoring Design Pattern với tính năng mới trong Java 8
Hướng dẫn Java Design Pattern – MVC
Đồng bộ hóa các luồng trong Java
Giới thiệu Design Patterns
Class Loaders in Java
Spring @RequestMapping New Shortcut Annotations
Java Program to Check whether Graph is Biconnected
Sending Emails with Java
Logout in an OAuth Secured Application
Guide to the Synchronized Keyword in Java
Spring Boot - Bootstrapping
Supplier trong Java 8
New Stream Collectors in Java 9
Java Program to Perform LU Decomposition of any Matrix
Spring Data JPA Delete and Relationships
A Custom Data Binder in Spring MVC
Java Program to Find Location of a Point Placed in Three Dimensions Using K-D Trees
Java Program to Check whether Directed Graph is Connected using DFS
Spring Boot - Batch Service
Java Program to Implement Binary Tree
Java – Write a Reader to File