Académique Documents
Professionnel Documents
Culture Documents
5 Escreva uma funo int min_vet(float v[], int n) receba um vetor e retorne o ndice
do menor elemento deste vetor.
7.6 Escreva uma funo int remove_dup(float v[], int n) receba um vetor e verifique a
existncia de elementos duplicados. Caso no existam elementos duplicados retorne 0. Caso
existam, remova estes elementos (deixando apenas um) e retorne o nmero de elementos removidos.
7.7 Escreva uma funo void insert(float v[], int n, float valor, int pos)
que faa a insero de valor na posio pos do vetor v, deslocando os demais elementos.
7.8 Transforme o programa do exemplo e0705.cpp em uma funo void ordem(int v, int
n) que ordene os elementos de um vetor v de n elementos inteiros.
7.9 Escreva uma funo int merge(float r[], float s[], float v[], int n, int
m) receba um vetor r de n elementos e outro vetor s de m elementos e construa um vetor v com os
elementos de r e s, ordenado e no duplicado. A funo deve retornar o tamanho do vetor v
construdo. Sugesto: Utilize as funes dos exerccios 7.6, 7.7 e 7.8.
7.10 A funo do exerccio 7.9 pode ser entendida como uma funo que retorna a unio entre dois
conjuntos. Escreva uma funo int intersec(float r[], float s[], float v[],
int n, int m) que construa um vetor v com a interseo entre r e s, ordenados. A funo
deve retornar o tamanho do vetor v construdo.
7.11 Escreva uma funo void desordem(int v, int n) que desordene os elementos de um
vetor v (no necessariamente ordenado) de n elementos inteiros. Sugesto: use o seguinte algoritmo:
para i de n-1 at 0 faa
j valor aleatrio entre 0 e i
v[i] v[j]
fim faa
Observao: Esta rotina pode ser usada para simular o processo de embaralhar as cartas de um
baralho.
7.12 Escreva uma funo int find(char v[], char t[], int m, int n) que receba um
vetor v de m elementos e um vetor t de n elementos (n < m). Esta funo deve verificar a
ocorrncia do padro t em v ou no. Se houver, deve retornar a posio inicial da primeira
ocorrncia. Por exemplo: se v={As bananas do Panam so bacanas} e p={anas}
deve retornar 6. Caso no haja ocorrncia, retorne -1. Observao: Algoritmos como esses so
usados em editores de texto4.
n
r r
7.13 O produto escalar entre dois vetores pode ser definido como: e = u v = ui v i , onde ui e vi so
5
i=0