Faça um programa que preencha um vetor com 10 números reais, calcule e mostre a quantidade de números negativos e a soma dos números positivos desse vetor.
Passo 1
E ai, lets vamo!
Para essa questão nós vamos utilizar os vectors, então já vamos começar incluindo os cabeçalhos necessários:
Seguindo em frente, vamos pra função , onde vamos declarar as variáveis que vamos precisar.
Vamos precisar de um vector com 10 espaços que armazene os valores inseridos pelo usuário. Uma boa dica é sempre declarar um iterator junto com um vector, então vamos declarar um iterator também.
Para declarar um vector com tamanho definido a gente faz assim:
E para declarar um iterator nós usamos o seguinte comando:
A questão pede que o vector receba números reais, então o tipo deve ser .
O objetivo da questão é que a contabilize a quantidade de números negativos foram inseridos no vetor, e que some todos os números positivos inseridos no vetor. Então vamos criar duas variáveis que sejam capazes de armazenar esses valores:
Passo 2
O próximo passo é pedir pro usuário inserir os valores no vector. Vamos precisar de um laço for que que inicie no começo do vector e aumente de um em um até o final do vector. Pra isso podemos utilizar o iterator e os métodos e para determinar o ponto de início e fim do loop:
Dentro do loop vamos usar o para pedir que o usuário insira um valor. E com o vamos guardar o valor inserido dentro do vector. Lembre-se que um iterator é, na verdade, um ponteiro que aponta pras posições do vector. Então, podemos usar o iterator para inserir o valor digitado no local de memória apropriado.
E não acaba por aqui. Nós podemos aproveitar que já estamos dentro de um loop e contabilizar a quantidade de negativos e somar os valores positivos!
Pra isso vamos precisar de uma estrutura que testa se o número é negativo ou positivo. Se for negativo, então a variável aumenta mais um. Se for positivo, então a gente soma o valor inserido com os demais dentro da variável , neste caso, lembre-se que podemos usar o iterator para acessar o local de memória em que o valor está armazenado.
Em resumo, a cada iteração do loop, o valor inserido pelo usuário é armazenado em um endereço de memória do vector , linhas 15 a 17. Em seguida, se o número for negativo a contagem de negativos aumenta, linhas 18 e 19. Se o número for positivo, somamos ele com os demais positivos, linhas 20 e 21. Em seguida, o loop é finalizado
Passo 3
Por fim, pra terminar a questão, é só a gente imprimir pro usuário a quantidade de números negativos, e a soma dos números positivos:
E finalizamos o programa!