Мне нужно создать программу, которая будет читать число символов, которые будут напечатаны, и она будет печатать случайные символы (az, AZ, 0-9 и такие символы, как!, &, $, Et c). И первый символ, который будет напечатан, не может быть числом (0-9).
Таким образом, пример вывода будет выглядеть следующим образом:
Длина переменной? 20
a5fTnO $ akP_a12BahsiO
Это то, что у меня есть, но я застрял и не знаю, что еще я могу сделать, чтобы сделать это работает. Я не уверен, что я тоже на правильном пути.
Было бы проще для меня создать строку символов, а затем просто получить случайные символы из строки (если это возможно)?
import java.util.Scanner;
public class VariableNameRandomGen{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.print("Length of the variable? ");
int num = sc.nextInt();
final int noOfChars = num;
final int charsPerLine = num;
for(int i = 0; i < noOfChars; i++){
char ch = getRandomCharacter();
if((i+i) % charsPerLine == 0)
System.out.println(ch);
else
System.out.print(ch);
}
}
public static char getRandomCharacter(char ch1, char 2){
return (char)(ch1 + Math.random() * (ch2 - ch1 + 1));
}
public static char getRandomUpperCaseLetter(){
return getRandomCharacter('A', 'Z');
}
public static char getRandomDigitCharacter(){
return getRandomCharacter('0', '9');
}
}