Informática, perguntado por hamsesbatista, 2 meses atrás

Um programa em Python deve ler o valor do salário por hora, a quantidade de horas trabalhadas e a quantidade de filhos menores de 14 anos de um funcionário. Deve ser impresso o salário bruto e o salário família. Para calcular o salário família devem ser respeitadas as definições a seguir:

Se o salário bruto for até R$ 750,00 o salário família será de R$ 23,50 por cada filho;
Se o salário bruto for acima de R$ 750,00 e até R$ 1.500,00 o salário família será de R$ 12,50 por cada filho;
Se o salário bruto for acima de R$ 1.500,00 o salário família será de R$ 4,50 por cada filho.
Analise os programas na linguagem Python mostrados a seguir e selecione a alternativa correta para resolver o problema proposto no enunciado:

Anexos:

fiipileggi: to fazendo a mesma prova
hamsesbatista: tem a resposta
fiipileggi: ainda n cheguei nessa questão mas se eu conseguir responder te passo, to matando as de português primeiro
hamsesbatista: ALQUEN PODE ME AJUDAR

Soluções para a tarefa

Respondido por Constanntine
5

Resposta:

A resposta é a letra A.

Explicação:

Logo no início do código é declarado algumas variáveis, e solicitado a entrada delas pelo usuário. Veja que para este algoritmo funcionar a variável salário precisa ser do tipo float(número com vírgula), pois receberá os centavos do salário também(exemplo R$23,50). A variável horas e filhos deve ser do tipo inteiro(sem número com vírgula). Embora podemos ter 0.5 horas, o algoritmo dispensa isso e considera horas sempre como um valor inteiro.

Na letra A estrutura "if sbruto <= 750" ele entra nesse bloco de código caso sbruto for menor ou igual a 750 ou seja é correta. Na parte "elif sbruto <= 1500" essa conferência só será executada caso o sbruto for maior que 750 ou seja está também correto. O "else" ele pega todos os outros casos, e nesse caso os outros casos são valores maiores que 1500. Tornando essa a resposta correta.

Erros nas outras questões:

C: Na linguagem Python a função input() sempre retornará um tipo texto, uma variável texto não pode ser usada para fazer cálculos matemáticos, por isso é necessário fazer uma conversão utilizando int(input()) para uma entrada em inteiro e float(input()) para números com vírgula.

B: No elif é utilizado 'sbruto > 750 or sbruto <= 1500' com essa condição é possível entrar no bloco de até R$1500 reais com valores mais altos do que R$1500 principalmente por causa do 'sbruto > 750'

D: Na declaração das variáveis o texto de espera de entrada é convertido para inteiro e float, isso está incorreto, pois oque precisa ser convertido é a própria entrada do usuário, não a mensagem de espera.

E: Não é possível colocar condições dentro da sintaxe else, se necessário adicionar novas condições utilize elif.

Perguntas interessantes