A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Respostas dos Exercícios. Lista 1 1.a) Escreva uma função que receba como parâmetro uma temperatura dada em graus Fahrenheit e retorna a temperatura.

Apresentações semelhantes


Apresentação em tema: "Respostas dos Exercícios. Lista 1 1.a) Escreva uma função que receba como parâmetro uma temperatura dada em graus Fahrenheit e retorna a temperatura."— Transcrição da apresentação:

1 Respostas dos Exercícios

2 Lista 1

3 1.a) Escreva uma função que receba como parâmetro uma temperatura dada em graus Fahrenheit e retorna a temperatura em graus Celsius. (T (F) = T (C) x 9/5 + 32)

4 double converte_para_celsius(double fahreinheit) { double celsius; celsius = 5 * (fahreinheit - 32) / 9; return celsius; }

5 1.b) Escreva uma função que receba como parâmetro um inteiro com três algarismos e retorna o seu valor invertido (exemplo: o invertido de 498 é 894).

6 int inverte(int numero) { int invertido, unidade, dezena, centena; unidade = numero % 10; dezena = (numero % 100) / 10; centena = numero / 100; invertido = 100 * unidade + 10 * dezena + centena; return invertido; }

7 1.c) Escreva uma função que receba como parâmetros os inteiros x e y e retorna o maior múltiplo de x que seja menor do que ou igual a y (exemplo: o maior múltiplo de 7 menor que 50 é 49).

8 int maior_multiplo(int x, int y) { int maior_multiplo; maior_multiplo = y – (y % x); return maior_multiplo; }

9 2) Uma loja vende seus produtos no sistema entrada mais duas prestações, sendo a entrada maior do que ou igual às duas prestações; estas devem ser iguais, inteiras e as maiores possíveis. Por exemplo, se o valor da mercadoria for R$ 270,00, a entrada e as duas prestações são iguais a R$ 90,00; se o valor da mercadoria for R$ 302,75, a entrada é de R$ 102,75 e as duas prestações são iguais a R$ 100,00. Escreva um programa que receba o valor da mercadoria e imprima na tela o valor da entrada e das duas prestações, de acordo com as regras acima.

10 #include void main() { float compra, entrada; int parcelas; parcelas = compra / 3; entrada = compra – (2 * parcelas); printf(“Entrada = %f\n”, entrada); printf(“Parcelas = %d\n”, parcelas); }

11 3) Escreva um programa que converta um intervalo de tempo dado em segundos para horas, minutos e segundos. Por exemplo, se o tempo dado for 3 850 segundos o programa deve imprimir na tela 1 h 4 min 10 s.

12 #include void main() { int tempo, horas, minutos, segundos; horas = tempo / 3600; minutos = (tempo % 3600) / 60; segundos = tempo % 60; printf(“%d horas, %d minutos e %d segundos\n”, horas, minutos, segundos); }

13 4) Um programa para gerenciar os saques de um caixa eletrônico deve possuir algum mecanismo para decidir o número de notas de cada valor que deve ser disponibilizado para o cliente que realizou o saque. Um possível critério seria o da "distribuição ótima" no sentido de que as notas de menor valor disponíveis fossem distribuídas em número mínimo possível. Por exemplo, se a máquina só dispõe de notas de R$ 50, de R$ 10, de R$ 5 e de R$ 2, para uma quantia solicitada de R$ 87, o programa deveria indicar uma nota de R$ 50, três notas de R$ 10, uma nota de R$ 5 e uma nota de R$ 2. Escreva um programa que receba o valor da quantia solicitada e imprima na tela a distribuição das notas de acordo com o critério da distribuição ótima.

14 #include void main() { int s, saque, notas100, notas50, notas20, notas10, notas5, notas2, notas1; notas100 = saque / 100; s = saque % 100; notas50 = s / 50; s = s % 50; notas20 = s / 20; s = s % 20; notas10 = s / 10; s = s % 10; notas5 = s / 5; s = s % 5; notas2 = s / 2; notas1 = s % 2; printf(...); }

15 Lista 2

16 1) Implementar uma função de nome troca1 que tem como parâmetros dois inteiros, valor1 e valor2, e não retorna nada. Essa função deve trocar os valores de valor1 e valor2 e imprimir os seus valores trocados. Exemplo: se a função receber como parâmetros valor1=32 e valor2=99, então a função deve imprimir a mensagem fim da função: valor1=99 e valor2=32 ao final da sua execução (ainda dentro da função).

17 void troca1(int valor1, int valor2) { int aux; aux = valor1; valor1 = valor2; valor2 = aux; printf(“fim da função: valor1=%d e valor2=%d\n”, valor1, valor2); }

18 2) Implementar uma função de nome troca2 que tem como parâmetros duas variáveis capazes de armazenar endereços de memória de inteiros (que tipo de variável é capaz de fazer isso?), end_valor1 e end_valor2. Essa função deve trocar o conteúdo dos endereços armazenados nessas variáveis, ou seja, o conteúdo armazenado pelo primeiro parâmetro deve ser armazenado no endereço do segundo parâmetro e vice-versa. Assim como na função anterior, essa função deve imprimir o conteúdo dos endereços de end_valor1 e end_valor2 ao final da sua execução.

19 void troca2(int* end_valor1, int* end_valor2) { int aux; aux = *end_valor1; *end_valor1 = *end_valor2; *end_valor2 = aux; printf(“fim da função: end_valor1=%d e end_valor2=%d\n”, *end_valor1, *end_valor2); }

20 3) Implemente um programa para usar e testar as duas funções criadas anteriormente. Para isso, neste programa, crie duas variáveis inteiras: x=1 e y=100. Depois disso, faça as seguintes operações: 1.Chame a função troca1 passando as variáveis x e y como parâmetros e nesta ordem. 2.Imprima na tela os valores de x e de y. 3.Chame a função troca2 passando as variáveis x e y como parâmetros e nesta ordem. Note que a função troca2 não recebe inteiros como parâmetros, mas endereços de memória de inteiros. Então, o que devo fazer? 4.Imprima na tela os valores de x e y.

21 #include void main() { int x, y; x = 1; y = 100; troca1(x, y); printf(“x = %d e y = %d\n”, x, y); troca2(&x, &y); printf(“x = %d e y = %d\n”, x, y); }


Carregar ppt "Respostas dos Exercícios. Lista 1 1.a) Escreva uma função que receba como parâmetro uma temperatura dada em graus Fahrenheit e retorna a temperatura."

Apresentações semelhantes


Anúncios Google