1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Problemas para adaptar um código do python para o java

Boa noite,

Pessoal, estou fazendo um trabalho na faculdade em que eu preciso fazer um programa que faça conversão entre bases numéricas. Eu já fiz boa parte do trabalho em python, mas como o trabalho é em equipe, eu preciso passar o código para java, pois é a linguagem que a maioria dos membros sabe.

Pois bem o problema é na conversão de binário para octal, pois preciso agrupar em grupo de 3 bits e só então fazer as devidas contas.

Em python, eu fiz algo assim:

def bitooc(binario):
    total = '' 
    #Verifica se o tamanho do número binário é multiplo de 3, caso contrário, adiciona-se 0 a esquerda.
    if len(binario) % 3 != 0:
        while len(binario) % 3 != 0:
            binario = '0' + binario

    lista = []
    string = ''

    x = 0
    #Separo os bits em grupos de 3 na variavel string e adiciono a variavel a lista "lista"
    while x < len(binario):
        string += binario[x]
        if (x + 1) % 3 == 0:
            lista.append(string)
            string = ''

        x += 1
    #for para interagir sobre cada elemento da lista
    for x in lista:
        cont = 2
        num = 0
        for y in x: # for para interagir com cada caracter de cada uma das strings
            num += int(y) * (2 ** cont)
            cont -= 1
        total += str(num)
    return total

Eu estou tentando usar a mesma lógica no java usando um arraylist, mas eu não consigo usar o segundo for para correr os elementos da string.

  • Ao invés de tentar passar o código exatamente como está para Java, por que você não procura entender como é o algoritmo e reescrevê-lo em Java? E os outros membros da equipe, não podem te ajudar?

    TerraSkilll   26 de ago de 2015
  • Eu acho que o jeito é tentar pensar em outra solução usando o java. O outro membro da equipe já fez outras conversões, estou fazendo todas só por "diversão" e para aprender um pouco mais. Estou tentando passar para o java somente as minhas conversões de base.

    Alyson Brito   26 de ago de 2015
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags python java ou faça a sua própria pergunta.