Instruções para a prova

Questão 1 (35 pontos)

Considerando a linguagem de programação  C++ , faça:

(a)

Codifique uma função chamada Calcula_Integral que recebe dois números reais como parâmetros (A e B ). Caso A ou B sejam negativos, a função deverá retornar o valor 0 (zero), indicando que não é possível calcular o valor com os valores recebidos. Em caso contrário deverá retornar o valor 1 (um), e devolver, como terceiro parâmetro, o valor real IA obtido pela fórmula IA = B3
2 A3
2. A função não deverá ler dados do teclado nem mostrar dados no vídeo.

(b)

Codifique um programa que leia do teclado vários conjuntos de valores (A,B) e imprima o correspondente valor da Integral, obtida via chamada à função Calcula_Integral. Quando ao valores A e B lidos forem idênticos, o programa deverá encerrar o seu processamento. Os dados deverão ser impressos no vídeo conforme o exemplo abaixo.

Digite A: -4  
Digite B: 6  
Integral não válida  
 
Digite A: 4  
Digite B: 6  
Integral = 6,69694  
 
Digite A: 10  
Digite B: 10  
Programa encerrrado

Soluções:

Questão 2 (25 pontos)

Escrever em  C++ uma função de nome contaMult que receba como parâmetros de entrada um vetor de números inteiros e seu tamanho (número de elementos). A função deve identificar, dentre os elementos com índice ímpar no vetor, aqueles cujo conteúdo é múltiplo de seu índice, contá-los e alterá-los para 1 (um). A função deve devolver o total da contagem obtida ao programa que a chamar.
Por exemplo, para o vetor de 6 elementos (20,3,2,8,12,15), a função deverá devolver ao programa que a chamou o valor 2 e o vetor deverá ser modificado para (20,1,2,8,12,1).

Soluções:

Questão 3 (40 pontos)

Escreva um programa em  C++ que lê uma matriz N ×N (N definido via #define) e que substitui os elementos da diagonal principal por 1 (um). Depois, o programa deve imprimir a matriz resultante em forma tabular, de acordo com o exemplo abaixo (considerando N = 3):
Entrada

3   4  0
9   7  3
0  15  2

Exemplo de saída

1   4  0
9   1  3
0  15  1

Soluções: