Escolar Documentos
Profissional Documentos
Cultura Documentos
P
CENTRO EMPREGO E FORMAO PROFISSIONAL DE VORA
Ficha Formativa
Tcnico de Informtica e Sistemas | UFCD: 0785
Nome Formando: _____________________
Data: __/__/__
Exemplo:
12
14
20
Ficha Formativa
Tcnico de Informtica e Sistemas | UFCD: 0785
Nome Formando: _____________________
Data: __/__/__
v[6];
i;
res;
resultado;
v[1]=5;
v[0]=1;
v[3]=1;
v[2]=4;
v[4]=5;
v[5]=2;
res=0;
for(i=0;i<6;i=i+2){
res=res+(i+1);
}
for(i=0;i<6;i=i+2){
resultado=res+v[i];
}
if(res>0){
res=resultado+(2*i);
}
else{
res= resultado-(2*i)
}
res=resultado-2;
printf(%d,res);
return(0);
}
0=1
1=5
2=4
3=1
4=5
5=2
res=0 1 4 9 26 12
i=0 2 4 6 0 2 4 6
resultado 10 13 14 14+2*6
Ficha Formativa
Tcnico de Informtica e Sistemas | UFCD: 0785
Nome Formando: _____________________
Data: __/__/__
0=0 2
1=0 2
2=0 2
3=0 2
4=1 0
5=1 0
res=1 3 5 7 9 9 9
i=0 2 3 4
Ficha Formativa
Tcnico de Informtica e Sistemas | UFCD: 0785
Nome Formando: _____________________
Data: __/__/__
B. Crie um programa que receba um valor sem IVA, uma taxa de IVA e
mostre ao utilizador o valor com IVA. O vector dever ter 3
posies em que na primeira fica o valor sem IVA, na segunda a
taxa de IVA e na terceira, o valor com IVA.
Classificao: ________________________________________________________________
-1
-2
-2
-1
Classificao: ________________________________________________________________
Notas Gerais:
Esta prova de natureza terica divide-se em trs grupos e tem a durao de 150
minutos sem tolerncia.
Utilize apenas caneta ou esferogrfica de tinta indelvel, azul ou preta.
No permitido o uso de corrector. Em caso de engano, deve riscar, de forma
inequvoca, aquilo que pretende que no seja classificado.
No permitido o uso de auxiliares.
As respostas ilegveis ou que no possam ser identificadas so classificadas com zero
pontos.
Rubrique no canto superior direito todas as folhas da prova.
Qualquer tentativa de cpia ser punida com a anulao da prova.
As cotaes dos itens encontram-se descritas no quadro seguinte:
Grupo
Grupo I
Grupo II
Grupo III
Questo
Alnea
Cotao
(Pontos)
TOTAL
1.
0,5
2.
0,5
3.
0,5
4.
0,5
1.
2.
1.
2.
3.
4.
5.
12
20
Grupo I
Ateno! Se apresentar mais de uma resposta, ou resposta ambgua, a questo ser
anulada.
_______________________________________________________________
b)
possvel que duas posies do mesmo array apresentem o mesmo
valor.
Verdadeiro
_______________________________________________________________
_______________________________________________________________
c)
_______________________________________________________________
d)
possvel que um array com N elementos apresente posies sem
estarem preenchidas.
Verdadeiro!
_______________________________________________________________
_______________________________________________________________
Grupo II
1. Indique qual o resultado para o utilizador aps a execuo do seguinte fragmento
de cdigo:
#include<stdio.h>
int main(){
vx_ |_ |_ |_ |_
int vx[5];
int i=1;
int res;
i=1
res=
for(i=4;i>0;i--){
vx[i]=i;
}
res=i;
do{
vx[i]=res;
res=res+1;
i=res;
}while(res<0);
for(i=0;i<5;i=i+3){
res=res*vx[i];
}
if(res>0 && res<5){
res=2;
}
else if(res>=5 && res<10){
res=3;
}
else{
res=1;
}
printf("\nRes: %d", res);
for(i=0;i<5;i=i+1){
printf("\nVector: %d",vx[i]);
}
return(0);
}
i 0 0 1 2 3 4 5 6 4 2 0 -2 4 3 2 1
x 064202
y13333
z23 3 66
do{
x=i;
y=z+1;
i=i-2;
}while(x>0);
z=x+y;
for(i=4;i>=2;i=i--){
if(v1[i]>0){
z=z+y;
}
else{
z=z+x;
}
}
x=v1[i]+1;
printf("\nX: %d", x);
printf("\nY: %d", y);
printf("\nZ: %d", z);
for(i=0;i<5;i=i+1){
printf("\nVector: %d",v1[i]);
}
return(0);
}
Classificao: ________________________________________________________________
!
2. Utilizando vectores, crie um programa que calcula e mostra a mdia ponderada
para uma turma. O programa recebe 5 notas (0-20) e os respetivos pesos
normalizados (0-1). Assuma que o utilizador insere os valores na sequncia:
N1 P1 N2 P2
No necessrio garantir que o intervalo de notas de 0 a 20 nem que o
intervalo dos pesos de 0 a 1.
Ficha Formativa
Tcnico de Informtica e Sistemas | UFCD: 0785
Nome Formando: _____________________
Data: __/__/__
Classificao: ________________________________________________________________
Notas Gerais:
Esta prova de natureza terica divide-se em trs grupos e tem a durao de 150
minutos sem tolerncia.
Utilize apenas caneta ou esferogrfica de tinta indelvel, azul ou preta.
No permitido o uso de corrector. Em caso de engano, deve riscar, de forma
inequvoca, aquilo que pretende que no seja classificado.
No permitido o uso de auxiliares.
As respostas ilegveis ou que no possam ser identificadas so classificadas com zero
pontos.
Rubrique no canto superior direito todas as folhas da prova.
Qualquer tentativa de cpia ser punida com a anulao da prova.
As cotaes dos itens encontram-se descritas no quadro seguinte:
Grupo
Grupo I
Grupo II
Grupo III
Questo
Alnea
Cotao
(Pontos)
TOTAL
1.
0,5
2.
0,5
3.
0,5
4.
0,5
1.
2.
1.
2.
3.
4.
12
3
20
Grupo I
Ateno! Se apresentar mais de uma resposta, ou resposta ambgua, a questo ser
anulada.
_______________________________________________________________
b)
possvel que duas posies do mesmo vector apresentem o mesmo
valor.
Falso
_______________________________________________________________
_______________________________________________________________
c)
Falso
_______________________________________________________________
_______________________________________________________________
d)
possvel que um vector com N elementos apresente posies sem
estarem preenchidas.
Verdadeiro
_______________________________________________________________
_______________________________________________________________
Grupo II
1. Indique qual o resultado para o utilizador aps a execuo do seguinte fragmento
de cdigo:
#include<stdio.h>
int main(){
int vx[5];
int i=1;
int res;
1
VX[0] 4
VX[1] 3
VX[2] 2
VX[3] 1
VX[4] 0
I=1 4 3 2 1 2
RES= 1 2 2 2
for(i=4;i>0;i--){
vx[i]=i;
}
res=i;
do{
vx[i]=res;
res=res+1;
i=res;
}while(res<0);
for(i=0;i<5;i=i+3){
res=res*vx[i];
}
if(res>0 && res<5){
res=2;
}
else if(res>=5 && res<10){
res=3;
}
else{
res=1;
}
printf("\nRes: %d", res);
for(i=0;i<5;i=i+1){
printf("\nVector: %d",vx[i]);
}
return(0);
}
I= 0 1 2 3 4 5 6 4 2 0
X=0 6 4 2
Y=1 3 3 3
Z=2 5
do{
x=i;
y=z+1;
i=i-2;
}while(x>0);
z=x+y;
for(i=4;i>=2;i=i--){
if(v1[i]>0){
z=z+y;
}
else{
z=z+x;
}
}
x=v1[i]+1;
printf("\nX: %d", x);
printf("\nY: %d", y);
printf("\nZ: %d", z);
for(i=0;i<5;i=i+1){
printf("\nVector: %d",v1[i]);
}
return(0);
}
1
2
3
1
1
3
2
2
1
3
Classificao: ________________________________________________________________
Notas Gerais:
Esta prova de natureza terica divide-se em trs grupos e tem a durao de 120
minutos sem tolerncia.
Utilize apenas caneta ou esferogrfica de tinta indelvel, azul ou preta.
No permitido o uso de corrector. Em caso de engano, deve riscar, de forma
inequvoca, aquilo que pretende que no seja classificado.
No permitido o uso de auxiliares.
As respostas ilegveis ou que no possam ser identificadas so classificadas com zero
pontos.
Rubrique no canto superior direito todas as folhas da prova.
Qualquer tentativa de cpia ser punida com a anulao da prova.
As cotaes dos itens encontram-se descritas no quadro seguinte:
Grupo
Grupo I
Grupo II
Grupo III
Questo
Alnea
Cotao
(Pontos)
TOTAL
1.
0,5
2.
0,5
3.
0,5
4.
0,5
1.
2.
1.
2.
3.
4.
12
2
20
Grupo I
Ateno! Se apresentar mais de uma resposta, ou resposta ambgua, a questo ser
anulada.
_______________________________________________________________
b)
_______________________________________________________________
Falso, a primeira opcao sempre 0 e a ultima menos um o tamanho
_______________________________________________________________
c)
possvel alterar a indicao de qual a primeira posio de um vector.
Por exemplo, possvel dizer que a primeira posio de um vector passa a ser
a posio 5.
Falso, no possivel
_______________________________________________________________
_______________________________________________________________
d)
possvel utilizar o contedo de uma posio de um vector na condio
da estrutura de deciso if.
Verdadeiro
_______________________________________________________________
Grupo II
1. Indique qual o resultado final para o utiliador aps a execuo do seguinte
fragmento de cdigo:
#include<stdio.h>
int main(){
int xpto[5];
int i;
int res;
xpto[0]=1;
xpto[1]=0;
xpto[2]=0;
xpto[3]=1;
xpto[4]=0;
res=xpto[0];
for(i=1;i<5;i=i+2){
xpto[i]=xpto[i]+res;
}
res=1;
for(i=0;i<5;i=i+1){
res=res+xpto[i];
}
1
1
0
2
0
I5
RES 20
res=res*i;
if(res>0){
res=res-i;
}
else{
res=res+1;
}
printf(%d, res);
20
for(i=0;i<5;i=i+1){
printf(%d,xpto[i]);
}
return(0);
}
xpto[0] 1
xpto[1] 0 1
xpto[2] 0
xpto[3] 1 2
xpto[4] 0
I1350 12 3 4 5
RES 1 1 2 3 3 5 5 25 20
vector[4];
i;
res;
w;
init;
V[0] 1 1
V[1] 1 2
V[2] 1 3
V[3] 1 4
-1
I 0 3 40 1 2 3 4 0 3 6 0 1 2 3 4 2 1 0
RES 2 3 4 5 5 4
0 64 2 0 1
W
INIT 1 2 1
init=1;
res=2;
for(i=0;i<4;i=i+1){
vector[i]=init;
}
init=init+1;
w=0;
res=res+1;
for(i=0;i<4;i=i+3){
res=res+vector[i];
}
res=res+w;
init=init-1;
for(i=0;i<4;i=i+1){
vector[i]=vector[i]+i;
}
for(i=3;i>=0;i=i-1){
w=i+vector[i]-init;
}
1+2-1 4
res=res+i;
w=w-i;
printf("%d\n", res);
printf("%d\n\n", w);
for(i=0;i<4;i=i+1){
printf("%d\n",vector[i]);
}
return(0);
}
7. Utilizando vectores, crie um programa que receba para cada produto, um preo
de compra e um preo de venda. Pretende-se receber os preos para 5
produtos e o objectivo que os valores fiquem em posies adjacentes (lado a
lado). Ou seja, para o produto 1, o preo de compra fica na posio 0 e o preo
de venda na posio 1 e assim sucessivamente para os restantes produtos.
Pretende-se mostrar ao utilizador, para cada produto, qual o lucro obtido
atravs da diferena entre o preo de venda e o preo de compra.
-2
-1
Ficha Formativa