Вы находитесь на странице: 1из 3

Laboratrio de Programao de Computadores II

Atividade 1 10 pontos
INSTRUES
Codifique (implementar) na linguagem C os exerccios solicitados a
seguir.
Todas as novas variveis criadas devem ter, como sufixo, o caractere _
(underscore) seguido das iniciais do seu primeiro e do seu ltimo nome
(ex.: para o aluno Jos Silva uma varivel Soma deve ser nomeada
Soma_JS).
Envie os arquivos ex01.c, ex02.c, ex03.c, ex04.c, ex05.c e ex06.c em
um nico arquivo, compactado em formato ZIP.
No pra enviar o diretrio compactado, apenas os arquivos.
Envie via SGA at as 23h59 do dia 09/04/2015.
BIBLIOGRAFIA
Captulos 3, 4, 6, 8 e 9
C: completo e total - 3. ed. rev. e atual. / c1997
SCHILDT, Herbert. C: completo e total. 3. ed. rev. e atual. So Paulo: Pearson
Education do Brasil, c1997. xx, 827p. ISBN 8534605955
Captulo 4, p. 54 Funes, Recursividade
CELES, Waldemar; CERQUEIRA, Renato; RANGEL, Jos Lucas. Introduo a
estruturas de dados: com tcnicas de programao em C. Rio de Janeiro:
Elsevier, 2004. xiv, 294 p. (Srie Campus; Sociedade brasileira de
computao). ISBN 8535212280.
Captulo 5, Recurso (Recursividade, Recorrncia)
Adam Drozdek, Estruturas de Dados e Algoritmos em C++, Editora Pioneira
Thomson Learning, So Paulo, Brasil, 2002.
Algoritmos e estruturas de dados. Recursividade. Disponvel em:
http://pt.wikibooks.org/wiki/Algoritmos_e_Estruturas_de_Dados/Recursividade.
Acesso em 21 mar. 2015.
1. Dado o cdigo fonte:
int main() {
int valor, resultado;
printf("\nValor: ");
scanf("%i%*c",&valor);
while (valor < 1) {
puts("\n\nValor deve ser > 0 . . .\n\n");
printf("\nValor: ");
scanf("%i%*c",&valor);
}

resultado = Somatorio (valor);


printf("\nValor inserido: %i - Resultado: %i",valor, resultado);
return 0;
}
Implementar a funo recursiva Somatorio que recebe como parmetro um
valor inteiro e retorna um valor inteiro referente ao somatrio dos valores
existentes no intervalo [1, valor], para todo valor maior ou igual a 1.
Exemplos das chamadas da funo Somatorio:
Somatorio(10); /* retorna 1+2+3+4+5+6+7+8+9+10 = 55; */
Somatorio(100); /* retorna 5050 */

2. Dada a funo Quadrados no recursiva.


void Quadrados(int n) {
int i;
for (i = 1; i <= n; i++)
printf("%i ", i * i);
}
Analisar a funo Quadrados e apresentar uma verso da funo recursiva
chamada QuadradosRecursiva que recebe um inteiro e faz a mesma coisa da
funo no recursiva Quadrados.

3. Dado o cdigo fonte:


int main() {
char string[64];
printf("\nSequncia de caracteres: ");
gets(string);
putchar('\n');
MostrarString(string);
putchar('\n');
MostrarReversoString(string);
putchar('\n');
return 0;
}
Implementar a funo recursiva MostrarString que recebe como parmetro o
endereo de uma sequncia de caracteres (string) e mostra a sequncia de
caracteres.
Exemplo de chamada da funo:
MostrarString("aaabzzz"); /* mostra aaabzzz */

Implementar a funo recursiva MostrarReversoString que recebe como


parmetro o endereo de uma sequncia de caracteres (string) e mostra o
reverso da sequncia de caracteres.
Exemplo de chamada da funo:
MostrarReversoString("aaabzzz"); /* mostra zzzbaaa */

4. Faa um programa que leia o nome do arquivo via entrada padro e gere
nesse arquivo a matriz 20x20 da seguinte maneira, caractere a caractere,
implementada por intermdio de uma lei de formao, isto , gerado por um
algoritmo que determine os nmeros a serem preenchidos a partir de sua
posio na matriz:
12222222222222222222
31222222222222222222
33122222222222222222
33312222222222222222
33331222222222222222
33333122222222222222
33333312222222222222
33333331222222222222
33333333122222222222
33333333312222222222
33333333331222222222
33333333333122222222
33333333333312222222
33333333333331222222
33333333333333122222
33333333333333312222
33333333333333331222
33333333333333333122
33333333333333333312
33333333333333333331
5. Faa um programa que leia vrios valores numricos positivos da entrada
padro. Se o valor lido for um valor inteiro escrever o valor inteiro no arquivo
inteiros.txt, na mesma linha, separado por um espao em branco. Se o
valor lido for um valor real, escrever o valor real no arquivo reais.txt, um
valor em cada linha do arquivo, com duas casas decimais. O programa
encerra quando for lido um valor -1. Em seguida, o programa l o arquivo
inteiros.txt e informa o maior e o menor inteiro existentes no mesmo.

Вам также может понравиться