Buscar

Gabarito Lista 1

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

Lista 1 - Funções 
#include <iostream> 
using namespace std; 
 
void Teste1(int ); 
void Teste2(int &); 
int Teste3(int); 
 
int x = 20; 
 
int main() 
{ 
 int numero = 10, outroNumero; 
 
 Teste1(numero); 
 cout << "Valor de numero (apos Teste1) = " << numero << endl; 
 cout << "X = " << x << endl; 
 
 Teste2(numero); 
 cout << "Valor de numero (apos Teste2) = " << numero << endl; 
 cout << "X = " << x << endl; 
 
 outroNumero = Teste3(numero); 
 cout << "Valor de outro numero (apos Teste3) = " << outroNumero << endl; 
 cout << "X = " << x << endl; 
 
 system("pause"); 
 
} 
 
void Teste1(int numero) 
{ 
 numero = numero + x ; 
 x++; 
} 
 
void Teste2(int &numero) 
{ 
 int valor = 100; 
 
 numero = numero + valor; 
 x++; 
} 
 
int Teste3(int n) 
{ 
 int valor = 200; 
 n = n + valor; 
 x--; 
 return n; 
} 
 
Pede-se: 
 
 
 a) Identifique as variáveis globais e locais. Quando identificar uma variável 
local, especifique o escopo da mesma. 
 b) Identifique, em cada função, o tipo de passagem de parâmetros. 
 c) Mostre, passo a passo, o valor de todas as variáveis, indicando o momento 
em que as variáveis não mais ocupam espaço na memória. 
 d) Diga o que é impresso na tela 
 
 
Observação: Os exemplos abaixo foram retirados do livro: 500 Algoritmos. LOPES, A., 
GARCIA, G. Rio: Campus Elsevier. 4
a
 ed. 2002. 
 
2) Construa uma função que receba um número inteiro e retorne o fatorial do 
número. 
 
3) Construa uma função que receba um número inteiro e exiba se ele é, ou não, 
primo. 
 
4) Construa uma função que receba um caracter como parâmetro e retorne 1 caso 
seja uma vogal, minúscula ou maiúscula, e 0 em caso contrário. 
 
5) Construa uma função que calcule o número de combinações de n elementos p a p . 
A fórmula da combinação é a seguinte : 
!p)!*pn(
!n
Cnp −= 
 
6) Construa uma função que receba como parâmetros dois vetores inteiros, e um 
inteiro indicando a quantidade de elementos que os dois vetores têm. A função deverá 
retornar o produto interno dos dois vetores. 
 
Saída 
 
VETORA VETORB 
 
2 1 
3 2 
4 3 
5 4 
 
produto interno: 40 
 
 
7) Construa uma função que receba uma mensagem, seu tamanho e um 
caracter e retire todas as ocorrências desse caracter na mensagem colocando 
* em seu lugar. A função deve retornar o total de caracteres retirados. 
 
 
 
 
 
 
 
Saída 
digite mensagem 
PRECISO FAZER OS 500 ALGORITMOS E COMECAR A CRIAR OS MEUS. 
 
digite letra: A 
 
total de trocas: 5 
PRECISO F*ZER OS 500 *LGORITMOS E COMEC*R * CRI*R OS MEUS.