Paradigmas de Programação II
2006.02.27

Objectivos:

O objectivo desta ficha é treinar o aluno na utilização de estruturas de controlo em C.

Para atingir esse fim, o aluno irá desenvolver pequenos programas em C.
Exercícios:
  1. Problemas de cálculo numérico
  2. Problemas com estruturas de controlo


Problemas de cálculo numérico

(a) Escreva um programa em C que leia do teclado uma informação horária válida, composta por horas, minutos e segundos, e escreva no monitor o tempo total em segundos.

(b) Escreva um programa em C que, dada uma temperatura em graus Celsius, que é lida do teclado, a converta para graus Fahrenheit e a escreva no monitor. A fórmula de conversão é: F=1.8*C+32.

(c) Escreva um programa em C que, dado um tempo em segundos lido do teclado, escreva no monitor o tempo com o formato hh:mm:ss. Considere que, para fazer a divisão inteira, existe o operador '/' e, para fazer o resto da divisão inteira, existe o operador %.



Problemas com estruturas de controlo

(a) Desenvolva o algoritmo, e posteriormente codifique-o em C, de um programa que lê dois inteiros e escreve o maior deles.

(b) Desenvolva o algoritmo, e posteriormente codifique-o em C, de um programa que lê N inteiros e escreve o maior deles. O programa deverá terminar a leitura de números inteiros quando for introduzido o número 0.

(c) Escreva um programa em C, que lê um determinado número inteiro N e escreve no monitor os números pares até N.

(d) Escreva um programa em C, que lê 2 números inteiros, a e b, e escreve o resultado de elevar a à potência de b (utilize estruturas cíclicas para calcular o valor da potência).

(e) Escreva um programa em C, que lê um inteiro positivo e escreve o valor do seu factorial (crie duas versões: uma recursiva semelhante à que conhece da Programação Funcional e outra utilizando um ciclo while).

(f) Escreva um programa em C que leia do teclado um número real, um carácter que representa uma operação aritmética (+, -, /, *) e outro número real, e que faça a operação aritmética pretendida e coloque o resultado no monitor. Tenha em atenção que o computador não faz divisões por 0. Trate esta excepção. O resultado deverá ter a seguinte forma: operando1 operação operando2 = resultado.

(g) Considere a seguinte fórmula que relaciona graus Celsius com graus Fahrenheit fornecida no primeiro exercício. Escreva um programa em C, que calcula uma tabela de conversão entre graus Celsius e graus Fahreneit com Fahrenheit a variar entre 0 e 300 (considere intervalos de 5 graus).