public class conta {
public static void main (String[] args){
long arrai_a [][]= new long [255][1];
long arrai_b [][]= new long [255][1];
for (int a=00; a <=10; ++a)
for (int b =0; b < 1; ++b)
for (int c=00;c <=10; c++)
for (int d =0; d < 1;++d)
System.out.println (String.format(""+ a + c +""));
3 perguntas:
Pode dizer-se que este projecto está a a correr dentro da matriz, ou por outra forma está a preenche-la?
(""+ +"") é exclusivo nas matrizes? É que com este ("%02d",x)); não funciona! Dá erro!
Como é que posso formatar a saída neste caso (""+ +"") para acrecentar zeros à esquerda e converter a hex?
Acho que isso nem compila. Vc está repetindo variáveis a e b. Vc declara matrizes e depois as declara como int dentro do for. Então mesmo que compilasse, esse código estaria apenas lidando com inteiros a,b e c…
Na minha ignorância, admito que concretamente não percebo se está bem ou mal, daí as minhas perguntas se corre ou não dentro da matriz. Quanto à funcionalidade do código obtenho a contagem que pretendo ou seja
int a int b
0 1
0 2
0 3
e por aí adiante até
10 10
O problema é que com a “máscara” (""+ a + b"") não consigo acrescentar os zeros à esquerda.
PS: Já consegui corrigir a máscara tal como queria color=darkblue)[/color]
zero a esquerda de um inteiro torna o número um octal, se não me engano. E a resposta é não, vc nao está percorrendo a matriz. Vc está criando variáveis inteiras a,b,c e d dentro dos laços e estar nada tem a ver com os vetores a e b criados no início do código. E como vc atribuiu nomes a e b replicados para variáveis, acredito que esse código nem vai compilar…
Compila e corre tal como eu pretendia, a questão é se corre ou não dentro da matriz para dar seguimento ao solicitado em http://www.guj.com.br/posts/list/113006.java , onde o thingol me deu o exemplo baseado num array.
Quando diz que “E como vc atribuiu nomes a e b replicados para variáveis” não percebo?
Tal como disse não tenho base de programação vou lendo, perguntando e vou fazendo.
quando defino arrai_a chamo-lhe variável crio um vetor/array
no laço, quando defino “int a” julgo que estou a definir as linhas do array, enquanto que “int b” serão as colunas, o arrai_b tem as variáveis c e d
e na saída tenho resultado de “a” e “c”. É claro que também eu, apesar do desconhecimento tenho dúvidas, se estou a preencher o array, daí o meu pedido de esclarecimento!
Obrigado pela atenção.
Testei e roudou aqui tb. Aí percebi que rodou pq as variáveis interiras e os vetores estão em escopos diferentes. Então vou fazer diferente, vou colocar o código de preenchimento de um vetor pra vc. Primeiramente, se sua matriz for ter somente uma uma unidade na segunda dimensão, vc poderia utilizar um vetor em vez de uma matriz.
[code]public class ExemploVetor {
public static void main(String[] args) {
int a[]=new int[10];
int b[]=new int[10];
for(int i=0;i<a.length;++i){
a[i]=0;
b[i]=i+1;
}
System.out.printf("Elementos de a: ");
imprimirVetor(a);
System.out.printf("\n\nElementos de b: ");
imprimirVetor(b);
}
public static void imprimirVetor(int[] vetor){
for(int k:vetor){
System.out.printf("%d ",k);
}
}
public class Exemplo{
public static void main( String args [] ){
int arrayDeInteiros[] = new int[5]; //array de 5 números inteiros
arrayDeInteiros[0] = 50;
arrayDeInteiros[1] = 23;
arrayDeInteiros[2] = 666;
arrayDeInteiros[3] = 1;
arrayDeInteiros[4] = 17;
int numeroInteiro;
for( int posicao = 0 ; posicao < 5 ; posicao++ ){ //saída: C:0 23 666 1 17
numeroInteiro = arrayDeInteiros[posicao]
System.out.print( numeroInteiro + " " );
}
int matrizDeInteiros[][] = new int[2][2];
arrayDeInteiros[0][0] = 127;
arrayDeInteiros[0][1] = 88;
arrayDeInteiros[1][0] = 45;
arrayDeInteiros[1][1] = 3;
for( int linha = 0 ; linha < 2 ; linha++ ){
for( int coluna = 0 ; coluna < 2 ; coluna++ ){
numeroInteiro = arrayDeInteiros[linha][coluna];
System.out.print( numeroInteiro + " " );
}
System.out.println();
}
//saída: C:27 88
// C:5 3
}
}
Sugestão: cara, se você tá começando, eu sugiro um bom livro de lógica de programação e algoritmos, você vai sofrer bem menos.
ps: não entendi absolutamente nada do que você queria no outro tópico
Ok! Rodou e aprendi mais qualquer coisa que andava à procura, criar espaçamento entre as linhas \n!
Quanto a vetores e matrizes, bem a ideia do que li é que o vetor pode ter diversas colunas, mas apenas uma linha daí eu usar a matriz.
Obrigado!
No tópico, em que o thingol me respondeu?
É assim isto trata-se dum programa que possa gerar todas as chaves hexadecimais possiveis, com o intuito de abrir os canais Tv pagos, mais concretamente o sistema de codificação BISS ou DCW! Ora isto vai de 0x0000000000000000 a 0xFFFFFFFFFFFFFFFF o que, se não me falha a memoria, um computador usando um programinha chamado BruteForce, pode levar cerca de 3 anos a testar todas as chaves. Se este projecto fosse viável, acredito que quem sabe de programação já o teria posto em prática, mas como gosto disto e até tenho algum tempo, cá-me vou entretendo. No entanto, se eu eliminar todas as chaves que tenham mais de 4 digitos iguais seguidos posso reduzir em muito o tempo de teste. Daí o meu programa que gera as chaves e o exemplo do thingol, com as Expressões regulares, que eu +/- entendi o funcionamento mas sinceramente, não faço a minima ideia de como o juntar ao meu. Como tá o tempo aí cara? Em Portugal está sol mas um frio do caneco!! :lol:
De qualquer maneira, você terá de percorrer todas as soluções possíveis, e aplicar validação de expressão regular, ou seja, ainda é um Brute Force.
Me desculpe a franqueza Codeas, mas é uma certa ingenuidade tentar quebrar um sistema de criptografia dessa maneira. Eles são projetados justamente para tornar essas abordagens inviáveis, mas valeu a tentativa. Na minha opinião, aprenda a programação básica primeiro, comece com exercícios simples. Ao mesmo tempo, você pode ler alguma coisa sobre criptografia, criptoanálise, assim você vai entender como os sistemas de criptografia funcionam.
Por incrivel que lhe pareça, desconhecendo se tem sabe algo sobre os sistemas de encryptação, o sistema BISS é mesmo tratado desta forma, não é público outro meio de lá chegar e parece não existir. O meio conhecido é gravar o video pid do canal a descodificar, inseri-lo no programinha brute force que vai percorrendo as chaves confrontando-as com o video pid até encontrar a correcta e esta é a única forma conhecida de lá chegar e só é funcional porque o operador por enquanto demora a alterar a chave. Mas no fim de contas o que eu quero é ir-me entretendo, não pretendo vir a ser programador, na minha idade já penso é na reforma! Mas sou capaz de comprar então um livrinho, terá é que ser em português pois não me expresso em inglês. Obrigado pela atenção.