|
UNIVERSIDADE
FEDERAL DE CAMPINA GRANDE CENTRO
DE ENGENHARIA ELÉTRICA E INFORMÁTICA DEPARTAMENTO
DE SISTEMAS E COMPUTAÇÃO INTRODUÇÃO
À CIÊNCIA DA COMPUTAÇÃO |
|
3º LISTA DE EXERCÍCIOS
Enviar para o e-mail de
exercícios da sua turma até o dia da 3ª Prova.
Formato do e-mail a ser enviado:
Assunto: Lista-03:
nome do aluno (ou da dupla de alunos).
Texto: Nome completo e matrícula do aluno (ou da dupla de alunos).
Anexo: arquivo zipado contendo os programas desta lista. O nome do arquivo zipado deverá ser o nome do aluno ou da dupla de alunos. E, o nome de cada programa deve corresponder ao número da questão.
QUESTÕES:
01.
Faça um programa que leia e imprima um
conjunto de N inteiros. Em seguida, calcule a média dos elementos desse
conjunto e imprima apenas os elementos acima da média. Use uma função para
calcular a média dos elementos do conjunto.
02.
Faça um programa para ler vários
números inteiros no intervalo [100..900] e para cada
número lido imprima a centena, a dezena
e a unidade do número lido. O programa encerra quando é lido um número fora do
intervalo indicado. Use a sub_rotina extrai_componentes que recebe como parâmetro de entrada o
número que foi lido e retorna como parâmetros de saída a centena, a dezena e a
unidade desse numero.
03.
Faça um programa que leia e imprima um
vetor com N elementos inteiros e, em seguida, se X pertencer ao conjunto imprima
as posições (os índices) onde os valores iguais a X estão armazenados no vetor.
Os valors de X e N serão informados pelo usuário e N
sempre será menor ou igual a 100. Além das sub_rotinas
le_conjunto() e imprime_conjunto() use:
1. a função X_pertence_ao_conjunto() que recebe um conjunto de inteiros, o
tamanho do conjunto e um inteiro X a ser procurado no conjunto. A função deverá
retornar verdadeiro se X pertence ao conjunto e falso, caso contrário
2. a sub_rotina imprime_posicoes_de_X_no_conjunto() que recebe um conjunto de inteiros, o
tamanho do conjunto e um inteiro X. A sub-rotina deverá imprimir as posições
(os índices) onde os valores iguais a X estão armazenados no vetor.
04.
Faça um programa que
leia dois conjuntos, cada um com no máximo 10 elementos inteiros e imprima os
dois conjuntos lidos e mais dois conjuntos: o conjunto união e o conjunto
interseção.
05.
Faça um programa que
leia uma matriz MxN de
números inteiros, gerar a matriz transposta e em seguida imprimir as duas
matrizes. M e N serão informados pelo usuário e sempre serão menores ou iguais
a 10.
06.
Faça um programa para gerar
uma matriz quadrada de ordem igual à N (máximo 10), com os elementos da
diagonal principal iguais a zero, os elementos acima da diagonal principal
iguais a 1 e os elementos abaixo da diagonal principal
iguais a -1. O programa deve mostrar a matriz gerada.
07.
Faça um programa para
ler duas matrizes MxN de
números inteiros e imprimir uma mensagem dizendo se estas matrizes são ou não
idênticas. M e N serão informados pelo usuário e sempre serão menores ou iguais
a 10. Além das sub-rotinas, le_matriz() e imprime_matriz, use uma
função sao_identicas() que recebe as matrizes, suas
dimensões e retorna verdadeiro, se as matrizes forem idênticas e falso, caso
contrário.
08.
Faça um programa em
FORTRAN para ler uma matriz M x N de números inteiros e determinar o maior elemento
em cada coluna da matriz. Use uma função
que receba a matriz, o número de linhas dessa matriz e o número de uma das
colunas dessa matriz. A função deverá retornar a soma dos elementos da coluna
indicada.
09.
Faça um programa em
FORTRAN para verificar se N números inteiros positivos são ou não primos. O
programa deverá utilizar as seguintes funções:
·
eh_primo()
que recebe um inteiro positivo e retorna verdadeiro ou falso, se o número
recebido é ou não primo. A função eh_primo() usa a função conta_divisores();
·
conta_divisores()
que recebe um inteiro e retorna a quantidade de divisores que este inteiro
possui. A função conta_divisores() usa a função eh_divisor();
·
eh_divisor()
que recebe dois inteiros e retorna
verdadeiro se o primeiro argumento é divisor do segundo e, caso contrário,
retorna falso.
10.
Faça um programa em
FORTRAN para efetuar a multiplicação de uma matriz inteira MxN (máximo 10x 10) por um escalar também inteiro. O
programa usara três sub-rotinas: uma para ler matriz ,
uma para efetuar a multiplicação da matriz operando pelo escalar e outra para
imprimir, de cada vez, as matrizes (operando e resultante).