Algoritmos e programação

Exercícios com função para vetor e matriz

Disponibilizo 3 exercícios envolvendo função com vetores e matrizes. Disponibilizei código-fonte com a solução e vídeo explicativo das soluções.
  1. Criar função que recebe um vetor para verificar se ele está em ordem crescente ou decrescente.
  2. Criar uma função que verifica se determinado valor faz parte dos elementos do vetor.
  3. Criar uma função que mostra multiplicação de uma matriz por um determinado valor informado para a função.
1- Criar função que recebe um vetor para verificar se ele está em ordem crescente ou decrescente
bool verificaOrdenacaoCrescente(int v[], int tam) {
    bool teste = true;

    for (int i=1; i < tam; i++) {
        if (v[i-1] > v[i]) {
            teste = false;
        }
    }

    return teste;
}

bool verificaOrdenacaoDescrescente(int v[], int tam) {
    for (int i=1; i < tam; i++) {
        if (v[i-1] < v[i]) {
            return false;
        }
    }

    return true;
}

bool verificaOrdenacao(int v[], int tam) {
    if (verificaOrdenacaoCrescente(v, tam) == true || verificaOrdenacaoDescrescente(v, tam) == true) {
        return true;
    } else {
        return false;
    }
}

int main()
{
    int vet[4] = {4 ,3, -1, 0};

    if (verificaOrdenacao(vet, 4) == true ) {
        cout << "Ordenado";
    } else {
        cout << "Não ordenado";
    }
}


2- Criar uma função que verifica se determinado valor faz parte dos elementos do vetor
void preencheVetor(int v[], int tam) {
    srand(time(NULL));
    for (int i = 0; i < tam; i++) {
        v[i] = rand()%10 + 100;   //100....150
    }
}

void mostraVetor(int v[], int tam) {
    for (int i = 0; i < tam; i++) {
        cout<< " | " << v[i] ;
    }
    cout << "|" << endl;
}

bool testa(int vet[], int tam, int x) {
    for (int i = 0; i < tam; i++) {
        if (vet[i] == x) {
            return true;
        }
    }

    return false;
}

int main()
{
    int vetor[100], num, tam;

    cout << "Digite o tamanho do vetor: ";
    cin >> tam;
    cout << "Digite um número: ";
    cin >> num;

    preencheVetor(vetor, tam);
    mostraVetor(vetor, tam);

    if (testa(vetor, tam, num) == true) {
        cout << "Pertence!";
    } else {
        cout << "Não pertence!";
    }
}


3- Criar uma função que mostra multiplicação de uma matriz por um determinado valor informado para a função
void mostraMatriz(float m[3][3]) {
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            cout << m[i][j];
        }
        cout<<"n";
    }
    cout<<"nn";
}

void multiplica(float mat[3][3], int fator, float mat2[3][3]) {
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            mat2[i][j] = mat[i][j] * fator;
        }
    }
}

int main()
{
    float mat[3][3] = {1, 2, 3,
                        4, 5, 6,
                        7, 8, 9.5};
    float mat2[3][3];

    multiplica(mat, 2, mat2);
    mostraMatriz(mat);
    mostraMatriz(mat2);
}
Exercício resolvido C++ (matriz e função)

Sair da versão mobile