You are on page 1of 3

Avaliação

da Coordenação
1osemestre- ProvaAC
U U TS O SISTEMAS DE INFORMACAO
sienê 2
Turma ÂsG2A.3
Cadernode QuestÕes
- D i sci pl i na AlEoritmose Estrutura de Dãdos

NomeCompleto:
ü
tX
RA: OIOSJOAa? Assinatura:

onreHtnçôes
1.Este caderno de prova contém 05 questões dissertativase 10 (dez) 8. Em caso de desenho,usar materiale lápisapropriados;
questões objetivas; 9. O caderno de prova poderá se utilizadocomo rascunho;
2. Antes de iniciar,veriÍìquese o cademo de prova está completo; 10. Os telefonescelularesdeverãopermanecerdesligados;
3. Esta provaé indivíduâle sem consulta; 11. O tempo de duração da prova será de 03 (três) horas;
4. Qualquer tentativade fraude será punida com a noia zero na prova; 12. O aluno só poderádeixara sala após I (uma) horado inlciooficial
5. Assine as íolhas de respostaa caneta: da prova;
6. As questôesdissertativase objetivasdeverão ser respondidasna Folha de Resposta; 13. Ao final da prova, o aluno deverá €ntregar a Folha de Resposias e o Cademo
7. As questõesdeverão ser respondidasutilizando-secaneta azul ou pretia; de Questões;
14. Leia atentamenteas ouestôes antes de resoondêlas

Não esqueça de assinalar o modelo de sua prova (A ou B) no caderno de respostas BOA PROVA!

QuestõesDissertativas( 1.50 ponto cada ):

C que recebaum vetorde N númerosde pontoflutuante,encontreo índicedo menorelementoe retorneo


1. Crieumafunçãoem linguagem
. endereço
desteelemento,

'O processo permitequesejamcriadosespaços


2. de alocação
dinâmica de variáveis na memóriaprincipal
do computador
em tempode execução.
O objetivodo códigono AnexoB é criarum vetorde 10 posições em umaregiãocontígua na memóriado €omputadorutilizandoessatécnica,
Porém,o programador a funçãomalloce reservouapenasuma posiçãoparaarmazenar
não utilizoucorretamente um valordo tipo inteiro.
Ajusteo códigoabaixo,de modoqueo vetorde 10 posições sejacriadode modocorreto.Lembre-setambémde adicionar os comandos para
liberaros recursos pelavariável
alocados dlnâmica
"vetor"antesde encerrar do programa,
a execução
Anexo1

#inclu'de <:stdj-o . 1:.>-


