Ir ao conteúdo
  • Cadastre-se

maria paiva

Membro Júnior
  • Posts

    7
  • Cadastrado em

  • Última visita

posts postados por maria paiva

  1. Essa primeira parte conseguir fazer. Segue abaixo o programa. 

    Agora como introduzir nesse programa o seguinte esquema:

    "multiplicar os elementos da diagonal principal da matriz A pela diagonal secundária da matriz B e armazenar na diagonal principal de uma 4a matriz. Os outros elementos serão da 3a matriz"

     

     

    #include <stdio.h>
    #include <stdlib.h>
    #define linA 2
    #define colA 2
    #define linB 2
    #define colB 2

    int main()
    {

        int i,j,k1,k2;
        

        float A[linA][colA];
        float B[linB][colB];
        float C[linA][colB];
        float temp;

        // Carregando matriz A
        printf(" \n CARREGAMENTO DA MATRIZ A \n \n");
        for(i=0;i<linA;i++)
        {
            for(j=0;j<colA;j++)
            
            {
                printf("A[%d][%d] = ",i+1,j+1);
                Label_1:                            // Label do comando Goto , volta para esse ponto do programa
                
                scanf("%f",&A[i][j]);
                if (A[i][j] <= 4.88) 
                {
                printf("Digitou menor Que 4.88 , tente novamente\n");
                goto Label_1;                      // vai para o ponto informado pelo Label
            }
        }
    }
        // Carregando matriz B
        printf(" \n CARREGAMENTO DA MATRIZ B \n \n");
        for(i=0;i<linB;i++)
        {
            for(j=0;j<colB;j++)
            {
                printf("B[%d][%d] = ",i+1,j+1);
                Label_2:                            // Label do comando Goto , volta para esse ponto do programa
                scanf("%f",&B[i][j]);
                if (B[i][j] <= 4.88) 
                {
                printf("Digitou menor Que 4.88 , tente novamente\n");
                goto Label_2;                      // vai para o ponto informado pelo Label
            }
        }
    }
            
        // Imprimindo a matriz A

        printf("\n MATRIZ A \n \n");
        for(i=0;i<linA;i++)
        {
            for(j=0;j<colA;j++)
            {
                if(j!=(colA-1))
                    printf("%.2f \t",A[i][j]);

                else
                    printf("%.2f \n",A[i][j]);
            }
        }
        printf("\n \n");
       

        // Imprimindo a matriz B

        printf("\n MATRIZ B \n \n");
        for(i=0;i<linB;i++)
        {
            for(j=0;j<colB;j++)
            {
                if(j!=(colB-1))
                    printf("%.2f \t",B[i][j]);

                else
                    printf("%.2f \n",B[i][j]);
            }
        }

        for(k1=0;k1<linA;k1++)
        {
            for(k2=0;k2<colB;k2++)
            {
                temp=0.0;
                for(i=0;i<colA;i++)
                {
                    temp=temp+A[k1][i]*B[i][k2];
                }
                C[k1][k2]=temp;
            }
        }

        printf("\n \n");
       

        printf("\n MATRIZ C = A x B \n \n");

        for(i=0;i<linA;i++)
        {
            for(j=0;j<colB;j++)
            {
                if(j!=(colB-1))
                {
                    printf("%.2f \t",C[i][j]);
                }
                else
                {
                    printf("%.2f \n",C[i][j]);
                }
            }
        }

        return 0;}
     

    • Obrigado 1
  2. Escreva um programa em C que permite ao usuário digitar números reais maiores que 4.88 para preencher as matrizes A16 x 16 e matriz B16 x 16.  Como fazer isso nesse código?

     

    #include <stdio.h>
    #include <stdlib.h>

    int main()
    {

        int i,j,k1,k2;
        int linA,colA,linB,colB;
        printf("PRODUTO DE MATRIZES A X B \n \n");
        printf("Quantidade de linhas da Matriz A = ");
        scanf("%d",&linA);
        printf("Quantidade de colunas da Matriz A = ");
        scanf("%d",&colA);
        printf("Quantidade de linhas da Matriz B = ");
        scanf("%d",&linB);
        printf("Quantidade de colunas da Matriz B = ");
        scanf("%d",&colB);

        float A[linA][colA];
        float B[linB][colB];
        float C[linA][colB];
        float temp;

        if(colA!=linB)
        {
            printf("A multiplicacao não pode ser realizada.\n");
            printf("A quantidade de colunas de A e diferente do numero de linhas de B.\n");
            return 0;
        }

        // Carregando matriz A
        printf(" \n CARREGAMENTO DA MATRIZ A \n \n");
        for(i=0;i<linA;i++)
        {
            for(j=0;j<colA;j++)  
            {
                printf("A[%d][%d] = ",i+1,j+1);
                scanf("%f",&A[i][j]);
            }
        }

        // Carregando matriz B
        printf(" \n CARREGAMENTO DA MATRIZ B \n \n");
        for(i=0;i<linB;i++)
        {
            for(j=0;j<colB;j++)
            {
                printf("B[%d][%d] = ",i+1,j+1);
                scanf("%f",&B[i][j]);
            }
        }

        // Imprimindo a matriz A

        printf("\n MATRIZ A \n \n");
        for(i=0;i<linA;i++)
        {
            for(j=0;j<colA;j++)
            {
                if(j!=(colA-1))
                    printf("%.2f \t",A[i][j]);

                else
                    printf("%.2f \n",A[i][j]);
            }
        }
        printf("\n \n");
        system("pause");

        // Imprimindo a matriz B

        printf("\n MATRIZ B \n \n");
        for(i=0;i<linB;i++)
        {
            for(j=0;j<colB;j++)
            {
                if(j!=(colB-1))
                    printf("%.2f \t",B[i][j]);

                else
                    printf("%.2f \n",B[i][j]);
            }
        }

        for(k1=0;k1<linA;k1++)
        {
            for(k2=0;k2<colB;k2++)
            {
                temp=0.0;
                for(i=0;i<colA;i++)
                {
                    temp=temp+A[k1][i]*B[i][k2];
                }
                C[k1][k2]=temp;
            }
        }

        printf("\n \n");
        system("pause");

        printf("\n MATRIZ C = A x B \n \n");

        for(i=0;i<linA;i++)
        {
            for(j=0;j<colB;j++)
            {
                if(j!=(colB-1))
                {
                    printf("%.2f \t",C[i][j]);
                }
                else
                {
                    printf("%.2f \n",C[i][j]);
                }
            }
        }

        return 0;

    }
     

    • Obrigado 1
  3. Alguém poderia me ajudar. Escreva um programa em C que permite ao usuário digitar números reais maiores que 4.88 para preencher as matrizes A16 x 16 e matriz B16 x 16. Além disso, o programa deverá calcular e mostrar na sequência, os resultados dos itens a seguir:

     

    Fazer o produto entre as duas matrizes e armazenar em uma 3a matriz;

    multiplicar os elementos da diagonal principal da matriz A pela diagonal secundária da matriz B e armazenar na diagonal principal de uma 4a matriz. Os outros elementos serão da 3a matriz;

    Calcular a média geral das matrizes resultantes dos itens I e II. Identificar e mostrar todos os elementos que são maiores 32% do que o valor da média de cada matriz resultante. Fazer os cálculos individualmente para cada matriz resultante dos itens I e II.

    Cria um vetor do tamanho da matriz 3a do item I e preencher com todos os elementos dessa matriz na ordem crescente.

    Cria um vetor do tamanho da matriz 4a do item II e preencher com todos os elementos dessa matriz na ordem decrescente.

    Dividir os elementos da diagonal secundária da matriz 3a do item I por 4.88 se os elementos forem pares, caso contrário, divide por 8;  

    Armazenar o resultado dos itens VI em um vetor 1 de tamanho adequado;

    Identificar os elementos das colunas 8 e 16 da matriz 4a do item II que são maiores que 16 e armazenar no vetor 1, após os número do item VII.

     

    Obs.: inicie mostrando os elementos das matrizes que foram digitados pelo usuário. Depois, cada item deve ter seu resultado mostrado antes de calcular o próximo item.

    • Obrigado 1

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!