Programação Estruturada – 2017.2 Atividade Prática Supervisionada (APS)01 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) ual é a tarefa que essa função e!ecuta? ) !onsidere o problema: Escrever Escrever um pro"rama pro"rama com a função função "arifa"axi# ) que simule um ta!#metro, ou se$a, calcule o valor da corrida de um passa"eiro. %ara isso, o pro"rama deve solicitar, ainda na função main# )$ que o usu&rio di"ite, via teclado, teclado, a distância percorrida percorrida pelo passa"eiro no no t&!i, em quil'metros. ( função "arifa"axi# ) deve receber esse valor, di"itado pelo usu&rio, e retornar o quanto o passa"eiro dever pa"ar. Esse valor a ser pa"o, deve ser impresso na tela por uma instrução escrita na função main# ). onsidere que a bandeirada se$a de *+,- e que a acada quil'metro percorrido se$a acrescido o valor de *+ /, ao valor total a ser pa"o. %) Escreva uma função recursiva c0amada poten&ia# ) que aceite dois ar"umentos positivos i e j. ( função deve retornar o resultado de i elevado a j. %or e!emplo: poten&ia#$%) retorna 1. 'i&a: use a propriedade de que i elevado a ( igual a i elevado a #(*1) vezes i. +) Observe o programa abaixo: #include #include #define TAMANHO 5 void pesquisa(int eto!"#$ int chae$ int ta%a&ho); int main(void){ +o!t,-,ese); ); setlocale('A''$ +o!t,-,ese a"TAMANHO#{1$2$3$/$5}; int a"TAMANHO#{1$2$3$/$5}; int chae;
eto!es4& ); printf (0sse !o-!a%a !ealia es,isas e% eto!es4&); ); printf (0&t!e co% o alo! a se! es,isado ); 6d$7chae); $7chae); scanf(6d es,isa(a$ chae$ TAMANHO); } void pesquisa(int eto!"#$ int chae$ int ta%a&ho){ int &; for(&8;&
Pro!. "inco#n $aria % $aria % #!aria&unicarioca.edu. #!aria&unicarioca.edu.'r 'r
printf (:alo! &o e&co&t!ado); return ;
}
Essa pro"rama possui uma função. 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) ual é a tarefa que essa função e!ecuta?
5) Observe o programa abaixo:
1. #include 2. #include 3. /. void reajuste20(float *!eco$ float *!ea=,ste); 5. . int main(void){ ?. setlocale('A''$ +o!t,-,ese); @. float al!eco$ al!ea=,ste; . 18. printf(B&si!a o !eo at,al ); 11. scanf(6C$ 7al!eco); 12. !ea=,ste28(7al!eco$ 7al!ea=,ste); 13. printf(4&O !eo &oo D 68.2C$ al!eco); 1/. printf(4&O a,%e&to Coi de 6.2C$ al!ea=,ste); 15. 1. return 8; 1?. } 1@. 1. void reajuste20(float *!eco$ float *!ea=,ste){ 28. *!ea=,ste *!eco*8.2; 21. *!eco *1.2; 22. }
Em relação a função reajuste20() 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) 2escreva o que a função fa3 nas lin0as / e /4. f) O que é passado como ar"umento para a função na lin0a 4/? ,) 'esenvolva um programa em ! seguindo os seguintes passos: a) 2efina uma estrutura com o nome -luno. Essa estrutura deve ser capa3 de arma3enar o nome, a matr#cula, o * 5coeficiente de rendimento) e o semestre atual do aluno. !onsidere para &ada membro da estrutura o tipo adequado. b) 2eclare uma vari&vel de nome aluno/n&ario&a do tipo -luno. c) (tribua aos membros da vari&vel aluno/n&ario&a os dados: nome: %edro, matr#cula: /464, *: 1,, semestre: /. d) E!iba na tela os dados inseridos na vari&vel aluno/n&ario&a.
Pro!. "inco#n $aria % #!aria&unicarioca.edu.'r
0) 2esenvolva um pro"rama em que calcule a média aritmética das notas das avaliaç7es de um aluno se"uindo os se"uintes passos: b) Solicite ao usu&rio que informe, via teclado, quantas avaliaç7es o aluno reali3ou 5e!.: se o aluno reali3ou uma prova, um teste e um trabal0o então o usu&rio deve di"itar 8). c) (loque um vetor dinamicamente, de nome notas, do taman0o informado pelo usu&rio, ou se$a, seu taman0o é i"ual ao n9mero de avaliaç7es que o aluno reali3ou. este vetor serão arma3enadas as notas das avaliaç7es. d) Solicite ao usu&rio que entre com as notas, via teclado, arma3enando;as no vetor criado dinamicamente. %ara isso, use uma estrutura de repetição com o comando for. e) alcule a média aritmética das notas do aluno. f) E!iba na tela a média do aluno. ") dados.dat. b) @m teste para verificar se a abertura do arquivo > dados.dat foi bem sucedida. c) @ma solicitação ao usu&rio, ou se$a, pedir ao usu&rio que entre, via teclado, com o seu endereço completo. d) Aravação do endereço do usu&rio no arquivo > dados.dat. e) Bec0amento do arquivo. 2) *eescreva o pro"rama abai!o substituindo a função maior# ) por uma macro de nome 3-IO4 e que reali3e a mesma tarefa da função, ou se$a, reescreva o pro"rama usando uma macro ao invés de uma função. 5rograma usando a função maior# ): #include
} int maior(int a$ int E){ if(a>E) return a; else return E; $0) 0sc!ea ,% !o-!a%a ,e deCi&a e ,se a %ac!o %O&' a!a dete!%i&a! o ol,%e de ,% cili&d!o. O ol,%e de ,% cili&d!o ode se! oEtida ela eF!esso :ol,%e +B*! 2*h$ o&de ! D o !aio da Ease e h D a alt,!a do cili&d!o. co&side!a&do +B3$1/152$ deCi&a a co&sta&te si%EGlica +B a!a te! o alo! 3$1/15.
Pro!. "inco#n $aria % #!aria&unicarioca.edu.'r