Ir ao conteúdo
  • Cadastre-se

matriz nxn; rand, media, contagem, pares, impares, intervalo...


Posts recomendados

Será que eu codifiquei certo o problema 'G'???

 

Desenvolva um programa que gere uma matriz nxn com valores aleatórios
positivos menores do que 1000. A partir dele, desenvolva programas para:
a) Calcular a média dos elementos;
b ) Contar quantos elementos da matriz são pares;
c) Calcular a média dos elementos pares;
d) Calcular a média dos elementos ímpares;
e) Mostrar os elementos menores do que 200 e maiores do que 800;
f) Calcular a soma dos elementos maiores do que 300 e menores do que 700;
g) Gerar outra matriz, sendo que os elementos das linhas e colunas pares são o
dobro do elemento da matriz de origem, e os elementos das linhas e colunas
ímpares são a metade do elemento da matriz de origem.

#include <stdio.h>
#include <time.h>

int main()
{
    int n, i, j;
    scanf("%d",&n);
    int mtz[n][n];
   srand(time(NULL));

    for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            mtz[i][j] = rand()%999;
        }
    }

    for(i=0;i<n;i++){
            printf(" \n\n ");
        for(j=0;j<n;j++){
        printf(" %d ",mtz[i][j]);
        }
    }

    float med,sum = 0;
    for(i=0;i<n;i++){
        for(j=0;j<n;j++){
        sum = sum + mtz[i][j];
        }
    }
    printf("\n\n\na) media dos elementos:\n%f",sum/(n*n));


int parsum=0, impsum=0, par=0, impar=0;

    for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            if(mtz[i][j]%2==0){
            parsum = parsum + mtz[i][j];
            par++;
                    }
                else
                    {
                    impsum = impsum + mtz[i][j];
                    impar++;
                }
        }
    }
    printf("\n\nb) qtd pares:\n %d\n\nqtd impares:\n %d",par,impar);

    printf("\n\nsoma dos pares:\n %d\n\nsoma dos impares:\n %d",parsum,impsum);

    float medpar, medimp;

    medpar = parsum/par;
    medimp = impsum/impar;
    printf("\n\nc) media dos pares:\n %f",medpar);
    printf("\n\nd) media dos impares:\n %f",medimp);

    printf("\n\n\ne) os menores que 200 e maiores que 800:\n\n");

    for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            if (mtz[i][j] < 200 || mtz[i][j] > 800){
                printf(" %d ",mtz[i][j]);}
        }
    }

    int sumf=0;

       for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            if(mtz[i][j] > 300 && mtz[i][j] < 700){
              sumf = sumf + mtz[i][j];
            }
        }
    }
    printf("\n\nf) soma entre 301 a 699:\n %d \n\n",sumf);

    float mtz2[n][n];
printf("g) segunda matriz (linhas e colunas pares * 2) && (linhas e colunas impares / 2):");
    for(i=0;i<n;i++){
        for(j=0;j<n;j++){

        if ((i+1%2==0) && (j+1%2==0)){
            mtz2[i][j] = 2*(mtz[i][j]);
        }
            else{
            mtz2[i][j] = (mtz[i][j])/2;
            }
        }
    }

     for(i=0;i<n;i++){
            printf(" \n\n ");
        for(j=0;j<n;j++){
        printf(" %.0f ",mtz2[i][j]);
        }
    }
printf("\n\n\n");
    return 0;
}

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!