Crie um programa(código) na linguagem scilab para resolver a questão a seguir: Escreva um programa que leia vários números inteiros dados pelo usuário, até o usuário inserir o valor 0, e exiba, no final, o somatório dos números positivos pares e a quantidade de números negativos ímpares. O valor 0 não deve ser levado em conta.
Passo 1
Vamos resolver um exercício de programação em Scilab! A tarefa é criar um programa que leia vários números inteiros fornecidos pelo usuário até que ele digite o valor 0. No final, o programa deve mostrar a soma dos números positivos que são pares e contar quantos números negativos são ímpares. O 0 não será considerado nessa contagem. Para resolver isso, vamos precisar entender como usar estruturas de repetição, condicionais e como realizar operações matemáticas básicas no Scilab.
Passo 2
Primeiro, vamos pensar em como o programa vai funcionar. Precisamos que o programa continue pedindo números até que o usuário insira 0. Para isso, vamos usar um loop, mais especificamente um loop
while
, que vai continuar executando enquanto a condição for verdadeira.Passo 3
Dentro do loop, para cada número que o usuário digitar, precisamos verificar duas coisas:
- Se o número é positivo e par: para somar esses números.
- Se o número é negativo e ímpar: para contar esses números.
Vamos usar condicionais
if
para fazer essas verificações.Passo 4
Para verificar se um número é par, podemos usar a operação de módulo, que nos dá o resto da divisão de um número por 2. Se o resto for 0, o número é par. A fórmula é:
Para verificar se é ímpar:
Passo 5
Vamos inicializar duas variáveis antes do loop:
soma_pares
para armazenar a soma dos números positivos pares.cont_neg_impares
para contar os números negativos ímpares.
Começamos essas variáveis com valor 0.
Passo 6
Dentro do loop, para cada número inserido:
- Se o número for maior que 0 e par, adicionamos ele à
soma_pares
. - Se o número for menor que 0 e ímpar, incrementamos o
cont_neg_impares
em 1.
Passo 7
Quando o usuário digitar 0, o loop vai parar. Então, fora do loop, vamos exibir os resultados: a soma dos números positivos pares e a quantidade de números negativos ímpares.
Passo 8
Agora, vamos traduzir isso para o código Scilab:
// Inicializa as variáveis
soma_pares = 0;
cont_neg_impares = 0;
// Pede o primeiro número
numero = input("Digite um número inteiro (0 para sair): ");
// Inicia o loop
while numero <> 0
// Verifica se o número é positivo e par
if numero > 0 then
if mod(numero, 2) == 0 then
soma_pares = soma_pares + numero;
end
// Verifica se o número é negativo e ímpar
elseif numero < 0 then
if mod(numero, 2) ~= 0 then
cont_neg_impares = cont_neg_impares + 1;
end
end
// Pede o próximo número
numero = input("Digite um número inteiro (0 para sair): ");
end
// Exibe os resultados
disp("A soma dos números positivos pares é: " + string(soma_pares));
disp("A quantidade de números negativos ímpares é: " + string(cont_neg_impares));
Resposta
O programa está pronto! Quando você executá-lo, ele irá solicitar números inteiros até que você digite 0. No final, ele mostrará a soma dos números positivos pares e a quantidade de números negativos ímpares inseridos.