Guião laboratorial n.º 0 – exercício 7

“Desenvolva uma função que preencha uma matriz 10×3 da seguinte forma: em cada uma das linhas, a primeira coluna deve ficar com um inteiro entre 1 e 100 introduzido pelo utilizador, a segunda coluna com o quadrado deste valor e a terceira com o cubo. Durante o preenchimento deve garantir que não existem repetições nos valores da primeira coluna. Antes de terminar, a função deve apresentar o conteúdo completo da matriz no monitor e indicar quantas posições têm valores superiores a 1000.”

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

#define LINHAS 10
#define COLUNAS 3

void matrix(){
int vector[LINHAS][COLUNAS];
int conta=0, aux=0, i, verifica=0, superiroes=0;

//preencher a primeia coluna
do{
    printf("\nIntroduza o %d de %d: ", conta, LINHAS);
    scanf("%d", &aux);
    vector[conta][0]=aux;
   for(i=0; i<=conta; i++){
        if(aux==vector[i][0]){
            verifica++;
        }
   }
   if(verifica<2){
        vector[conta][1]=vector[conta][0]*vector[conta][0];
        vector[conta][2]=vector[conta][0]*vector[conta][0]*vector[conta][0];
        printf("\nvalor v: %d foi inserido e (^2)%d e (^3)%d",vector[conta][0],vector[conta][1],vector[conta][2]);
        conta++;
        verifica=0;
   }else{
   verifica=0;
   }

}while(conta<10);

for(i=0; i<LINHAS; i++){
    printf("\n%d \t%d \t%d",vector[i][0],vector[i][1],vector[i][2]);
    if(vector[i][0] >1000){
        superiroes++;
    }
    if(vector[i][1] >1000){
        superiroes++;
    }
    if(vector[i][2] >1000){
        superiroes++;
    }

}

printf("\n\ntotal de numeros maiores que 1000: %d", superiroes);

}


int main ()
{
matrix();
return 0;
}


Tags :