Buscar

ALGORITIMO EXERCICIO

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 16 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

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 6, do total de 16 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

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 9, do total de 16 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

algoritmos
AULA 01
INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO
1. A representação gráfica dos algoritmos, em que cada símbolo apresentado representa uma operação a ser realizada é chamada de: Fluxograma
2. Sobre algoritmo, marque a opção correta. É a solução teórica, passo a passo, de um problema
3. Assinale a alternativa correta relacionada à característica de um algoritmo: A execução de um algoritmo é feita sequencialmente.
4. Assinale a opção correta. Um programa é um algoritmo codificado em uma linguagem de programação.
5.Fluxograma é um "diagrama esquemático que apresenta uma sequência de operações, tal como para um programa de computador ou processo industrial" (in Dicionário Priberam da Língua Portuguesa [em linha], 2008-2013, http://www.priberam.pt/dlpo/fluxograma [consultado em 13-08-2014]. Abaixo temos um fluxograma de notas (N1 e N2) obtidas pelo aluno João. Selecione a opção que apresenta os itens de entrada do fluxograma.
N1 e N2
6. A implementação concreta de um algoritmo, ou o conjunto de algoritmos a serem executados pela máquina é chamada de: Programa
7. Considerando as afirmativas a seguir em relação a representação de algoritmos:
I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo;
II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo;
III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos.
Podemos afirmar que: As alternativas I e III são CORRETAS
8. Analise as afirmativas a seguir em relação a representação de algoritmos:
I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo;
II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo;
III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos.
Podemos afirmar que:Apenas as alternativas I e III são CORRETAS	
9.
10.
AULA 02
NOSSO PRIMEIRO PROGRAMA
1.
AULA 03
CONHECENDO O DEV C++
1. 
AULA 04
CONHECENDO ALGUNS ELEMENTOS DO C++
1.
AULA 05
ESTRUTURAS DE DECISÃO - PARTE 1
1. 
AULA 06
ESTRUTURAS DE DECISÃO - PARTE 2
1. 
11 10 50 10 2
2. A linguagem C++ possui estruturas de decisão, as quais podem mudar a sequência de execução dos comandos. Analise o trecho de programa abaixo e assinale a alternativa que corresponda a estrutura de decisão utilizada.
int main() {
int num;
cout<<"Digite um número: ";
cin>> num;
(num > 0)?cout<< num : cout<<" Número negativo ";
return 0;
}
Operador ternário
3.Uma lanchonete está disponibilizando para seus clientes um terminal através do qual poderão fazer seu pedido. Para que isso aconteça, o terminal deve exibir o menu de itens disponíveis conforme se vê a seguir:
*** Cardápio ***
100 - Hambúrguer - R$5,50
101 - Cachorro-quente - R$4,50
102 - Milkshake - R$7,00
103 - Pizza brotinho - R$8,00
104 - Cheeseburguer - R$8,50
Informe o código do seu pedido:
Uma vez que o cliente informe o código do item desejado, o terminal deverá perguntar a quantidade de itens que ele deseja pedir. Ao final, o usuário deverá informar o pedido do cliente e o valor a pagar.
Se você deseja escrever esse programa em C++ e optar pela estrutura SWITCH, como ficariam as linhas iniciais dessa seleção, até o caso de o item "hambúrguer" ser escolhido?
valor= qtde * 5.50;
 break;
}
while (codigo) {
 case 100: item="Hambúrguer";
4. Considerere um trecho de um programa em C++. Qual a variável que será alterada e para qual valor ela mudará ?
int a = 2, b = 4, x = 12, y = 11, z = 3;
 float t = 0;
 if (x < y+z)
 if (y != z*4 - 2)
 t = y/z;
 else
 a = y % z;
 else
 b = z + y/x;
A variável t ficará 3
5. Uma estrutura seletiva permite que se restrinja a execução de um trecho do programa à veracidade, ou não, de uma condição. Sabendo disso, imagine que você está com as medidas dos três lados de um triângulo armazenados nas variáveis L1, L2 e L3. Utilizando a sintaxe do Portugol Studio, como seria o trecho da estrutura seletiva que avalie se este triângulo é isóscele, escaleno ou equilátero? Veja as definições para os diferentes tipos de triângulo:
Escaleno: Dois lados quaisquer com a mesma medida;
Equilátero: Três lados com a mesma medida;
Isósceles: Três lados com medidas diferentes
se (lado1==lado2 e lado2==lado3)
{ escreva("Este é um triângulo equilátero!") }
senao se (lado1==lado2 ou lado2==lado3 ou lado3==lado1)
{ escreva("Este é um triângulo escaleno!") }
senao
{ escreva("Este é um triângulo isósceles!") }
6. Com base na sintaxe do Portugol Studio, imagine que você precisa escrever um algoritmo que exiba o nome do dia semana a partir de seu código numérico equivalente, armazenado na variável codigo. Confira a codificação: 1 - domingo, 2 - segunda-feira, 3 - terça-feira, 4 - quarta-feira, 5 - quinta-feira, 6 - sexta-feira, 7 - sábado. Veja o trecho da estrutura de seleção que poderia ser utilizado na solução:
_____A_____ (codigo) {
 _____B_____ 1:
 escreva("domingo")
 ____C______
 _____B_____ 2:
 escreva("segunda-feira")
 ____C______
 _____B_____ 3:
 escreva("terça-feira")
 ____C______
 _____B_____ 4:
 escreva("quarta-feira")
 _____C_____
 _____B_____ 5:
 escreva("quinta-feira")
 _____C_____
 _____B_____ 6:
 escreva("sexta-feira")
 _____C_____
 _____B_____ 7:
 escreva("sábado")
 __________ 
 _____D_____:
 escreva("Código inválido!")
 }
As instruções que completam adequadamente as lacunas são:
A - escolha, B - caso, C - pare, D - outros casos
7. Considere o trecho de programa em C++ abaixo. O que é impresso na tela quando o número de entrada é 9 ? Assinale a opção correta.
 int x;
 cout << "Digite um numero: ";
 cin >> x;
 if (x % 2 == 0)
 cout << x << "é divisível por 2";
 else
 if (x % 3 == 0 && x % 5 == 0)
 cout << x << " é divisível por 3 e por 5";
 else
 cout << x << " ### " ;
9 ###
8.
9.
AULA 07
ESTRUTURAS DE REPETIÇÃO - PARTE 1
1.A linguagem de programação C++ dispõe de três estruturas de repetição: do..while, while e for. Pensando na maneira como cada uma delas funciona, observe o trecho de código a seguir:
Whle ( cont<=10)
{
cout <<"Estamos na " <<cont << "a. rodada";
cont++;
}
Qual das alternativas a seguir, escritas com a estrutura for, equivale à estrutura while anterior? 	
for (int cont=0; cont <= 10; cont++)
{ cout << "Estamos na " << cont << "a. rodada..."; }
2. A estrutura de dados de iteração na qual uma ação será executada pelo menos uma vez, antes da avaliação da condição, é implementada pelo comando básico: de repetição
3. A partir da comparação entre as estruturas while e do...while, é certo afirmar que: No while, o bloco de comandos controlado poderá não ser executado. Enquanto que no do...while o bloco de comandos controlado será sempre executado, pelo menos uma vez.
4. Em relação às técnicas de programação e construção de algoritmos, assinale a alternativa que apresente corretamente duas características da estrutura de controle repetir ... até que.
A execução permanece no loop enquanto o resultado do teste for verdadeiro / a saída da estrutura de repetição ocorre quando o resultado do teste é falso.
5. Assinale a alternativa correta em relação a quantidade de vezes que a palavra "PAZ" será impressa, no trecho de código abaixo:
x = 50;
do{
y = 8;
do{
cout<<"PAZ \n";
y++;
} while ( y <10);
x--;
}while ( x > 48);
4 vezes
6. Imagine que , com base na sintaxe do Portugol Studio, você precisa escrever um algoritmo que receba uma sequência de números e, para cada número informado, diga se ele é par ou ímpar. A sequência se encerra quando o usuário digitar 0. Considerando que é necessário utilizar uma estrutura repetitiva com pré-teste, qual das alternativas a seguir ajuda a resolver o problema proposto?
senao
 { escreva("Este número é ímpar!\n") }escreva("Informe um número qualquer: ")
 leia(num)
}
faca {
 se (num%2!=0)
 { escreva("Este número é par!\n") }
7. Na execução do comando while o teste da condição que controla a execução, ou não, dos comandos subordinados, é feito, sempre, antes de cada iteração. Desta forma, é correto afirmar que: Os comandos subordinados poderão não ser executados.
8.
9.
AULA 08 
ESTRUTURAS DE REPETIÇÃO - PARTE 2
1.Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário:
int main ( ) {
 int i;
 double x, y = 0;
 for (i = 0; i < 10; i++){
 cout << "Digite um numero: ";
 cin >> x;
 if ((x % 2) == 1){
 y = y + x; 
 }
 }
 cout << "Numero: " << y << "\n";
 system("PAUSE");
 return 0;
}
A soma dos elementos ímpares
2. Imagine que você precisa escrever um programa em C++ que receba o sexo de 100 pessoas (F para Feminino ou M para Masculino). Ao final da leitura dos sexos, o programa precisa exibir as seguintes informações: quantidade de mulheres, quantidade de homens, percentual de mulheres e percentual de homens.
Observações: 1. O programa deve funcionar com "F" e "M" maiúsculos ou minúsculos; 2. A estrutura de repetição a ser utilizada deve ser FOR.
Sabendo disso, qual seria o trecho de repetição adequado para esse programa?
for (int cont=1;cont<=100;cont++) {
 cout <<"Qual o sexo? ";
 cin >>sexo;
 if (sexo==F || sexo==f)
 { qtdeF++; }
 else if (sexo==M || sexo==m)
 { qtdeM++; }
}
3. Se você desejasse escrever um programa em C++ que recebesse um número qualquer e exibisse a sua tabuada, precisaria da seguinte repetição:
para (cont=0;cont<=10;cont++)
{ escreva(num," x ",cont," = ",num*cont,"\n")}
4. O que será impresso, após a execução do código, a seguir?
#include < iostream >
using namespace std;
int main()
{
for(int i=25;i>0;i=i-6) cout << i << " ";
system( "pause" );
}
25 19 13 7 1
5. Marque a opção correta. Considere o trecho de programa feito abaixo em C++. O que é impresso na tela ?
 int conta, num = 1, prod = 1;
 for (conta = 4; conta > 0; conta--) {
 prod = prod *num;
 num++;
 }
 cout << "Prod = " << prod << " num = " << num << endl;	
Prod = 24 num = 5
6. O que o trecho de programa em C++ abaixo imprime na tela ?
 int x;
 for (x = 5; x > 0; x--)
 if (x % 3 == 0)
 cout << x - 1 << " ";
 else
 cout << x + 1 << " ";
6 5 2 3 2
7. Marque a opção correta. O que é impresso na tela ?
 int conta, x = 1, r = 1;
 for (conta = 2; conta >= 0; conta--) {
 r = r * x + 1;
 x += 2;
 cout << "r= " << r << " x = " << x << endl;
 r = 2 x = 3
r = 7 x = 5
r = 36 x = 7
8.
AULA 09
1.Considere que um casal de amigos está brincando de par ou ímpar. Você precisa escrever um algoritmo que, a cada uma das 10 jogadas que farão, armazene nos vetores jogadasA e jogadasB o número escolhido pelo jogador A (que é par) e o número escolhido pelo jogador B (que é ímpar), respectivamente. Precisa informar, também a cada jogada, o jogador vencedor. O trecho que avaliaria a soma dos números escolhidos por cada amigo e decidiria quem venceu a rodada seria:
total=jogadasA[ind]+jogadasB[ind]
se (total%2==0)
{ escreva("Jogador A venceu!\n") }
senao
{ escreva("Jogador B venceu!\n") }
2.Imagine que um dado é lançado 20 vezes e, a cada lançamento, a face sorteada é lançada em um vetor denominado sorteios. Considerando que você precisa escrever um algoritmo conforme a sintaxe do Portugol Studio que, ao final dos sorteios, informe quantas vezes cada face ímpar foi sorteada, qual das estruturas repetitivas a seguir voce utilizaria para contar a quantidade de sorteios nos quais cada uma das faces ímpares saiu? 
para (ind=0;ind<=19;ind++) {
 escolha (sorteios[ind]) {
 caso 1: cont1++
 pare
 caso 3: cont3++
 pare
 caso 5: cont5++
 pare
 }
}
3. Os chamados vetores e matrizes podem ser considerados como: Estruturas de dados homogêneas
4.Um vetor é uma estrutura _____________ e _____________ para armazenamento de um _____________ que deve ser _____________.
unidimensional - homogênea - conjunto de valores - do mesmo tipo
	-1 0 1 2 3 4 4 3 2 1
6. Você deseja armazenar na variável SOMA a adição entre todos os elementos de um vetor com 10 número reais chamado NUM. O trecho de código que apresenta a estrutura repetitiva que permite que isso seja feito é:
for (i=0;i<=9;i++)
{ SOMA+=NUM[i]; }
7. Em C++, se você precisasse escrever um programa que recebesse o sexo e a altura de 25 pessoas e armazenasse nos vetores Sexo e Altura, respectivamente, e, em seguida, calculasse e exibisse a média de altura das mulheres e a média de altura dos homens, que trecho utilizaria para recebimento de valores via teclado e para as somas necessárias na obtenção da média das alturas?
Atenção às variáveis utilizadas:
quantF - Quantidade de pessoas do sexo feminino;
somaAF - Soma das alturas do sexo feminino;
quantM - Quantidade de pessoas do sexo masculino;
somaAM - Soma das alturas do sexo masculino.	
for (ind=0;ind<=24;ind++) {
 cout <<"Informe o sexo: ";
 cin >>Sexo[ind];
 cout <<"Informe a altura: ";
 cin >>Altura[ind];
 if (Sexo[ind]==F || Sexo[ind]==f)
 { quantF++; somaAF+=Altura[ind]; }
 else if (Sexo[ind]==M || Sexo[ind]==m)
 { quantM++; somaAM+=Altura[ind]; }
}
8.
9.
AULA 10
1.Na codificação de um programa, na linguagem C++, é necessário a declaração de uma matriz bidimensional para armazenar as notas de 6 disciplinas de uma turma com 30 alunos. Tomando-se como base que o algoritmo considera que os dados estarão organizados na matriz de modo que cada linha represente as notas de um único aluno, marque a alternativa que apresenta de forma correta a declaração desta matriz, chamada notasAlunos.
a) float notasAlunos[30][6];	
2. Sabendo-se que a sintaxe do C e do C++ estabelece que a declaração de vetores bidimensionais deve se dar da seguinte forma:
< tipo do dado > nome_da_matriz [nº de linhas][nº de colunas];
Na codificação de um programa, na linguagem C++, é necessário a declaração de uma matriz bidimensional para armazenar as notas de 6 disciplinas de uma turma com 30 alunos. Tomando-se como base que o algoritmo considera que os dados estarão organizados na matriz de modo que cada linha represente as notas de um único aluno, marque a alternativa que apresenta de forma correta a declaração desta matriz, chamada notasAlunos.
a) float notasAlunos[30][6];
3. Em uma aplicação em C/C++, a matriz ESTOQUE [3][4] armazena, em cada uma de suas linhas, a quantidade estocada de produtos no último quadrimestre (4 meses). Sabendo-se que a declaração de uma matriz em C/C++ se dá da forma:
< tipo de dado> nome [nºde linhas][nºde colunas];
 Para obter o total estocado no primeiro mês do quadrimestre, o programa deverá:
Somar todas as linhas da coluna índice 0.
4. Observe a matriz:
Qual será o resultado obtido após ser executado o trecho do algoritmo a seguir:
for (i = 0; i < 4; i ++)
 for ( j = 0; j < 2; j++)
 {
 aux = mat[i][j];
 mat[i][j] = mat[i][3-j];
 mat[[i][3 - j] = aux;
 }	
Duas estruturas repetitivas: uma controlando as linhas e variando de 0 a 2, e outra controlando as colunas e variando de 0 a 3.
5. Imagine que você precisa escrever um algoritmo que receba uma matriz 4x4 de números inteiros, gere e exiba uma segunda matriz na qual as linhas são as colunas da matriz 1, e as colunas são as linhas da matriz 1. Qual das alternativas a seguir apresenta o código da estrutura de repetição que recebe os elementos da primeira matriz e gera a segunda?
para (lin=0;lin<=3;lin++) {
 para (col=0;col<=3;col++) {
 escreva("Informe a posição [",lin+1,",",col+1,"]: ")
 leia(M1[lin][col])
 M2[col][lin]=M1[lin][col]
 }
}
6. Analise a seguinte afirmação:
"Um edifício tem 8 andares, cada andar tem 5 apartamentos."
Como poderíamos escrever uma declaração de matriz na linguagem C++, seguindo a afirmação acima, sabendo que os dados seriam do tipo int ?	int edificio[8][5];
7. Analise o código em C++ mostrado abaixo e assinale a alternativa que descreve corretamentea sua execução:
#include < iostream >
using namespace std;
int main()
{
 int p, num[50];
 for (p = 0; p <= 49; p++)
 {
 cout << "Digite um valor : ";
 cin >> num[p];
 }
 for (p = 0; p <= 49; p++)
 {
 if (num[p] % 2 == 0 && num[p] > 30)
 cout << num[p] << "\t";
 }
 system("pause");
 return 0;
}
O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam maiores que 30.
8.

Continue navegando