Buscar

Simulado 3 - Aula 2

Prévia do material em texto

1a Questão 
 
 
 
 O programa não executa corretamente, pois o protótipo da 
função media( ) não apresenta a identificação dos parâmetros, 
mas apenas os tipos dos mesmos. 
 O programa executa perfeitamente, mas não mostra o valor da 
media já que esta função não foi chamada na função main( ). 
 O programa não executa corretamente, pois os protótipos estão 
fora da ordem em que as funções são descritas. 
 O programa executa perfeitamente independente da ordem das 
funções já que existem os seus protótipos. 
 O programa não executa corretamente pois as funções devem 
ser descritas antes da função main(), para que o compilador 
consiga reconhecê-las. 
 
 
 
 
 
 
 2a Questão 
 
 
A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder 
armazenar valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis locais e 
globais. Sendo assim, qual das situações abaixo representa melhor o conceito das variáveis globais. 
 
 
Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome 
apresentando o mesmo valor. 
 Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser 
apresentado em qualquer outra função do programa. 
 Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor 
poderemos imprimir esta variável em qualquer outra função do programa mostrando o valor 
atribuído na função "mostra". 
 
Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5. Ao 
tentar chamar esta variável em outra função é mencionado um warning. 
 
Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta 
variável em outra função, onde tambem está declarada a variável 'Y', será acusado um erro de 
compilação. 
 
 
 
Explicação: 
Uma variável é classificada com Global quando for declarada fora de todas as funções, 
significando que poderá ser alterada em qualquer uma delas. 
A resposta correta é : 
Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado 
poderá ser apresentado em qualquer outra função do programa. 
 
 
 
 
 
 3a Questão 
 
 
#include < iostream > 
 using namespace std; 
void SOMA(float a, int b) { 
 float result = a+b; 
 cout << "A soma de " << a << " com " << b << " é: " << result; 
} 
int main() 
{ 
int a; 
float b; 
a = 10; b = 12.3; 
SOMA(b,a); 
} 
A função SOMA acima possui as seguintes características : 
 
 
Retorna valor e não possui parâmetros. 
 
Não retorna valor e não possui parâmetros. 
 
Retorna valor e possui parâmetros. 
 
Retorna valor. 
 Não retorna valor e possui parâmetros. 
 
 
 
Explicação: 
A função 
void SOMA(float a, int b) { 
 float result = a+b; 
 cout << "A soma de " << a << " com " << b << " é: " << result; 
} 
tem o tipo de retorno void, o que significa que nenhum valor é retornado. Além disso, a função possui 2 
parâmetros, que são a e b. 
Logo, a resposta certa é Não retorna valor e possui parâmetros. 
 
 
 
 
 4a Questão 
 
 
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, 
utiliza-se a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos 
programas. Esta técnica, também chamada de modularização, tem como principal elemento: 
 
 
Os Grafos 
 
Os Vetores 
 As funções 
 
As Estruturas de Dados 
 As Filas 
 
 
 
 
 
 5a Questão 
 
 
Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por 
referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo 
dessa função: 
 
 
void func (int &a, int &b); 
 
int func (int &a, int b); 
 
void func (int a, int &b); 
 
int func (&int, int); 
 int func (int a, int &b); 
 
 
 
 
 
 
 6a Questão 
 
 
Informe qual deverá ser a saída do programa abaixo: 
 
#include 
void func(int *x) 
{ 
 do{ 
 cout << *x << " "; 
 (*x)--; 
 }while(*x>0); 
} 
 
main() 
{ 
 int x=5; 
 func(&x); 
 cout << x; 
 system("pause"); 
} 
 
 
5 4 3 2 1 5 
 5 3 4 2 1 0 
 
5 4 3 2 1 6 
 5 4 3 2 1 0 
 
5 3 4 2 1 4 
 
 
 
 
 
 7a Questão 
 
 
Qual será a saída para o seguinte trecho de código? 
 void FUNC1() 
{ 
int B = -100; 
cout << "Valor de B dentro da função FUNC1: " << B; 
} 
void FUNC2() { 
int B = -200; 
cout << "Valor de B dentro da função FUNC2: " << B; 
} 
int main() { 
int B = 10; 
cout << "Valor de B: " << B; 
B = 20; 
FUNC1(); 
cout << "Valor de B: " << B; 
B = 30; 
FUNC2(); 
cout << "Valor de B: " << B; 
} 
 
 Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 20 Valor de B dentro da 
função FUNC2: -400 Valor de B: 30 
 Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 20 Valor de B dentro da 
função FUNC2: -200 Valor de B: 30 
 
Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 10 Valor de B dentro da 
função FUNC2: -200 Valor de B: 30 
 
Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 20 Valor de B dentro da 
função FUNC2: -200 Valor de B: 20 
 
Valor de B: 10 Valor de B dentro da função FUNC1: -200 Valor de B: 20 Valor de B dentro da 
função FUNC2: -200 Valor de B: 30 
 
 
 
Explicação: 
A execução começa pela main. Na main, B recebe 10. E daí é impresso : Valor de B : 10 
DEpois, B muda e recebe 20. 
Em seguida, é chamada a função FUNC1. Dentro desta função, existe um outro B que recebe -100. Então, é 
impresso : 
 Valor de B dentro da função FUNC1: -100 
A função termina e voltamos para a main, onde existe um outro cout que imprime o valor de B, que na 
main vale 20. Então, será impresso na tela : 
 Valor de B : 20 
Em seguida, ainda na main, B recebe 30 e logo depois, FUNC2 é chamada. Executando FUNC2 temos que 
um B, local à função, recebe -200 e logo em seguida é impresso : Valor de B dentro da função FUNC2 : 
-200 
Terminando a execução de FUNC2, voltamos para a main onde é impresso o valor do B (local à main) 
: Valor de B : 30 
Logo, a opção correta é a que diz : 
 Valor de B : 10 
 Valor de B dentro da função FUNC1: -100 
 Valor de B : 20 
 Valor de B dentro da função FUNC2 : -200 
 Valor de B : 30 
 
 
 
 
 8a Questão 
 
 
Funções são semelhantes aos procedimentos, exceto que uma função sempre retorna um valor. Um 
exemplo de função seria o conjunto de instruções para calcular o fatorial de um número e após a função 
ser executada, ela deve retornar o fatorial do número pedido. Marque a opção que representa um protótipo 
de função válido. 
 
 
void float(int a, int b); 
 
nome tipo(parametros); 
 
tipo parametros(parametros); 
 
tipo parametros(int a, int b); 
 retorno nomeFuncao(parametros); 
 
 
 
Explicação: 
Por definição, o protótipo de uma função é formado da seguinte forma : 
 nome_da_função ( );

Continue navegando

Outros materiais