Na programação, variáveis, operadores e tipos de dados são extremamente importantes para a transformação dos dados de entrada em dados (ou informações) de saída. Praticamente todas as linguagens de programação fazem uso dessas estruturas para manipular valores durante a execução de um algoritmo.Em determinadas situações, é preciso validar esses dados, principalmente quanto ao seu tipo, para que o programa não falhe.
Suponha que você é o programador de uma empresa de contabilidade.
Descrição da imagem não disponívelCom base nessas informações, responda:
A) Qual função do Python poderia ser usada para verificar se o que foi digitado, para o valor que vai a esquerda ou a direita do operador, é um valor numérico?
B) Como ficaria a expressão lógica que está sendo avaliada pela instrução if?
A) Pode ser usada a função isnumeric(), presente no tipo str, para avaliar se um determinado valor escrito com o tipo str (string) pode ser convertido para numérico.
B) A expressão lógica de avaliação, juntamente com a instrução if, ficaria dessa forma:
if op in op_validos and e.isnumeric() and d.isnumeric():
if op == "/" and d == "0":
print("Divisão por zero! Tente novamente.")
continue.
op_validos = ["+", "-", "*", "/"]
while True:
e = input("Digite o valor a esquerda do operador: ")
op = input(f"Digite o operador. Opções: {op_validos}")
d = input("Digite o valor a direita do operador: ")
if op in op_validos and e.isnumeric() and d.isnumeric():
A) Pode ser usada a função isnumeric(), presente no tipo str, para avaliar se um determinado valor escrito com o tipo str (string) pode ser convertido para numérico.
B) A expressão lógica de avaliação, juntamente com a instrução if, ficaria dessa forma:
if op in op_validos and e.isnumeric() and d.isnumeric():
if op == "/" and d == "0":
print("Divisão por zero! Tente novamente.")
continue.
Veja como ficaria o programa completo:
op_validos = ["+", "-", "*", "/"]
while True:
e = input("Digite o valor a esquerda do operador: ")
op = input(f"Digite o operador. Opções: {op_validos}")
d = input("Digite o valor a direita do operador: ")
if op in op_validos and e.isnumeric() and d.isnumeric():
Lista de comentários
Resposta:
A) Pode ser usada a função isnumeric(), presente no tipo str, para avaliar se um determinado valor escrito com o tipo str (string) pode ser convertido para numérico.
B) A expressão lógica de avaliação, juntamente com a instrução if, ficaria dessa forma:
if op in op_validos and e.isnumeric() and d.isnumeric():
if op == "/" and d == "0":
print("Divisão por zero! Tente novamente.")
continue.
op_validos = ["+", "-", "*", "/"]
while True:
e = input("Digite o valor a esquerda do operador: ")
op = input(f"Digite o operador. Opções: {op_validos}")
d = input("Digite o valor a direita do operador: ")
if op in op_validos and e.isnumeric() and d.isnumeric():
if op == "/" and d == "0":
print("Divisão por zero! Tente novamente.")
continue
expressao = e + " " + op + " " + d
print(e, op, d, "=", eval(expressao))
break
print("Valores ou operador incorreto!").
Explicação:
Resposta:
A) Pode ser usada a função isnumeric(), presente no tipo str, para avaliar se um determinado valor escrito com o tipo str (string) pode ser convertido para numérico.
B) A expressão lógica de avaliação, juntamente com a instrução if, ficaria dessa forma:
if op in op_validos and e.isnumeric() and d.isnumeric():
if op == "/" and d == "0":
print("Divisão por zero! Tente novamente.")
continue.
Veja como ficaria o programa completo:
op_validos = ["+", "-", "*", "/"]
while True:
e = input("Digite o valor a esquerda do operador: ")
op = input(f"Digite o operador. Opções: {op_validos}")
d = input("Digite o valor a direita do operador: ")
if op in op_validos and e.isnumeric() and d.isnumeric():
if op == "/" and d == "0":
print("Divisão por zero! Tente novamente.")
continue
expressao = e + " " + op + " " + d
print(e, op, d, "=", eval(expressao))
break
print("Valores ou operador incorreto!").
Explicação: