Buscar

EXERCÍCIOS DE ALGORITMOS GBARITO

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

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ê também pode ser Premium ajudando estudantes

Prévia do material em texto

EXERCÍCIOS DE ALGORITMOS - GBARITO
Acompanhe a reprodução do código com os comentários ao lado. Antes, entretanto, devemos lembrar que, na linguagem C, uma divisão entre inteiros terá como resultado o valor inteiro da divisão.
int x = 10, y = 3, z, k;---> as variáveis x, y, z e k são declaradas do tipo inteiro, sendo x=10 e y=3
y = x + y - 1;---> y=10+3-1=12
z = x/y;---> z= 10/12 = 0 (o valor inteiro da divisão) 
k = y % x; ---> k = 12%10 = 2 (resto da divisão de 12 por 10)
if ( k != 0)---> esta condição será verdadeira pois k=2 é diferente de zero(0) 
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k << "\n"; ---> exibe a saída:  x = 10 y = 12 z = 0 k=2
 Acompanhe o código da questão com os comentários ao lado:
1ª EXECUÇÃO 
int num; 
cout << "Digite um numero: "; 
cin >> num; - O usuário informa 7
if (num != 2 || num != 4 || num != 6) esta condição será verdadeira, pois num é diferente de 2 ou de 4, ou de 6
{ 
 num = num + 2; num é incrementado de , isto é num = 7 +2 = 9
 cout << num << " "; exibe o valor de num: 9
} 
if (num != 8) esta condição será verdadeira, pois num é diferente de 8
{ 
 num--; num é decrementado de 1, passando para 8
 cout << num << " "; exibe o valor de num: 8
}
else 
 cout << num * 5 ;
2ª EXECUÇÃO
int num; 
cout << "Digite um numero: "; 
cin >> num; - O usuário informa 8
if (num != 2 || num != 4 || num != 6) esta condição será verdadeira, pois num é diferente de 2 ou de 4, ou de 6
{ 
 num = num + 2; num é incrementado de , isto é num = 8 +2 = 10
 cout << num << " "; exibe o valor de num: 10
} 
if (num != 8) esta condição será verdadeira, pois num é diferente de 8
{ 
 num--; num é decrementado de 1, passando para 9
 cout << num << " "; exibe o valor de num: 9
}
else 
 cout << num * 5 ;
Portanto, ao final das duas execuções serão exibidos os valores: 9 8 10 9
Teste de Mesa
PRIMEIRA EXECUÇÃO
	z
	Saídas Obtidas
	10
	11 /2 * 10 = 50
	
	10 * 10 -10 = 90
SEGUNDA EXECUÇÃO
	z
	Saídas Obtidas
	5
	3 * 5 = 15
	
	11/2 *5 = 25
	
	5 * 5 -10 = 15
Portanto, ao final das duas execuções, foram impressos na tela, respectivamente, os valores: 50 90 15 25 15
Na estrutura for (x = 1; x <= 5; x++), a variável x assumirá os valores: 1, 2, 3, 4 e 5. Desta forma, dois aspectos relevantes devem ser ressaltados:
A estrutura será repetida 5 vezes;
Nenhum dos valores de x atenderá à condição (x % 3 == 0 && x % 5 == 0)
 Sendo assim, o comando de saída do else (cout << x + 1 << " ";) será executado todas as 5 vezes, gerando a saída: 2 3 4 5 6 . 
No programa são declaradas as variáveis: i do tipo int; x e y do tipo double. A seguir pede-se que o usuário informe um valor qualquer que ficará guardado na variável x. Segue-se uma estrutura for que será repetida 5 vezes, para os valores de i iguais a 0, 1, 2, 3 e 4. Em cada uma das cinco repetições será lido um valor para y, e caso este valor seja maior que x, a própria variável x armazenará este valor lido. Assim sendo, ao final das 5 repetições a variável x armazenará o maior de todos os elementos digitados, que será retornado para o usuário.
Teste de mesa:
	num
	num % 2 == 0
	Comando executado
	11
	Falso
	Nenhum
	11-1=10
	Verdadeiro
	cout << num << "\n"; 10
	10-1=9
	Falso
	Nenhum
	9-1=8
	Verdadeiro
	cout << num << "\n"; 8
	8-1=7
	Falso
	Nenhum
	7-1=6
	Verdadeiro
	cout << num << "\n"; 6
	6-1=5
	Falso
	Nenhum
	5-1=4
	Verdadeiro
	cout << num << "\n"; 4
	4-1=3
	Falso
	Nenhum
	3-1=2
	Verdadeiro
	cout << num << "\n"; 2
	2-1=1
	Falso
	Nenhum
	1-1=0
	FIM DA EXECUÇÃO
	FIM DA EXECUÇÃO
Portanto, pelo teste de mesa acima pode-se afirmar que: O trecho fornecido pára quando num for zero e os números exibidos são todos os pares de 10 até 2, nesta ordem.
Na linguagem C/C++, a declaração de uma função (seu cabeçalho) deve obedecer à seguinte sintaxe:
TIPO_VALOR_RETORNO NOME_FUNÇÃO (LISTA_PARÂMETROS), onde:
TIPO_VALOR_RETORNO – corresponde ao tipo do valor que será retornado pela função. Este tipo deverá ser void caso a função não retorne valor.
NOME_FUNÇÃO – corresponde ao identificador (nome) da função e será usado, sempre, para fazer a sua chamada.
LISTA-PARÂMETROS – corresponde à declaração dos parâmetros que a função receberá. Tal lista é opcional, isto é, uma função pode não receber qualquer parâmetro. Esta lista é indicada pelo tipo de dado do parâmetro e seu respectivo nome.
Pelo enunciado da questão identificamos que a mesma não retornará valor. Além disso, receberá dois parâmetros correspondentes ao raio da base e altura do cilindro, respectivamente. Estes dois parâmetros deverão ser do tipo float, Assim sendo, entre as alternativas indicada, aquela que corresponde corretamente ao cabeçalho da função especificada é: void V_Cilindro(float r, float h).
De acordo com o proposto, o programa deverá usar uma matriz unidimensional para cada uma das informações: peso, altura e IMC. O tipo de dado para essas informações deve ser float, e como o cadastro possui 1000 pacientes, cada um destes vetores deverá ter capacidade para 1000 elementos. Dessa forma, a declaração destas variáveis deverá ser:
float peso[1000], altura[1000], imc[1000];

Outros materiais