SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
Aula #04
Controle de fluxo: tomada de decisão
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
Instrução

Condição

var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);

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.’);
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, faça
●

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

//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, faça
●

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

//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, faça
●

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

//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (16 >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, faça
●

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

//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (16 >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, faça
●

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

//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
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, faça
●

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

//Suponha que a entrada seja 16
var idade = prompt(‘Digite sua idade’);
if (idade >= 18) {
alert(‘Maior de idade.’);
} else {
alert(‘Menor de idade.’);
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Senão, Se
●

Você pode concatenar as instruções ‘SE’ e ‘SENÃO’ para criar condições múltiplas.

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

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Blocos de Instruções
●

Você pode colocar quantas instruções quiser dentro de um bloco, inclusive outra condição.

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

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Indentação
●

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.
if (a == b) {
if (b > c) {
alert(‘!’);
} else {
if (a == d) {
alert(‘!!’);
}
if (c == d) {
alert(‘!!!’);
} else {
alert(‘!!!!’);
}
}
}

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Exercícios
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
Respostas
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.

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

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Respostas
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.

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

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Respostas
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.

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

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Respostas
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 (...)

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

Aula #04 - Controle de fluxo: tomada de decisão

Ramon Kayo - 2013/2014
Créditos
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

Mais conteúdo relacionado

Mais procurados

Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
Armando Daniel
 

Mais procurados (20)

Node.js e Express
Node.js e ExpressNode.js e Express
Node.js e Express
 
Java modulo 01 - Introdução
Java modulo 01 - IntroduçãoJava modulo 01 - Introdução
Java modulo 01 - Introdução
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem Java
 
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com JavaExercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
 
Lógica de Programação com Javascript - Aula #03
Lógica de Programação com Javascript - Aula #03Lógica de Programação com Javascript - Aula #03
Lógica de Programação com Javascript - Aula #03
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Estrutura de dados - Pilhas
Estrutura de dados - PilhasEstrutura de dados - Pilhas
Estrutura de dados - Pilhas
 
Curso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicosCurso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicos
 
Java: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosJava: Introdução à Orientação a Objetos
Java: Introdução à Orientação a Objetos
 
Java script - funções
Java script - funçõesJava script - funções
Java script - funções
 
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugol
 
Exercicios java básico
Exercicios java básicoExercicios java básico
Exercicios java básico
 
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScriptCurso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
 
Aula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem CAula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem C
 
Exercicios resolvidos visu alg vetores
Exercicios resolvidos visu alg vetoresExercicios resolvidos visu alg vetores
Exercicios resolvidos visu alg vetores
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Java básico - Módulo 04: Estruturas de controle
Java   básico - Módulo 04:  Estruturas de controleJava   básico - Módulo 04:  Estruturas de controle
Java básico - Módulo 04: Estruturas de controle
 

Destaque

Lógica de Programação com Javascript - Aula #05
Lógica de Programação com Javascript - Aula #05Lógica de Programação com Javascript - Aula #05
Lógica de Programação com Javascript - Aula #05
Ramon Kayo
 
Lógica de Programação com Javascript - Aula #02
Lógica de Programação com Javascript - Aula #02Lógica de Programação com Javascript - Aula #02
Lógica de Programação com Javascript - Aula #02
Ramon Kayo
 
Livro java script guia pratico do web master
Livro java script guia pratico do web masterLivro java script guia pratico do web master
Livro java script guia pratico do web master
Sérgio Reis
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
Bruno Grange
 
Coletanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-cColetanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-c
Wilson Kushima
 

Destaque (20)

Lógica de Programação com Javascript - Aula #05
Lógica de Programação com Javascript - Aula #05Lógica de Programação com Javascript - Aula #05
Lógica de Programação com Javascript - Aula #05
 
Lógica de Programação com Javascript - Aula #02
Lógica de Programação com Javascript - Aula #02Lógica de Programação com Javascript - Aula #02
Lógica de Programação com Javascript - Aula #02
 
Javascript (parte 1)
Javascript (parte 1)Javascript (parte 1)
Javascript (parte 1)
 
Apostila CSS e Java Script
Apostila  CSS e Java ScriptApostila  CSS e Java Script
Apostila CSS e Java Script
 
08 Trabalhando com mais de uma tabela (Relacionamento)
08 Trabalhando com mais de uma tabela (Relacionamento)08 Trabalhando com mais de uma tabela (Relacionamento)
08 Trabalhando com mais de uma tabela (Relacionamento)
 
Na prática: STF e CobiT
Na prática: STF e CobiTNa prática: STF e CobiT
Na prática: STF e CobiT
 
Cent os
Cent osCent os
Cent os
 
Minicurso Javascript
Minicurso JavascriptMinicurso Javascript
Minicurso Javascript
 
JavaScript - Aula Introdutória
JavaScript - Aula IntrodutóriaJavaScript - Aula Introdutória
JavaScript - Aula Introdutória
 
Javascript
JavascriptJavascript
Javascript
 
Javascript (parte 2)
Javascript (parte 2)Javascript (parte 2)
Javascript (parte 2)
 
Desenvolvimento-web-com-html-css-e-javascript
Desenvolvimento-web-com-html-css-e-javascriptDesenvolvimento-web-com-html-css-e-javascript
Desenvolvimento-web-com-html-css-e-javascript
 
javscript para iniciantes
javscript para iniciantesjavscript para iniciantes
javscript para iniciantes
 
10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos
 
Curso java script
Curso java scriptCurso java script
Curso java script
 
Livro java script guia pratico do web master
Livro java script guia pratico do web masterLivro java script guia pratico do web master
Livro java script guia pratico do web master
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
[Curso Java Basico] Exercicios Aula 19
[Curso Java Basico] Exercicios Aula 19[Curso Java Basico] Exercicios Aula 19
[Curso Java Basico] Exercicios Aula 19
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 
Coletanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-cColetanea de-exercicios-resolvidos-em-liguagem-c
Coletanea de-exercicios-resolvidos-em-liguagem-c
 

Lógica de Programação com Javascript - Aula #04

  • 1. Aula #04 Controle de fluxo: tomada de decisão
  • 2. 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
  • 3. 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 Instrução Condição var idade = prompt(‘Digite sua idade’); if (idade >= 18) { alert(‘Maior de idade.’); Bloco } ● O bloco é tudo que fica entre chaves. Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 4. 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
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. 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
  • 9. 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
  • 10. Senão, faça ● 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.. //Suponha que a entrada seja 16 var idade = prompt(‘Digite sua idade’); if (idade >= 18) { alert(‘Maior de idade.’); } else { alert(‘Menor de idade.’); } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 11. Senão, faça ● 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.. //Suponha que a entrada seja 16 var idade = prompt(‘Digite sua idade’); if (idade >= 18) { alert(‘Maior de idade.’); } else { alert(‘Menor de idade.’); } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 12. Senão, faça ● 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.. //Suponha que a entrada seja 16 var idade = prompt(‘Digite sua idade’); if (16 >= 18) { alert(‘Maior de idade.’); } else { alert(‘Menor de idade.’); } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 13. Senão, faça ● 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.. //Suponha que a entrada seja 16 var idade = prompt(‘Digite sua idade’); if (16 >= 18) { alert(‘Maior de idade.’); } else { alert(‘Menor de idade.’); } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 14. Senão, faça ● 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.. //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 } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 15. Senão, faça ● 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.. //Suponha que a entrada seja 16 var idade = prompt(‘Digite sua idade’); if (idade >= 18) { alert(‘Maior de idade.’); } else { alert(‘Menor de idade.’); } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 16. Senão, Se ● Você pode concatenar as instruções ‘SE’ e ‘SENÃO’ para criar condições múltiplas. <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> Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 17. Blocos de Instruções ● Você pode colocar quantas instruções quiser dentro de um bloco, inclusive outra condição. <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> Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 18. Indentação ● 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. if (a == b) { if (b > c) { alert(‘!’); } else { if (a == d) { alert(‘!!’); } if (c == d) { alert(‘!!!’); } else { alert(‘!!!!’); } } } Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 19. Exercícios 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
  • 21. 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. <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> Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 22. Respostas 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. <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> Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 23. Respostas 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. <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> Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 24. Respostas 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 (...) <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> Aula #04 - Controle de fluxo: tomada de decisão Ramon Kayo - 2013/2014
  • 25. Créditos 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