AÊ{EKO B rffi.r"#*
Yt"\ou- | )
#ínçlude <:rl:.r:i
l. i-t>. l:;- ,-,,*ü*n,
#definer ïAM 10

ínt , m ain( int a rg c . c l ra r * a rg v [] ) { tu'


inà i;
iRf *v et or : (i n t * ) ma l l o c i l Ëi " e og (íntl l i ./
f or ( i : 0 ; i < ta u ; í+ + l /
s c anf ( ' " a d ." &v e t.o rIi ] );*
f or ( i : 0 ; i < T A M ,' i + + ; -,r
tl vetortí.Jì /
- 4':L'"n"f
-$#ilïm,hÏ$$-i+rr1
return 0;

3. Baseado na estrutura
da filaa seguir,implementeumafunçãoqueinsiraum"elemento
na fla. A implementação quehá espaço
deveraassegurar
paraa inserção do novoelemento, hajavistase tratarde umvetorcomcapacidade
limitada.
#defineN 100
structfìla{
int n;
. int ini;
floatvet[N];

1529 / 9064
o atríbuto
ini marcaa posição
dopróximo
elemento
a serretirado
dafilae n marcaa quantidade
deelementos
nafila.considere
o
tunçãoa seguir;
void fila_insere(Fila* f, float v);

OW,
4' Escreva, em linguagem c, a versãorecursiva
paraa funçãoabaixo,saibaqueoparâmetroa seráumvalorinteiroqualquereoparâmetro
bserá
somenteumvalorinteiromaiorou iguala zero:
int tuncao(int a, int b){
int c, d;
for(c= 1, d = 1; c <= b; c++)
dx = â i
',*r-^'#)
returnd;
,l

5' Implementeumafunçãoque,dadaumamatriz,crie dinamicàmente a matriztranspostacorrespondente.


Umamatrize é a matriztranspostade
M, se Q[i]ül = Mlilül paraqualquerelementoda matriz.Podemosconsiderarque o protótipoda funçãoparacriar
a matriztranspostaé dado
por;
float** transposta(int m, int n, float** mat);
ondem e n representam, respectivamente, o númerode linhase colunasda matrizmat,cujatransposta
gueremoscriar.A funçãotem como
valorde retornoo ponteirodo vetorde ponteirosgue representa a matriztranspostacriada.

Questõesde Múltipla Escolha( 0.2S ponto cada ):


6. Numprograma em linguagem C veem-se asseguintes linhas:
doublemat[4][4],xp;
p = &mat[0][0];
Paraqueo programãimprimaa diagonalsecundária da matriz,deveo(ecutar
@ for (i = 0; i < 4; ++i) printf("o/of \n',,pt3 * il);
(b) for (i = 0; i < 4; ++i) prinrf("%f\n,,,pt4 * il);
(c) for (i = 1; i < 5; ++i) printfl"o7o6
1n",p[3 * i]);
(d) tur (i = 0; i < 4; ++i) printf("o/of
\n", p[4 ,. i + 3]);

7, Assinalea alternativacorreta:
G') A alocaçãoestáticaé o processo quealocamemóriaem tempode compilação,
armazenando fixa de elementos/
assÍmumaquantidade
(b) A alocação estáticaé o processo
que alocamemóriaem tempode execução,
possibilitando
assimumaquantidade
variávelde elementos\
A alocação estáticaé o processoquealocamemóriaem tempode compilação,
possibilitando
assimumaquantidade
R variável de elementos\
|p A alocaÇão estáticaé o processo
que alocamemóriaem tempode execução,
armazenando assimumaquantidade6xade elementos

8' Qualdasestruturasde dadosabaixodeveser utilizadaparaverificarmos


se a sequência
de par€nteses,
colchetes
e chavesé bemfiormada?
Exemplode umasequênciabemformada:{ t ( ) I i
Exemplode umasequênciamalformada:{ t ( I ) }
(êil Lísras;
V
(b) InsertonSorq
(c) Filas;
(d) Pilhas;

9. 11' sabendo quea funcao3foi chamada


da seguintemaneira,
funcao3(3,
4), o códigoabaixoretorna:
int funcao3(int
x, int y){
if(Y== g;
returnl;
returnx x funcao3(x,y-1);
)
,(à) L2
(b) 64
(c) 2r
@tt
10' 'Este métodoselecionaum dos valoresda seqüência,estenumeroentãoé consideradoum pivô e é comparado com os demaisvaloresda
seqüênciaaindanão ordenados que sãoalocadosem suaesquerdacasosejammenorese a suadireitacasosejammaiores,distorestam
duas
seqüênciasumaa direitae outraa esquerdado pivô,em cadaumadestasé realizado
o mesmométodoaté que resteapenasum elementonas
seqüências,
nesteinstantetemosa seqüência ordenada.'
Estamosfalandodo método:
(a) BubbleSortY
(b) MergeSort
@ qrictso't
(d) Insertionsorh(

,530 / 9064
que t e r sãoponteiros.Qualé a instruçãoque melhorrepresenta numponteiro,para
a larefade atribuirum endereçoarmazenado
oçtfo,
# ,=',
(b) xt=ri
\"t (c) *r=t;
(d) *[=*1'
'

12. Sãoestruturaslineares:
(a) vetor, matrize fila
@ fila,Pilhae Ponteiro
(c) matriz,listae áruore
(d) áruore,vetore matriz

13. Assinale correta.Umafunçãoé chamada


a alternativa quandoela:
de recursiva
(a) Chamaumaoutrafunçãodentrodelapararesolver o problema.
(b) Utilizaum laçodiversas um problema.
vezespararesolver
-@ ctu*t elamesmaaté queo problema sejaresolvido.
até.queumadasfunçõesresolvao
(d) Chamaumaoutrafunçãoe estaoutrafunçãochamaumanovafunçãoe assimsucessivamente
problema.
l
14. Analise declarações
as seguintes em relaçãoaosalgoritmos de ordenação:
L A idéiabásicado algoritmode ordenação quicksort é varrerum vetorde dadosváriasvezesde modo"rápido",e a cadaPassagem forçacom
queo maiorelemento analisadová.parao finaldo veton\
U, A idéiabásicado algoritmode ordenação selectionsort é construirumaárvorecomos dadosa seremordenados, percorreressesdadospela
últimacamadadenominada folhase, a cadapassagem recursiva, compararcada elemento
da folhacom.o seu sucessor.Seos elementos não
estãoordenados deve-setrocá-losde posição
III. A idéiabásicado algoritmode ordenação merge.soft é criarumasequência a partirde duasoutrastambémordenada,
ordenada utilizando
ostrêspassos'úteis do paradigma dividir-para.conquistar(Dividir- Conquistar
- Combinar)
t/
IV. A idéiabásicado algoritmo de ordenação insertionsofté varrerum vetoldedadosda esquerda e à medidaqueavançao
paraa.direita,
vetoro algoritmovai deixandoos dadosmaisà esquerd a ordenadosá
Estãoincorretosos itens:
(a ) I eI I
:i
(b) II e III
.p lrleru
(d) II e IV

de ordenação
15. Qualdosmétodos a seguirexigemaismemória?
(a) Ordenaçãoporseleção
{b) Ordenaçãopor inserção
"p r'aergesort
(d) Quicksott

1531/ 9064

You might also like