Coooonsegui!

7 respostas
R

ta, vocês vao me achar o cara mais besta da terra, mas consegui fazer meu primeiro codigo.. quer dizer.. peguei um feito e modifiquei, mas consegui deixar como eu imaginava... ou melhor.. quase.. rss...

segue ele ai em baixo.. e logo depois me ajudem a fazer o que realmente quero

import javax.swing.JOptionPane; 
public class Cripitografa { 
   public static void main( String[] args ) { 

      String entrada; 

      int x ; 
      int digito1; 
      int digito2; 
      int digito3; 
      int digito4; 

      entrada = JOptionPane.showInputDialog( " ! Digite o numero de 4 digitos a ser criptografado ! " ); 
      x = Integer.parseInt( entrada ); 

      digito1 =  ( x + 1 ) ; 
      digito2 =  ( x + 1 ) ; 
      digito3 =  ( x + 1 ) ; 
      digito4 =  ( x + 1 ) ; 


      JOptionPane.showMessageDialog( null, 
        " Número cripitografado = " + digito3 + digito4 + digito1 + digito2, " ! Número Original ! " + x , 
        JOptionPane.INFORMATION_MESSAGE ); 
      System.exit( 0 ); 
   } 
}

Ta.. ele pega o numero inteiro e soma... porem... eu gostaria que ele pegasse apenas um numero e somasse... exemplo

tenho o numero 1212

queria que criptografado ficasse 2323... nao pegasse o numero inteiro, e sim quebrasse numero por numero e assim somasse cada um...

e ele ta ficando 1213121312131213

mas to quase consgeuindo...

agora... como faço para nao especificar a quantidade de numero.. por exeplo... tenho uma serie com 125 numero e quero criptografar... ou eu poderia ter 100 ou só 10... deixar o string em aberto para receber quanto numeros eu quisesse (acho que falei certo.. rs)

valew pessoal!

7 Respostas

S

eh asim q começa!!

H

O mais facil a fazer é o seguinte onde tá

digito1 =  ( x + 1 ) ;

digito2 =  ( x + 1 ) ;

digito3 =  ( x + 1 ) ;

digito4 =  ( x + 1 ) ;

faz

digito1 =  ( x + 1111 ) ;

digito2 =  ( x + 1111 ) ;

digito3 =  ( x + 1111 ) ;

digito4 =  ( x + 1111 ) ;

Assim eu sei que funciona,
Blz

R

“henamaral”:
O mais facil a fazer é o seguinte onde tá

digito1 =  ( x + 1 ) ;

digito2 =  ( x + 1 ) ;

digito3 =  ( x + 1 ) ;

digito4 =  ( x + 1 ) ;

faz

digito1 =  ( x + 1111 ) ;

digito2 =  ( x + 1111 ) ;

digito3 =  ( x + 1111 ) ;

digito4 =  ( x + 1111 ) ;

Assim eu sei que funciona,
Blz

realmente… isso eu consegui… hahaha acho que eh o unico jeito…

agora… alguem sabe como transformar letras em valores???

tipo… eu cripitografar a palavra JAVA… ela ficar sei lah… LDLD

J

esse codigo abaixo faz o que voce descreveu:

int numero = 1212;// o numero que voce quer criptografar
		int util = numero;
		String numeroTemp = Integer.toString(numero);
		int[] temp = new int[numeroTemp.length()];
		String criptografado = " Número cripitografado = ";
		for(int i = numeroTemp.length() - 1, j = 0;
			i >= 0;
			i--, j++) 
		{
			int divisor = (int) Math.pow(10.0, i);
			temp[j] = util / divisor;
			util %= divisor;
			
			temp[j]++; 
			/*nao entendi bem seu algoritmo de criptografia, mas isso faz
			o equivalente a digito1 =  ( x + 1 ) ;, incrementa o digito em 1 unidade,
			sem modularizar, ou seja, se o digito for 9, nao vai pra 0, vai pra 10*/
			
			criptografado += ("" + temp[j]);
		}

espero ter ajudado

R

Com relação as letras, tu pode transformar a String em um Array de char, transforma o char em número, criptografa, depois transforma de voltar pra char e concatena!

R

cara, vc me entendeu perfeitamente… porem… sou novo… calma… como transformo a string em awway de char?

valew pela ajuda pessoal!

R

É o seguinte:

//Transforma em um array de char
String s = "Criptografia";
char[] caracteres = s.toCharArray();

/*
Nessa parte tu faz a rotina de criptografia.
Tu pode usar o char como se fosse um inteiro, porque ele convertido automaticamente.

Exemplo:
*/
int valor = 0;
char novoChar = '';
String strCriptografado = "";
for(int i = 0; i < caracteres.length; i++)
{
    valor = caracteres[i];
    //Criptografar "valor"
    novoChar = (char)valor; //Aqui o novoChar vai receber o valor criptografado
    strCriptografado += novoChar; //Concatena os "novoChar"
}

Mais ou menos isso ai… espero que ajude.

Criado 6 de maio de 2005
Ultima resposta 8 de mai. de 2005
Respostas 7
Participantes 5