Você está na página 1de 13

Programao de Computadores

Avaliao Formativa 5

Aluno: Lucas Campos Carmona

Turma: B1

Desafio 1: Descrio do problema:


Escreva um programa que liste uma tabela de converso de temperatura em Farenheit para centgrados, variando de 5 em 5 graus Farenheit. Projetar uma funo para calcular a frmula de converso.

Texto em C original e seu resultado:


// declarao da funo que faz a converso de Farenheit para Celsius float FarenheitToCelsius ( float Farenheit) { // declarao de varivel local float Celsius; // calculo da converso Celsius = 5.0/9.0*(Farenheit-32); // retorna o resultado da funo return Celsius; } int main() {

/* programa para gerar uma tabela de converso de graus Farenheit para graus Celsius, variando de 0 a 100 graus Farenheit, de 5 em 5 graus. */ // Declarao de variveis float Farenheit, Celsius; // Atribuio de valores iniciais necessrio Farenheit = 0; // Imprime titulos da tabela printf( "Tabela de Conversao de graus Farenheit para graus Celsius"); printf( "\n Farenheit Celsius"); // Repetir enquanto Farenheit for menor ou igual a 100 while (Farenheit <= 100) { // chama a funo de converso Celsius = FarenheitToCelsius(Farenheit); // imprime os valores de uma linha da tabela printf("\n %6.2f %6.2f", Farenheit, Celsius); Farenheit = Farenheit + 5; } return 0; }

Resultado
Tabela de Conversao de graus Farenheit para graus Celsius Farenheit Celsius 0.00 -17.78 5.00 -15.00

10.00 -12.22 15.00 -9.44 20.00 -6.67 25.00 -3.89 30.00 -1.11 35.00 1.67 40.00 4.44 45.00 7.22 50.00 10.00 55.00 12.78 60.00 15.56 65.00 18.33 70.00 21.11 75.00 23.89 80.00 26.67 85.00 29.44 90.00 32.22 95.00 35.00 100.00 37.78 Process returned 0 (0x0) execution time : 0.404 s Press any key to continue.

Algoritmo modificado:
Funo float CelsiusToFarenheit ( Celsius) Declare Farenheit numrico Farenheit 9.0/5.0(Celsius+32) Retorne Farenheit Fim da funo

Algoritmo Declare Celsius, Farenheit numrico Celsius 100 Escreva Tabela de Converso de graus Celsius para graus Farenheit Escreva Celsius Repita Se Celsius >= 10 Farenheit CelsiusToFarenheit(Celsius) Celsius Celsius - 5 Seno interrompa Escreva Celsius Fim repita Fim algoritmo Farenheit Farenheit

Texto em C modificado e seu resultado:


#include <stdio.h> #include <stdlib.h> // declarao da funo que faz a converso de Celsius para Farenheit float CelsiusToFarenheit ( float Celsius) { // declarao de varivel local float Farenheit; // calculo da converso Farenheit = 9.0/5.0*(Celsius+32); // retorna o resultado da funo return Farenheit; }

int main() { /* programa para gerar uma tabela de converso de graus Celsius para graus Farenheit, variando de 100 a 10 graus Celsius, de 5 em 5 graus. */ // Declarao de variveis float Farenheit, Celsius; // Atribuio de valores iniciais necessrio Celsius = 100; // Imprime titulos da tabela printf( "Tabela de Conversao de graus Celsius para graus Farenheit"); printf( "\n Celsius Farenheit"); // Repetir enquanto Farenheit for menor ou igual a 100 while (Celsius >= 10) { // chama a funo de converso Farenheit = CelsiusToFarenheit(Celsius); // imprime os valores de uma linha da tabela printf("\n %6.2f %6.2f", Celsius, Farenheit); Celsius = Celsius - 5; } return 0; }

Resultado
Tabela de Conversao de graus Celsius para graus Farenheit Celsius Farenheit

100.00 237.60 95.00 228.60 90.00 219.60 85.00 210.60 80.00 201.60 75.00 192.60 70.00 183.60 65.00 174.60 60.00 165.60 55.00 156.60 50.00 147.60 45.00 138.60 40.00 129.60 35.00 120.60 30.00 111.60 25.00 102.60 20.00 93.60 15.00 84.60 10.00 75.60 Process returned 0 (0x0) execution time : 0.588 s Press any key to continue.

Desafio 2 a) Algoritmo 1:
Funo float fatorial (float numero) Declare fat numrico Repita Se numero > 1

