FYI: Ceci est un exercice de devoirs. J'ai travaillé dessus, mais maintenant je suis coincé. Tous les conseils/aide seraient appréciés. Je l'ai regardé un moment et aucun progrès n'a été fait.Aide de la matrice binaire à caractère
Résumé de la question: Neuf pièces sont placées dans une matrice 3x3 avec un face vers le haut et une face vers le bas. Têtes = 0 et queues = 1. Chaque état peut également être représenté en utilisant un nombre binaire. Il y a 512 possibilités. Problème: Ecrire un programme qui demande à l'utilisateur un nombre entre 0-511 et affiche la matrice correspondant aux caractères H et T comme ceci:
L'utilisateur entre le numéro 7 (qui est 000000111 ou HHHHHHTTT) affichage doit être: HHH HHH TTT
C'est ce que j'ai jusqu'à présent. Je ne demande pas nécessairement la réponse, je voudrais juste pousser dans la bonne direction. Merci
import java.util.Scanner;
public class converting {
public static void main(String[] ar) {
Scanner s = new Scanner(System.in);
System.out.print("Enter a number between 0 and 511: ");
int number = s.nextInt();
if(number <= 511 && number > 0)
{
String bin = Integer.toBinaryString(number);
String tails = bin.replace('1', 'T');
int count = 0;
char[] arr = tails.toCharArray();
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]);
count++;
if (count == 3) {
System.out.println();
count = 0;
}
}
}
else{
System.out.print("Please enter a number between 0 and 511\n");
}
}
}
Merci pour la réponse.J'ai ajouté un chèque pour les numéros valides si (nombre <= 511 && nombre> 0). J'ai également essayé d'utiliser remplacer et je l'ai eu pour travailler pour T: String Tails = bin.replace ('1', 'T'); Ma question est maintenant comment puis-je remplacer tous les F avec 0. Mon tableau char est actuellement char [] arr = tails.toCharArray(); qui a seulement les 1 remplacés. Cela a-t-il du sens? Existe-t-il un moyen de mettre à jour mon premier message avec le code que j'ai maintenant? – relyt
Ok. Mise à jour du premier message Merci! – relyt
@relyt: Ce '' 0 '' ne devrait-il pas être '> = 0'? Ou est-ce que l'utilisateur n'est pas autorisé à avoir un tableau qui est tout 'H's? –