Buscar

AtvPratSup ProgEstr01 2017.2 GABARITO 01

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 3 páginas

Prévia do material em texto

Programação Estruturada – 2017.2
 Atividade Prática Supervisionada (APS)_01
GABARITO – Questões: 1, 2, 3 e 4
Instrução: responda as questões da forma mais organizada possível
1) Observe a função abaixo:
1. double cube(int y){
2. return y*y*y;
3. }
Em relação a essa função responda:
a) qual é o seu tipo?
b) qual é o seu nome?
c) quantos parâmetros possui?
d) se tiver apenas um parâmetro, qual é o seu tipo? Ou se tiver mais que um parâmetro quais são os
seus respectivos tipos? Obs.: Se não tiver parâmetros não precisa responder este item.
e) Qual é a tarefa que essa função executa?
a) double
b) cube
c) um
d) int
e) Calcula o cubo de um valor inteiro.
2) Considere o problema:
Escrever um programa com a função TarifaTaxi( ) que simule um taxímetro, ou seja, calcule o
valor da corrida de um passageiro. Para isso, o programa deve solicitar, ainda na função main( ),
que o usuário digite, via teclado, a distância percorrida pelo passageiro no táxi, em quilômetros. A
função TarifaTaxi( ) deve receber esse valor, digitado pelo usuário, e retornar o quanto o passageiro
dever pagar. Esse valor a ser pago, deve ser impresso na tela por uma instrução escrita na função
main( ). Considere que a bandeirada seja de R$5,40 e que a acada quilômetro percorrido seja
acrescido o valor de R$ 2,50 ao valor total a ser pago.
Possível solução:
#include<stdio.h> 
#include<locale.h> 
float TarifaTaxi(float);
int main(void){
setlocale(LC_ALL, "Portuguese");
float distancia, preco;
printf("Este programa calcula o valor pago por uma corrida de taxi\n");
printf("\nDigite a distância percorrida em Km: ");
scanf("%f",&distancia);
preco=TarifaTaxi(distancia);
printf("O preço a pagar é: R$%.2f\n",preco);
return 0;
}
float TarifaTaxi(float dist){
return 2.5*dist + 5.4;
}
Prof. Lincoln Faria - lfaria@unicarioca.edu.br
3) Escreva uma função recursiva chamada potencia( ) que aceite dois argumentos positivos i e j. A
função deve retornar o resultado de i elevado a j. Por exemplo: potencia(2,3) retorna 8.
Dica: use a propriedade de que i elevado a j é igual a i elevado a (j-1) vezes i.
Possível solução:
#include <stdio.h>
#include <locale.h>
int potencia(int, int);
int main(void){
setlocale(LC_ALL, "Portuguese");
int i, j, resultado;
printf("Esse programa calcula o resultado de i elevado a j, ambos 
inteiros\n");
printf("Entre com o valor i: ");
scanf("%d",&i);
printf("Entre com o valor j: ");
scanf("%d",&j);
resultado=potencia(i,j);
printf("\nO resultado de %d elevado a %d é: %d",i,j,resultado);
return 0;
}
int potencia(int i, int j){
if (j==1){
return i;
}
else
return i*potencia(i,j-1); /*chamada recursiva*/
}
Prof. Lincoln Faria - lfaria@unicarioca.edu.br
4) Observe o programa abaixo:
#include <stdio.h>
#include <locale.h>
#define TAMANHO 5
void pesquisa(int vetor[], int chave, int tamanho);
int main(void){
setlocale(LC_ALL, "Portuguese");
int a[TAMANHO]={1,2,3,4,5};
int chave;
printf("Esse programa realiza pesquisas em vetores\n");
printf("Entre com o valor a ser pesquisado: ");
scanf("%d",&chave);
pesquisa(a, chave, TAMANHO);
}
void pesquisa(int vetor[], int chave, int tamanho){
int n;
for(n=0;n<TAMANHO;n++){
if(vetor[n]==chave){
printf("Valor encontrado na posição %d",n);
return;
}
}
printf("Valor não encontrado");
return;
}
Essa programa possui uma função. Em relação a essa função responda:
a) qual é o seu tipo?
void
b) qual é o seu nome?
pesquisa
c) quantos parâmetros possui?
3 (três).
d) se tiver apenas um parâmetro, qual é o seu tipo? Ou se tiver mais que um parâmetro quais são os
seus respectivos tipos? Obs.: Se não tiver parâmetros não precisa responder este item.
int
e) Qual é a tarefa que essa função executa?
Pesquisa no vetor por um valor informado pelo usuário e informa sua posição se encontrá-lo,
caso contrário informa que o valor não foi encontrado no vetor.
Prof. Lincoln Faria - lfaria@unicarioca.edu.br

Outros materiais