Ento fat fat*(numero-1) numero numero 1 seno interrompa fim repita se fat = 1 ou fat = 0 ento fat 1 retorne fat Fim funo Algoritmo Declare numero numrico Escreva Programa para o Calculo do Fatorial Escreva Digite um numero para calculo do fatorial Leia numero Escreva Numero! = fatorial(numero) Fim algoritmo

Texto do Programa em C(a):


float fatorial(float numero) { double fat; fat = numero; while ( numero >1) { fat = fat*(numero-1); numero = numero - 1; } if( fat == 0 || fat == 1) { fat = 1; }

return fat; } int main() { int numero; printf("\n Programa para Calculo do Fatorial \n\n"); printf("\n\Digite um numero para calcular o seu fatorial: "); scanf("%d",&numero); printf("\n\ %d! = %d\n\n",numero,fatorial(numero)); }

b) Algoritmo 2:
Funo float fatorial (float numero) Declare fat numrico Repita Se numero > 1 Ento fat fat*(numero-1) numero numero 1 seno interrompa fim repita se fat = 1 ou fat = 0 ento fat 1 retorne fat Fim funo

Algoritmo Declare numero, e, x numrico Escreva Programa para exponencial de(e^x) X.

Escreva Digite um numero para X: Leia X Repita Se x^numero/numero! > 0.00001 Ento e e + x^numero/numero! numero numero + 1 seno interrompa fim repita escreva O Valor de e^x : e fim algoritmo

Texto do Programa em C (b):


float fatorial(float numero) { double fat; fat = numero; while ( numero >1) { fat = fat*(numero-1); numero = numero - 1; } if( fat == 0 || fat == 1) { fat = 1; } return fat; } int main()

{ float e, x; int numero; printf("\n Programa para exponencial(e^x) de X. \n\n"); printf("\n\Digite um numero para X: "); scanf("%f",&x); numero = 0; while(pow(x,numero)/fatorial(numero)>0.00001) { e = e + pow(x,numero)/fatorial(numero); numero = numero +1; } printf("\n O Valor da exponencial de X sera: %f", e); }

c) Algoritmo 3:
Funo float fatorial (float numero) Declare fat numrico Repita Se numero > 1 Ento fat fat*(numero-1) numero numero 1 seno interrompa fim repita se fat = 1 ou fat = 0 ento fat 1 retorne fat Fim funo Algoritmo Declare e, x, numero, fat numrico Escreva Programa para exponencial x1 repita se x <=10

ento numero 0 e 0; fat fatorial(numero) repita se x^numero/fat >=0.00001 e e + x^numero/fat numero = numero + 1; fat = fatorial(numero seno interrompa fim repita escreva e xx+1 fim repita fim algoritmo

Texto do Programa em C (c):


float fatorial(float numero) { double fat; fat = numero; while ( numero >1) { fat = fat*(numero-1); numero = numero - 1; } if( fat == 0 || fat == 1) { fat = 1; } return fat; } int main()

{ double e, x, numero, fat; printf("\n Programa para exponencial(e^x) de X. \n\n"); x = 1; while(x<=10) { numero = 0; e = 0; fat = fatorial(numero); while(pow(x,numero)/fat>=0.00001) { e = e + pow(x,numero)/fat; numero = numero + 1; fat = fatorial(numero); } printf("\n e^ %.1lf = %.4lf",x, e); x = x +1; } return 0; }

Resultados

Programa para exponencial(e^x) de X.

e^ 1.0 = 2.7183

e^ 2.0 = 7.3890 e^ 3.0 = 20.0855 e^ 4.0 = 54.5981 e^ 5.0 = 148.4131 e^ 6.0 = 403.4288 e^ 7.0 = 1096.6332 e^ 8.0 = 2980.9580 e^ 9.0 = 8103.0839 e^ 10.0 = 22026.4658 Process returned 0 (0x0) execution time : 0.416 s Press any key to continue.