Trabalho Doação
Tese: Trabalho Doação. Pesquise 862.000+ trabalhos acadêmicosPor: scheiner • 27/8/2014 • Tese • 2.829 Palavras (12 Páginas) • 166 Visualizações
Fundação CECIERJ - Vice Presidência de Educação Superior a Distância
Curso de Tecnologia em Sistemas de Computação
Disciplina Fundamentos de Programação
AD1 1° semestre de 2008.
IMPORTANTE:
- As respostas (programas) deverão ser entregues em papel e em disquete para serem testados.
- A AD é um mecanismo de avaliação individual. Portanto, caso seja constatado que avaliações de alunos distintos são cópias uma da outra, independentemente de qualquer motivo, a cada uma será atribuída a nota ZERO. As soluções podem ser buscadas por grupos de alunos, mas a redação final de cada prova tem que ser individual.
1a Questão (1,5 ponto): Escreva um programa que leia do teclado um inteiro n, maior ou igual a 1, e que apresente no vídeo n linhas da forma abaixo. Por exemplo, as seguintes linhas devem ser apresentadas se n = 5.
15
14 13
12 11 10
9 8 7 6
5 4 3 2 1
Se n < 1, uma mensagem de erro deve ser apresentada no vídeo.
Observe que o primeiro elemento (15) corresponde à soma dos elementos da PA (1,2,3,4,5).
2a Questão (2,0 pontos): Faça um programa que leia dois vetores (A e B) de dez números inteiros positivos (entre 0 e 99) e apresente a interseção (AB), a união (AB) e as diferenças entre eles (A-B e B-A).
Por exemplo: sejam os vetores A=[1,3,5,7,9,2,4,8,6,0] e B=[20,1,5,18,3,50,51,52,0,47].
Logo: AB=[1,3,5,0], AB=[1,3,5,7,9,2,4,8,6,0,20,18,50,51,52,47], A-B=[7,9,2,4,8,6] e B-A=[20,18,50,51,52,47].
3a Questão (1,5 ponto): Faça uma função recursiva que calcule o n-ésimo número harmônico (H(n)).
A definição do n-ésimo número harmônico – H(n) – é dada por:
H(n) = 1 + 1/2 + 1/3 + 1/4 + ... + 1/n, para n>=1.
4a Questão (1,0 ponto): Faça um programa que leia pares de pontos (X,Y), que representam coordenadas cartesianas, até que X ou Y seja nulo. Para cada par (X,Y) lido, seu programa deve indicar em qual quadrante ele caiu, ou seja, primeiro, segundo, terceiro ou quarto quadrante. Veja a figura abaixo que representa cada quadrante em relação aos eixos cartesianos.
5ª Questão (2,0 pontos): Faça um programa que leia Strings do teclado e para cada String lida diga se ela possui uma ou mais das propriedades abaixo. Seu programa deve apenas terminar quando uma String vazia for lida.
Propriedade 1: Crescente: o primeiro caracter é menor que o segundo (caso exista), o segundo (caso
exista) é menor que o terceiro (caso exista), e assim sucessivamente. Considere que
os caracteres estão ordenados segundo o código ASCII;
Propriedade 2: Numérico: composto de apenas dígitos (0,1,2, ...,9);
Propriedade 3: Alfabético: composto de apenas letras (a,A,b,B, ..., z, Z);
6a Questão (2,0 pontos): Represente, em seu programa, polinômios P(X) de grau menor que dez. Leia os dez coeficientes do polinômio e o mantenha em memória. Em seguida, leia repetidamente valores de X e, para cada X lido, calcule o valor de P(X). Seu programa deve apenas terminar quando X lido for zero.
P(X) = coef0 + coef1*X^1 + coef2*X^2 + ... + coef9*X^9,
onde: coefi é o i-ésimo coeficiente e X^i significa X elevado ao expoente i.
program quest_01_AD1(input{teclado}, output{vídeo});
procedure ler_valor_n (var n{s}: integer);
begin
write(output, 'Informe valor de n: ');
readln(input, n);
if n < 1 then
writeln(output, 'O valor de n deve ser maior ou igual a 1.');
end;
procedure imprimir_linhas (n{e}: integer);
var
i,j,k: integer;
begin
k:=((n*n)+n)div 2;
for i:=1 to n do
begin
for j:=1 to i do
begin
write(output, k, ' ');
K:=K-1
end;
writeln(output)
end
end;
var
n: integer;
begin
ler_valor_n(n);
imprimir_linhas(n)
end.
program quest_02_AD1(input{teclado}, output{vídeo});
const
Tamanho = 10;
Maior = 99;
type
T_Dominio = 1..Tamanho;
T_Dominio2 = 1..2*Tamanho;
T_Valores = 0..Maior;
T_Vetor = array[T_Dominio] of T_Valores;
T_Vetor2 = array[T_Dominio2] of T_Valores;
procedure ler_vetor(Var
...