Algoritmos e Lgica de Programao Aula Prtica 180416

  • Slides: 27
Download presentation
Algoritmos e Lógica de Programação (Aula Prática - 18/04/16) Un 2 – seção 2

Algoritmos e Lógica de Programação (Aula Prática - 18/04/16) Un 2 – seção 2 - Estruturas de decisão ou Seleção 1 2 • Questões da Aula Atividade 2 • Vídeo Aula 3 e 4 (aula prática) 24/03/16

1 • Questões da Aula Atividade 2 O que fazer? Resolução individual das 4

1 • Questões da Aula Atividade 2 O que fazer? Resolução individual das 4 (quatro) questões objetivas. Tempo? 30 min. Como fazer? 1. Resolver as questões objetivas individualmente; 2. Comparar os meus resultados com o gabarito disponibilizado pelo professor no Chat Atividade.

1 • Questões da Aula Atividade 2 Questão 1. Podemos descrever algoritmos de várias

1 • Questões da Aula Atividade 2 Questão 1. Podemos descrever algoritmos de várias maneiras diferentes. Podemos, por exemplo, utilizar uma linguagem natural como o idioma inglês, o chamado pseudocódigo, contudo, se decidirmos por esta opção, devemos nos certificar que as instruções resultantes são definidas (não ambíguas). Representações gráficas chamadas fluxogramas são outra possibilidade, porém, esta possibilidade só funcionará adequadamente quando o algoritmo for pequeno e simples. Observe o pseudocódigo a seguir: algoritmo "misterio" x, y: inteiro inicio // Seção de Comandos escreval("Digite o primeiro número: ") leia(x) escreval("Digite o segundo número: ") leia(y) escreva("O resultado da operação misteriosa é: ", x*y) Fimalgoritmo Qual das alternativas explica adequadamente o que faz o algoritmo acima?

1 • Questões da Aula Atividade 2 Questão 2. “Em programação existem comandos que,

1 • Questões da Aula Atividade 2 Questão 2. “Em programação existem comandos que, a partir de uma condição, permitem que o programa siga por um caminho ou siga por outro. Da mesma forma que acontece em situações do cotidiano, por exemplo, se chover eu vou à escola de ônibus, senão vou á escola caminhando. Nesse caso a condição contida na frase é estar chovendo ou não e (se chover), e a partir desta condição, é feita a escolha por uma das duas ações”. Observe o trecho de linguagem C a seguir, representando uma estrutura simples de decisão: if(Condicao) Acao 1(); else Acao 2(); Agora, leia as asserções a seguir: I. “Condicao” é uma expressão lógica cujo resultado deve ser “verdadeiro” ou “falso”. II. “Acao 1()” não será executada a menos que “Condição” seja “falso”. III. A ordem de execução será: teste de veracidade de “Condição”, depois “Ação 1()”, depois “Ação 2()”. IV. Nunca teremos a execução de “Ação 1()” e “Ação 2()” em uma única passagem por este trecho de código. Qual das alternativas a seguir apresenta apenas afirmações corretas?

1 • Questões da Aula Atividade 2 Questão 3. O Comando “if” executará uma

1 • Questões da Aula Atividade 2 Questão 3. O Comando “if” executará uma vez uma única instrução ou um grupo de instruções entre chaves se a condição a ser testada for verdadeira. Não fará nada se a condição a ser testada for falsa. O comando “else”, quando associado ao comando “if”, executará uma única vez uma instrução ou um grupo de instruções entre chaves, se a condição de teste do comando “if” for falsa. Observe o trecho de código a seguir em Visu. Alg: algoritmo “Valores. Valorosos” var Valor 1, Valor 2: inteiro inicio escreva("Insira um valor inteiro para Valor 1: ") leia(Valor 1) escreva("Insira um valor inteiro para Valor 2: ") leia(Valor 2) se (Valor 1 <> Valor 2) então escreva("Valor 1 não é igual a Valor 2. ") senão se (var 1 > var 2) então escreva("Valor 1 é maior que Valor 2. ") senão se (var 2 > var 1) então escreva("Valor 1 é menor que Valor 2. ") senão escreva("Valor 1 é igual a Valor 2. "). . . Qual o resultado deste trecho de código se inserir o valor 12 para Valor 1 e o valor 10 para Valor 2?

1 • Questões da Aula Atividade 2 Questão 4. Comumente as estruturas de decisão

1 • Questões da Aula Atividade 2 Questão 4. Comumente as estruturas de decisão tipo se-então-senão são ditas ‘encadeadas’, quando uma estrutura de decisão está localizada dentro da porção “se” ou da porção ‘senão de outra estrutura de decisão. Este tipo de estrutura composta também é chamado ‘estrutura aninhada’ ou ‘estrutura encaixada’. Independente do nome que utilizamos para identificar este tipo de estrutura composta, o que realmente interessa é que a utilização de estruturas encadeadas de “se-entãosenão” permite que esta estrutura de decisão seja estendida para muito além das duas opções corriqueiras (verdadeiro e falso). Assinale a alternativa correta sobre a estrutura “se-então-senão” encadeada. a) Não substitui estruturas de repetição construídas com o comando “escolha”. b) Só substitui o comando “escolha” se o número de cláusulas “caso” for par. c) Só substitui o comando “escolha” se o número de cláusulas “caso” for ímpar. d) Substitui o comando “escolha”, mas pode gerar código mais difícil de ler. e) Substitui o comando “escolha” e eleva a quantidade de cláusulas de 2 para 16.

1 • Questões da Aula Atividade 2 GABARITO DAS QUESTÕES 1) A 2) C

1 • Questões da Aula Atividade 2 GABARITO DAS QUESTÕES 1) A 2) C 3) A 4) D

2 • Vídeo Aula 3 Você Resolve 1: - Seleção Simples (SE) Monte um

2 • Vídeo Aula 3 Você Resolve 1: - Seleção Simples (SE) Monte um algoritmo que some dois valores inteiros e faça a verificação se a soma, destes dois números, é maior que dez; Se for mostre a seguinte mensagem para o usuário: “Soma é maior que dez, (mostrar o valor da soma)”. • Monte em Visu. Alg; • Transforme em C;

2 • Vídeo Aula 3 Visu. Alg Var num 1, num 2, soma :

2 • Vídeo Aula 3 Visu. Alg Var num 1, num 2, soma : inteiro Inicio escreva("Digite o primeiro número: ") leia(num 1) escreva("Digite o segunda número: ") leia(num 2) soma<-(num 1+num 2) se (soma>10) entao escreva("Soma é maior que dez. ", soma) fimse Fimalgoritmo

2 • Vídeo Aula 3 C++ #include <iostream. h> #include <stdlib. h> #include <stdio.

2 • Vídeo Aula 3 C++ #include <iostream. h> #include <stdlib. h> #include <stdio. h> #include <math. h> int main() { float numero 1, numero 2; printf("Informe o primeiro numero: "); scanf("%f", &numero 1); printf("Informe o segundo numero: "); scanf("%f", &numero 2); if ((numero 1 + numero 2) > 10) printf("n. A soma dos numeros informados e %3. 2 fnn", numero 1 + numero 2); system("PAUSE"); return 0; }

2 • Vídeo Aula 3 Você Resolve 2: - Seleção Composta (SENÃO) Monte um

2 • Vídeo Aula 3 Você Resolve 2: - Seleção Composta (SENÃO) Monte um algoritmo que some dois valores inteiros e faça a verificação se a soma, destes dois números, é maior que dez; Se for mostre a seguinte mensagem para o usuário: “Soma é maior que dez, (mostrar o valor da soma)”, senão mostre a seguinte mensagem para o usuário: “Soma é menor que dez, (mostrar o valor da soma)”. • Monte em Visu. Alg; • Transforme em C;

2 • Vídeo Aula 3 Visu. Alg Var num 1, num 2, soma :

2 • Vídeo Aula 3 Visu. Alg Var num 1, num 2, soma : inteiro Inicio escreva("Digite o primeiro número: ") leia(num 1) escreva("Digite o segunda número: ") leia(num 2) soma<-(num 1+num 2) se (soma>10) entao escreva("Soma é maior que dez. ", soma) senao escreva("Soma é menor que dez. ", soma) fimse Fimalgoritmo

2 • Vídeo Aula 3 C++ #include <iostream. h> #include <stdlib. h> #include <stdio.

2 • Vídeo Aula 3 C++ #include <iostream. h> #include <stdlib. h> #include <stdio. h> #include <math. h> int main() { float numero 1, numero 2; printf("Informe o primeiro numero: "); scanf("%f", &numero 1); printf("Informe o segundo numero: "); scanf("%f", &numero 2); if ((numero 1 + numero 2) > 10) printf("n. A soma dos numeros informados e maior que 10. nn", numero 1 + numero 2); else printf (“n. A soma dos numeros informados e menor que 10. nn", numero 1 + numero 2 "); system("PAUSE"); return 0; }

2 • Vídeo Aula 3 Você Resolve 3: Só Será verdade quando pelo menos

2 • Vídeo Aula 3 Você Resolve 3: Só Será verdade quando pelo menos um dos lados for Verdade Considerando a tabela abaixo: A B Ae. B A ou B ~A ~B F F V V V F F V F V V F F Ex. : A) A menina é obediente B) A menina é estudiosa A menina é obediente e estudiosa

2 • Vídeo Aula 3 Você Resolve 4: – Estrutura Sequencial Definição = É

2 • Vídeo Aula 3 Você Resolve 4: – Estrutura Sequencial Definição = É um conjunto de comandos que serão executados numa seqüência linear de cima para baixo. Nesse tipo de estrutura todas as linhas do algoritmo serão executadas. (passo a passo) Crie um algoritmo que calcule a área de um círculo, em: • Visu. Alg; • Linguagem C;

2 • Vídeo Aula 3 Visu. Alg Var raio, area, pii : real Inicio

2 • Vídeo Aula 3 Visu. Alg Var raio, area, pii : real Inicio Escreva("Digite o valor do raio: ") Leia(raio) pii<-3. 14 area<-(pii*(raio*raio)) Escreval("A área do círculo é: ", area) Fimalgoritmo

2 • Vídeo Aula 3 C++ #include<stdio. h> #include<stdlib. h> #include<math. h> /*A bliblioteca

2 • Vídeo Aula 3 C++ #include<stdio. h> #include<stdlib. h> #include<math. h> /*A bliblioteca math contem as funções matematicas*/ #define PI 3. 141592 /*Define PI como uma constante*/ int main() { float area, raio; printf("Digite o raio: n"); scanf("%f", &raio); area = PI*(pow(raio, 2)); printf("A area da circunferencia é: %. 2 f", area); return 0; }

2 • Vídeo Aula 4 Você Resolve 1: Monte um algoritmo que leia dois

2 • Vídeo Aula 4 Você Resolve 1: Monte um algoritmo que leia dois valores inteiros e mostre para o usuário em ordem decrescente. • Monte em Visu. Alg; • Transforme em C;

2 • Vídeo Aula 4 Visu. Alg Var a, b: inteiro Inicio escreval("Digite números:

2 • Vídeo Aula 4 Visu. Alg Var a, b: inteiro Inicio escreval("Digite números: ") leia(a) escreval("Digite números: ") leia(b) se (a < b) entao escreval("Ordem decrescente: ") escreval(b , " ", a) fimse se(a > b) entao escreval("Ordem decrescente: ") escreval(a, " ", b) Fimse fimalgoritmo

2 • Vídeo Aula 4 C++ #include <iostream. h> #include <stdlib. h> #include <stdio.

2 • Vídeo Aula 4 C++ #include <iostream. h> #include <stdlib. h> #include <stdio. h> #include <math. h> int main() { float a, b; printf("Informe o primeiro numero: "); scanf("%f", &a); printf("Informe o segundo numero: "); scanf("%f", &b); if (a>b) printf("n. A ordem decrescente dos números e. nn", a, b); else printf (“ n. A ordem decrescente dos números e. nn", b, a); system("PAUSE"); return 0; }

2 • Vídeo Aula 4 Você Resolve 2: Monte um algoritmo que leia um

2 • Vídeo Aula 4 Você Resolve 2: Monte um algoritmo que leia um número inteiro e avalie SE o número informado pertence ao intervalo [1, 8]. • Monte em Visu. Alg; • Transforme em C;

2 • Vídeo Aula 4 Visu. Alg var num 1 : real inicio escreval("Digite

2 • Vídeo Aula 4 Visu. Alg var num 1 : real inicio escreval("Digite um número") leia(num 1) se (num 1 >= 1) e (num 1 <= 8) entao escreval("o número está entre 1 e 8") senao escreval("o número não está entre 1 e 8") fimse fimalgoritmo

2 • Vídeo Aula 4 C++ #include <iostream. h> #include <stdlib. h> #include <stdio.

2 • Vídeo Aula 4 C++ #include <iostream. h> #include <stdlib. h> #include <stdio. h> #include <math. h> int main() { float a; printf("Informe um numero: "); scanf("%f", &a); if (a>1 && a<8) printf("n. O numero esta dentro do intervalo de 1 a 8. n", a); else printf (“ n. O numero nao esta dentro do intervalo de 1 a 8. n", a); system("PAUSE"); return 0; }

2 • Vídeo Aula 4 Você Resolve 3: if (sexo!= “F” && sexo!= “M”)

2 • Vídeo Aula 4 Você Resolve 3: if (sexo!= “F” && sexo!= “M”) { printf(“Dado inválido. "); } Escreva em linguagem natural o que diz o código acima: Resposta: SE a variávevl “sexo” for diferente de F e “sexo” for diferente de M Imprima a mensagem “Dado Inválido”.

2 • Vídeo Aula 4 Você Resolve 4: Construa um algoritmo que calcule o

2 • Vídeo Aula 4 Você Resolve 4: Construa um algoritmo que calcule o peso ideal de uma pessoa. Dados de entrada: altura e sexo. Fórmulas para cálculo do peso: peso ideal de homem = (72, 7 x altura) -58 peso ideal da mulher = (62, 1 x altura) -44, 7 • Em Visu. Alg usando (SE); • Em Visu. Alg, usando (CASO); • Em C.

2 • Vídeo Aula 4 Visu. Alg usando SE var altura : real sexo

2 • Vídeo Aula 4 Visu. Alg usando SE var altura : real sexo : caractere feminino : real masculino : real peso : real inicio escreval("Informe a altura em metros: ") leia(altura) escreval("Informe o sexo: (M ou F): ") leia(sexo) se (sexo = "M") entao peso: =((72. 7)*(altura))-(58) escreval("peso ideal é", peso) senao peso: =((62. 1)*(altura))-(44. 7) escreval("peso ideal é", peso, " kg") fimse fimalgoritmo

2 • Vídeo Aula 4 Visu. Alg usando CASO var altura : real sexo

2 • Vídeo Aula 4 Visu. Alg usando CASO var altura : real sexo : caractere feminino : real masculino : real peso : real inicio escreval("Informe a altura em centímetros: ") leia(altura) escreval("Informe o sexo: (M ou F): ") leia(sexo) escolha sexo caso "m" peso: =((72. 7)*(altura))-(58) escreval("peso ideal é", peso) caso "f" peso: =((62. 1)*(altura))-(44. 7) escreval("peso ideal é", peso, " kg") Fimescolha fimalgoritmo