Ir ao conteúdo

Posts recomendados

Postado

Me ajudem ? Foi proposto este exercício:

Faça um programa em Python que recebe um número inteiro e imprime seu dígito das dezenas. Observe o exemplo abaixo:

Exemplo 1:

Entrada de Dados:

Digite um número inteiro: 78615

Saída de Dados:

O dígito das dezenas é 1

Exemplo 2:

Entrada de Dados:

Digite um número inteiro: 2

Saída de Dados:

O dígito das dezenas é 0

Dica: O operador "//" faz uma divisão inteira jogando fora o resto, ou seja, aquilo que é menor que o divisor. O operador "%" devolve apenas o resto da divisão inteira jogando fora o resultado, ou seja, tudo que é maior ou igual ao divisor.

 

 

Estou fazendo deste jeito:

n = int(input("Digite um número inteiro: ")) 
print(n) 
d = (n // 10) % 10 
print("O dígito das dezenas é: %d" % d) 

 

Mas fala que esta errado! No que estou errando ? o que faço?

  • Curtir 1
Postado

Para postar códigos sempre use a tag CODE apertando o botão <> no topo do campo de resposta. E sempre ajuda também postar qual foi o erro que o interpretador acusou no programa.

 

Tente sem os acentos nas palavras:

n = int(input("Digite um numero inteiro: ")) 
print(n) 
d = (n // 10) % 10 
print("O digito das dezenas e: %d" % d)

 

  • Curtir 1
  • 11 meses depois...
Postado

Olá Camilla.

O erro está na linha:

print ("O digito das dezenas e: %d" % d)

 

Deveria ser escrito:

print ("O dígito das dezenas e: ", d)

 

Precisa separar o texto da variável utilizando vírgula.

Para a resolução de seu exercício não há a necessidade da segunda linha, visto que não foi pedido que se imprima na tela o número inteiro digitado.

 

Espero ter ajudado.

Postado
1 hora atrás, isrnick disse:

@Everton Mimura não há erro nessa linha, ela funciona corretamente como está, e nesse caso imprime igual separando por vírgula. Dê uma pesquisada em modos de formatação de strings no Python.

Tem razão. Irei pesquisar. Obrigado!

Na verdade rodei o código dela com acentos, igual está, e funcionou também. Talvez seja somente tirar o  "print(n)" da segunda linha que o corretor do curso irá aceitar como certo.

Postado

@Everton Mimura Que corretor? Curso? A camilla criou esse tópico há quase 1 ano, e pelo que diz no perfil dela ela não acessou esse fórum desde então, logo eu imagino que ela já conseguiu resolver o problema a muito tempo ou não se importa mais sobre essa dúvida.

  • Curtir 1
  • 5 meses depois...
Postado

O que você faz quando quer mover para a esquerda o ponto/vírgula em um número? Divide por 10...

 

1234 / 10 = 123.4

 

Mas essa é uma divisão racional, e resulta em um número racional.

 

 

Entretanto se fizermos a divisão inteira por 10 o que acontece é que eliminamos o último dígito, pois não consideramos parte fracionária em números inteiros.

 

1234 // 10 = 123

 

 

Em divisão inteira obtém-se o resultado (ou quociente) e sobra um resto (e usamos o resto da divisão inteira por 10 para obter o último digito do número dividendo).

  • Curtir 1
  • 1 ano depois...
Postado

@isrnick

 

Estou fazendo o mesmo exercicio e o script que usei foi esse:

 

n = int (input("Digite um número inteiro: ")) 
d = (n // 10) % 10 
print()
print("O dígito das dezenas é:", d)

e funcionou, espero ter ajudado.

  • Curtir 2
  • 2 meses depois...
Postado

@camilla zuba tudo bem? 
Percebo que no último PRINT você coloca % d  , tente retirar o % e adicionar uma , seria: , d

No caso fiz assim:
889207051_exerciciosCUsersCristiano.YAHOAHPycharmProjectsexercicios-.._023.py-PyCharm.jpg.6c6658eaabdde990d94e982925ab9f10.jpg
OBS:

Uma vez que não utilizarei os números resultantes em um futuro próximo, optei por mante-los dentro do print mas poderia criar variáveis que armazenassem seus resultados para o futuro.

 

  • Curtir 1
  • 3 meses depois...
Postado
morango=int(input("Digite um número inteiro:"))

laranja=int(morango%10)

melancia=int(morango-laranja)

limao=int(melancia/10)

resultado=int(limao%10)

print("O dígito das dezenas é", resultado)

Gente, não liguem pros nomes das variáveis, eu sou de humanas...rs Mas roda certinho! :)

  • Curtir 1
Postado

Então, eu testei e o programa roda certinho, da o resultado esperado. Porém, esta é uma questão do curso do IME, no coursera que eu também fiz. Caso seja o caso da colega, o programa que eles montaram para corrigir os exercícios  admite qualquer variação na resposta como espaços a mais, saídas, e pontuações, como um erro. Eles pediram:

 

Saída de Dados:

O dígito das dezenas é 0

 

No caso, tem uma saída a mais que é a linha 2,  e o ' : ' no último print deve ter sido rejeitado. É o que eu imagino, já que o programa roda liso.. 

 

Espero ter ajudado!

 

  • Curtir 2
Postado

@camilla zuba

pode ser tão simples como isso:

num = input()
print(num[len(num)-2])

Ajustando para ficar mais fácil de compreender:

num = input('Digite um número: ')
if len(num > 1):
    print(f'O digito das desenas é {num[len(num)-2]}')
else:
    print(f'Não há digito das desenas')

Basicamente eu li o input como uma string e retirei o penúltimo dígito.

 

Aqui está um terceiro código caso algum espertinho tente burlar o programa escrevendo um numero flutuante:

from math import trunc
num = trunc(float(input('Digite um número: ')))
num = str(num)

if len(num > 1):
    print(f'O digito das desenas é {num[len(num)-1]}')
else:
    print(f'Não há digito das desenas')

aqui eu usei a função trunc() da biblioteca math. Sua função é remover o ponto flutuante e deixar apenas a parte inteira.

Exemplo:

num = 1.4245

trunc(num)

saída: 1

depois eu converto o input para uma string e faço o processo anterior.

  • Curtir 1
Postado
Em 18/04/2020 às 16:42, GrowingSky disse:

@camilla zuba

pode ser tão simples como isso:


num = input()
print(num[len(num)-2])

Ajustando para ficar mais fácil de compreender:


num = input('Digite um número: ')
if len(num > 1):
    print(f'O digito das dezenas é {num[len(num)-2]}')
else:
    print(f'Não há digito das dezenas')

Basicamente eu li o input como uma string e retirei o penúltimo dígito.

 

Aqui está um terceiro código caso algum espertinho tente burlar o programa escrevendo um numero flutuante:


from math import trunc
num = trunc(float(input('Digite um número: ')))
num = str(num)

if len(num > 1):
    print(f'O digito das dezenas é {num[len(num)-1]}')
else:
    print(f'Não há digito das dezenas')

aqui eu usei a função trunc() da biblioteca math. Sua função é remover o ponto flutuante e deixar apenas a parte inteira.

Exemplo:

num = 1.4245

trunc(num)

saída: 1

depois eu converto o input para uma string e faço o processo anterior.

 

  • Curtir 1
  • mês depois...
Postado

N=int(input("Digite o num inteiro"))

Print(N)

Div=(N/10)%10

Dig=Div

Print("O dig das dezenas é ", dig)

 

Tem que prestar muita ATENÇÃO nas vírgulas (,) e nos (), senão da errado o resultado.

  • Curtir 1
  • mês depois...
Postado
Em 09/02/2017 às 12:03, camilla zuba disse:

Me ajudem ? Foi proposto este exercício:

Faça um programa em Python que recebe um número inteiro e imprime seu dígito das dezenas. Observe o exemplo abaixo:

Exemplo 1:

Entrada de Dados:

Digite um número inteiro: 78615

Saída de Dados:

O dígito das dezenas é 1

Exemplo 2:

Entrada de Dados:

Digite um número inteiro: 2

Saída de Dados:

O dígito das dezenas é 0

Dica: O operador "//" faz uma divisão inteira jogando fora o resto, ou seja, aquilo que é menor que o divisor. O operador "%" devolve apenas o resto da divisão inteira jogando fora o resultado, ou seja, tudo que é maior ou igual ao divisor.

 

 

Faça assim que funciona:


n = int(input("Digite um número inteiro: ")) 
d = (n // 10) % 10 
print("O dígito das dezenas é:" , d) 

Tirei o primeiro print, pois a saída de dados solicita a pena o último print.

Você está usando a formatação do print igual a C, e não precisa tirei o %d tb.

 

 

  • Amei 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!