Buscar

Logica e Algoritmo...

Construa um Algoritmo que, para um grupo de 300 valores inteiros, determine: a) A soma dos números negativos; b) A quantidade de valores positivos e que são pares

💡 3 Respostas

User badge image

Guilherme Henrique

Qual linguagem q vc quer q faz? portugol?

0
Dislike0
User badge image

Diego Felipe

Você irá fazer uma estrutura for(int i = 0; i < 300; i++){

dentro da estrutura deve ter uma variavel

soma = 0; 

e uma variavel

contador = 0;

e uma estrutura de decisão (if)

Se (numero < 0){

soma = soma + numero;

}

Se não{

contador = contador + 1;

}

Se ele encontrar um numero negativo vai fazer uma soma, se encontrar um posiitivo vai contar quantos positivos passaram

}

0
Dislike0
User badge image

RD Resoluções

Para resolver este problema vamos utilizar um vetor, porém para carregar 300 valores aleatórios seria demorado, então vamos criar uma rotinas para nos ajudar a inserir todos esses valores aleatóriamente para a gente. Logo após vamos operar sobre esse vetor e verificar primeiro a soma de todos os negativos inseridos no vetor. Segundo, vamos contar a quantidade de pares positivos, para todas essas operações utilizaremos estrutura de repetição (for ou while por exemplo) e operadores condicionais (if ou switch), neste caso, if. Vamos também declarar uma constanto com o tamanho que queremos para nosso vetor.

Para saber se um número é par basta utilizar do operador MOD e verificar o resto, que deve ser 0 (zero), na operação N % 2. O caracter porcento (%) representa a operação de MOD na linguagem C.


#include<stdio.h>

//Constante de tamanho

const int TAM = 300;

//Rotina (função) para inicializar vetor

void carrega_vetor(int *vetor[]){

    int valor = 0;

    for(int i = 0; i < TAM; i++){

        //Ira atribuir inteiros possitivos

        valor = (rand() / 1000) + 1;

        //Vamos aleatoriamente adicionar valores negativos

        if((valor % 3) == 0 && (valor % 5) == 1){

            vetor[i] = valor * -1;

        } else {

            vetor[i] = valor;

        }

    }

    return; //Este return serve para sair da função após a conclusão da execução.

}

//Rotina para exibir vetor (Somente para conferencia da inicialização)

void exibe_vetor(int *vetor[]){

    //A cada 50 itens exibidos pulamos uma linha

    int pula_linha = 0;

    for(int i = 0; i < TAM; i++){

        printf(" %d ", vetor[i]);

        if(pula_linha == 25){

            printf("\n");

            pula_linha = 0;

        }

        pula_linha++;

    }

    return;

}

int main() {

    //Declaração de variaveis

    int grupo[TAM], soma_negativos, qtd_pares_positivos;

    //Inicializa vetor

    carrega_vetor(&grupo);

    /*//Exibe carregamento (apena descomentar)

    printf("\n");

    exibe_vetor(&grupo);

    printf("\n\n");*/

    //Inicializa variaveis totalizadoras

    soma_negativos = qtd_pares_positivos = 0;

    //Vamos somar todos os valores negativos;

    for(int i = 0; i < TAM; i++){

        //Somo o valor quando encontrar um negativo

        if(grupo[i] < 0){

            soma_negativos += grupo[i];

        }

        //Processa pares positivos

        if(grupo[i] > 0 && ((grupo[i] % 2) == 0)){

            //Incremento quando achar um par positivo

            qtd_pares_positivos++;

        }

    }

    //Exibe total da soma dos negativos

    printf("Soma de todos os negativos: %d", soma_negativos);

    printf("\n");

    //Exibe total de pares positivos

    printf("Total de pares positivos: %d", qtd_pares_positivos);

    printf("\n");

    return 0;

}

0
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais