View
1.172
Download
5
Category
Preview:
Citation preview
Aula #04Controle de fluxo: tomada de decisão
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● Para transformar dados em informações, um programa faz cálculos, manipula dados e toma decisões.
● Para tomar decisões, todas as linguagens de alto nível possuem as instruções ‘SE’ e ‘SENÃO’.
<script>
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
}
alert(‘FIM.’);
</script>
No código acima, a mensagem ‘FIM’ será mostrada de toda maneira. Entretanto, a mensagem ‘Maior de idade.’ só
será mostrada se o usuário digitar um número que seja maior ou igual a 18.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
}
Instrução Condição
Bloco
● O bloco é tudo que fica entre chaves.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
}
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (25 >= 18) {
alert(‘Maior de idade.’);
}
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (25 >= 18) {
alert(‘Maior de idade.’);
}
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (true) {
alert(‘Maior de idade.’);
}
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (true) { //o bloco será executado
alert(‘Maior de idade.’);
}
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Se isso, então faça
● A instrução ‘SE’ sempre possui uma condição e um bloco de instruções.
● O bloco de instruções só é executado se a condição for avaliada como verdadeira.
//Suponha que a entrada seja 25
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
}
● A instrução ‘SE’ pode ser utilizada em conjunto com a instrução ‘SENÃO’.
● A instrução ‘SENÃO’ não precisa de condição, pois será executada em todos os casos em que o bloco da
instrução ‘SE’ não for executado..
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, faça
//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}
● A instrução ‘SE’ pode ser utilizada em conjunto com a instrução ‘SENÃO’.
● A instrução ‘SENÃO’ não precisa de condição, pois será executada em todos os casos em que o bloco da
instrução ‘SE’ não for executado..
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, faça
//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}
● A instrução ‘SE’ pode ser utilizada em conjunto com a instrução ‘SENÃO’.
● A instrução ‘SENÃO’ não precisa de condição, pois será executada em todos os casos em que o bloco da
instrução ‘SE’ não for executado..
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, faça
//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (16 >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}
● A instrução ‘SE’ pode ser utilizada em conjunto com a instrução ‘SENÃO’.
● A instrução ‘SENÃO’ não precisa de condição, pois será executada em todos os casos em que o bloco da
instrução ‘SE’ não for executado..
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, faça
//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (16 >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}
● A instrução ‘SE’ pode ser utilizada em conjunto com a instrução ‘SENÃO’.
● A instrução ‘SENÃO’ não precisa de condição, pois será executada em todos os casos em que o bloco da
instrução ‘SE’ não for executado..
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, faça
//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (false) {
alert(‘Maior de idade.’); //Este bloco não será executado
} else {
alert(‘Menor de idade.’); //Este bloco será executado
}
● A instrução ‘SE’ pode ser utilizada em conjunto com a instrução ‘SENÃO’.
● A instrução ‘SENÃO’ não precisa de condição, pois será executada em todos os casos em que o bloco da
instrução ‘SE’ não for executado..
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, faça
//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}
● Você pode concatenar as instruções ‘SE’ e ‘SENÃO’ para criar condições múltiplas.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Senão, Se
<script>
var idade = prompt(‘Digite sua idade’);
if (idade < 12) {
alert(‘Criança.’);
} else if (idade < 14) {
alert(‘Pré-adolescente.’);
} else if (idade < 18) {
alert(‘Adolescente.’);
} else if (idade < 60) {
alert(‘Adulto.’);
} else {
alert(‘Idoso.’);
}
</script>
● Você pode colocar quantas instruções quiser dentro de um bloco, inclusive outra condição.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Blocos de Instruções
<script>
var sexo = prompt(‘Digite seu sexo:’);
var idade = prompt(‘Digite sua idade:’);
if (idade >= 18) {
if (sexo == ‘M’) {
alert(‘Alistamento militar obrigatório.’);
} else {
alert(‘Alistamento militar opcional.’);
}
} else {
alert(‘Dispensado(a) do alistamento militar.’);
}
</script>
● Indentação é uma maneira de organizar o código para que fique mais legível.
● Indentar é deslocar bloros de código a direita para demonstrar quais estão dentro de quais.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Indentação
if (a == b) {
if (b > c) {
alert(‘!’);
} else {
if (a == d) {
alert(‘!!’);
}
if (c == d) {
alert(‘!!!’);
} else {
alert(‘!!!!’);
}
}
}
1. Desenvolva um programa que calcule o IMC (índice de massa corpórea) e responda qual é a situação da pessoa.
Procure na internet pelo cálculo e pelas faixas de IMC.
2. A montagem de uma placa necessita de 2 componentes do tipo A, 3 do tipo B e 7 do tipo C. Faça um programa
que receba as quantidades de cada componente e responda quantas placas podem ser montadas no máximo.
3. Um banco precisa que cada cliente tenha uma senha de 4 dígitos, sendo que todos dígitos devem ser diferentes
de ‘0’. Faça um programa que receba a senha e verifique se a senha é válida.
4. A prefeitura de uma cidade calcula a base das tarifas de fornecimento de água de acordo com as faixas de
consumo abaixo. Após calculado o valor base, a prefeitura dá um desconto de 5% para os valores até R$100,00
e cobra um acréscimo de 10% para os valores acima de R$200,00. Faça um programa para calcular a cobrança
dado o consumo em m³.
● Até 20m³ = R$1,60 por m³
● De 21 a 50m³ = R$2,80 por m³
● Acima de 50m³ = R$4,20 por m³
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Exercícios
Respostas
1. Desenvolva um programa que calcule o IMC (índice de massa corpórea) e responda qual é a situação da pessoa.
Procure na internet pelo cálculo e pelas faixas de IMC.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Respostas
<script>
var peso = prompt(‘Digite seu peso:’);
var altura = prompt(‘Digite seu altura:’);
var imc = peso/(altura*altura);
if (imc < 18) {
alert(‘Abaixo do peso.’);
} else if (imc < 25) {
alert(Peso normal.’);
} else {
alert(‘Acima do peso.’);
}
</script>
2. A montagem de uma placa necessita de 2 componentes do tipo A, 3 do tipo B e 7 do tipo C. Faça um programa
que receba as quantidades de cada componente e responda quantas placas podem ser montadas no máximo.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Respostas
<script>
var a = prompt(‘Qtde de componentes A:’);
var b = prompt(‘Qtde de componentes B:’);
var c = prompt(‘Qtde de componentes C:’);
var placasA = a/2;
var placasB = b/3;
var placasC = c/7;
var maximo = placasA;
if (placasB < maximo) {
maximo = placasB;
}
if (placasC < maximo) {
maximo = placasC;
}
alert(minimo);
</script>
3. Um banco precisa que cada cliente tenha uma senha de 4 dígitos, sendo que todos dígitos devem ser diferentes
de ‘0’. Faça um programa que receba a senha e verifique se a senha é válida.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Respostas
<script>
var senha = prompt(‘Digite senha:’);
var valida = true;
valida = (senha % 10) >= 1;
senha = senha/10;
valida = (senha % 10) >= 1 && valida;
senha = senha/10;
valida = (senha % 10) >= 1 && valida;
senha = senha/10;
valida = (senha % 10) >= 1 && valida;
if (valida) {
alert(‘Senha válida.’);
} else {
alert(‘Senha inválida.’);
}
</script>
4. A prefeitura de uma cidade calcula a base das tarifas de fornecimento de água de acordo com as faixas de
consumo abaixo. Após calculado o valor base, a prefeitura dá um desconto de 5% para os (...)
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Respostas
<script>
var m3 = prompt(‘Digite o consumo em m3:’);
var tarifa = 0;
if (m3 <= 20) {
tarifa = m3 * 1.6;
} else if (m3 <= 50) {
tarifa = m3 * 2.8;
} else {
tarifa = m3 * 4.2;
}
if (tarifa <= 100) {
tarifa = tarifa - 0.05 * tarifa;
} else if (tarifa > 200) {
tarifa = 1.10 * tarifa;
}
alert(tarifa);
</script>
Alguns exercícios e exemplos foram retirados do livro ‘Estudo de Algoritmos: Soluções em C++ 1a Edição’ de Custódio
T. K. Martins e Milton Rodrigues.
Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
Créditos
Recommended