Você está na página 1de 32

Controle de Fluxo

Estruturas de Decisão e Repetição


Desenvolvimento de Aplicativos Multimídia
Produção Multimídia
Santa Catarina Prof. Dr. Andre Salvaro Furtado
Câmpus PHB andre.salvaro@ifsc.edu.br

1 / 32
Estruturas de Controle
Estruturas que controlam o fluxo do programa
• Estruturas de Decisão
• Estruturas de Repetição

2 / 32
Estrutura de Decisão
Estrutura que determina qual fluxo um programa
deve seguir de acordo com uma condição
• IF/ELSE
• SWITCH

3 / 32
input

true condição false

comando comando

4 / 32
Estrutura de Decisão
x = ler("Média:");

true x >= 6 false

"Aprovado" "Reprovado"

5 / 32
Estrutura de Decisão - IF/ELSE
Estrutura IF (SE) ... ELSE (SENÃO) ...
if ( condi ç ã o ) {
// Comandos se condi ç ã o for verdadeira
} else {
// Comandos caso a condi ç ã o seja falsa
}

// Continua ç ã o do c ó digo

6 / 32
Estrutura de Decisão - IF/ELSE
Ex.: Verificar se um número é maior que outro
let x = ?;
let y = ?;

if (x > y ) {
console . log ( x + " é maior que : " + y ) ;
} else {
console . log ( x + " n ã o é maior que : " y ) ;
}

console . log ( " ... " ) ;

7 / 32
Estrutura de Decisão - IF/ELSE
let x = 2 0 ;
let y = 1 0 ;

if (x > y ) {
console . log ( x + " é maior que : " + y ) ;
} else {
console . log ( x + " n ã o é maior que : " y ) ;
}

console . log ( " ... " ) ;

2 0 é maior que 1 0
...

8 / 32
Estrutura de Decisão - IF/ELSE
let x = 5 ;
let y = 1 0 ;

if (x > y ) {
console . log ( x + " é maior que " + y ) ;
} else {
console . log ( x + " n ã o é maior que " + y ) ;
}

console . log ( " ... " ) ;

5 n ã o é maior que 1 0
...

9 / 32
Estrutura de Decisão - ELSE IF
Estrutura IF .... ELSE IF ... ELSE ...
• Permite decidir entre mais de dois fluxos
if ( condi ç ã o 1 ) {
// Comandos se condi ç ã o 1 for verdadeira
} else if ( condi ç ã o 2 ) {
// Comandos se condi ç ã o 2 for verdadeira
} else {
// Comandos caso condi ç õ es anteriores sejam falsas
}

10 / 32
Estrutura de Decisão - IF/ELSE
Ex.: Verificar se um número é maior que o outro
ou se são iguais
let x = ?;
let y = ?;

if (x > y ) {
console . log ( x + " é maior que " + y ) ;
} else if (x < y ) {
console . log ( x + " é menor que " y ) ;
} else {
console . log ( x + " é igual a " y ) ;
}

11 / 32
Estrutura de Decisão - IF/ELSE
let x = 1 0 ;
let y = 1 0 ;

if (x > y ) {
console . log ( x + " é maior que " + y ) ;
} else if (x < y ) {
console . log ( x + " é menor que " + y ) ;
} else {
console . log ( x + " é igual a " + y ) ;
}

1 0 é igual a 1 0

12 / 32
Exemplo
Exercício:
• Escreva um programa que receba como entrada
duas notas, calcule a média aritmética delas.
▶ Se a média for maior ou igual a 6 apresente “Aprovado”
como saída.
▶ Caso contrário apresente “Reprovado” como saída.

13 / 32
Exemplo
Solução:
const prompt = require ( " prompt - sync " ) () ;

let primeiraNota = Number ( prompt ( " Qual a primeira nota ? " ) ) ;


let segundaNota = Number ( prompt ( " Qual a segunda nota ? " ) ) ;

let media = ( primeiraNota + segundaNota ) / 2 ;

if ( media >= 6 ) {
console . log ( " Aprovado " ) ;
} else {
console . log ( " Reprovado " ) ;
}

14 / 32
Estruturas de Repetição
Estrutura de Repetição Condicional
• WHILE
Estrutura de Repetição por Contador
• FOR
Estrutura de Repetição por Iteração
• FOR OF

15 / 32
input

true condição false

comando ...

16 / 32
Estrutura de Repetição - WHILE
Estrutura de repetição condicional WHILE
• Bloco de comandos é repetido enquanto a condição
for verdadeira (true)
while ( condi ç ã o ) {
// Comandos enquanto condi ç ã o for verdadeira
}

// Continua ç ã o do c ó digo

17 / 32
Estrutura de Repetição - WHILE
Ex. Sortear número (1 a 10) e solicitar ao
usuário que informe números até acertá-lo.
const prompt = require ( " prompt - sync " ) () ;

const numero = Math . floor ( Math . random () * 1 0 ) + 1 ;


let tentativa = 0 ;

while ( numero !== tentativa ) {


tentativa = Number ( prompt ( " N ú mero de 1 a 1 0 : " ) ) ;
}

console . log ( " Voc ê acertou ! " ) ;

18 / 32
Estrutura de Repetição - WHILE
Ex. Apresentar todos os números entre 0 e 3.
let i = 0 ;
while (i <= 3 ) {
console . log ( i ) ;
i ++;
}

0
1
2
3

19 / 32
Estrutura de Repetição - FOR
Estrutura de repetição por contador FOR
• Bloco de comandos é repetido até que o contador
cumpra a condição definida
for ( in í cio ; condi ç ã o ; incremento ) {
// Comandos enquanto condi ç ã o for verdadeira
}

// Continua ç ã o do c ó digo

20 / 32
Estrutura de Repetição - FOR

Ex. Apresentar todos os números entre 0 e 3.


for ( let i = 0 ; i <= 3 ; i ++) {
console . log ( i ) ;
}

0
1
2
3

21 / 32
Tipos de Dados Complexos
Array
• Conjunto de valores ordenados de acordo com
posições numéricas
▶ Definição: let a = [valor1, valor2, ...];
▶ Acesso: a[índice];
▶ Tamanho: a.length

a=
0 1 2 3
22 / 32
let a = [‘a’,‘b’,‘c’]

a= a b c
0 1 2

23 / 32
Array
let a = [ " a " , " b " , " c " ];
let x = a [ 1 ];

console . log ( a ) ;
console . log ( x ) ;
console . log ( a [ 0 ]) ;
console . log ( " Tamanho : " + a . length ) ;

["a", "b", "c"]


b
a
Tamanho : 3

24 / 32
Estrutura de Repetição - FOR

Ex. Apresentar todos os valores de um array.


let a = [ " a " ," b " ," c " ];

for ( let i = 0 ; i < a . length ; i ++) {


console . log ( a [ i ]) ;
}

a
b
c

25 / 32
Estrutura de Repetição - FOR
Ex. Apresentar todos os valores de um array em
ordem inversa
let a = [ " a " ," b " ," c " ];

for ( let i = a . length - 1 ; i >= 0 ; i - -) {


console . log ( a [ i ]) ;
}

c
b
a

26 / 32
Estrutura de Repetição - FOR OF
Estrutura de repetição por contador FOR ... OF
• Bloco de comandos é repetido para cada um dos
elementos de uma estrutura composta (ex. array)
for ( variavel of array ) {
// Comandos a serem executados para cada um dos elementos
}

// Continua ç ã o do c ó digo

27 / 32
Estrutura de Repetição - FOR OF

Ex. Apresentar todos os valores de um array.


let a = [ " a " ," b " ," c " ];

for ( let letra of a ) {


console . log ( letra ) ;
}

a
b
c

28 / 32
Estrutura de Repetição - FOR OF

Ex. Apresentar todos os valores de um array.


let pizza = [ " Mussarela " ," Calabresa " ," Margherita " ];

for ( let p of pizza ) {


console . log ( p ) ;
}

Mussarela
Calabresa
Margherita

29 / 32
Exemplo
Exercício:
• Escreva um programa que defina um array com 10
valores e como saída apresente a média de todos os
valores do array.

30 / 32
Exemplo

Solução:
let valores = [ 1 0 ,2 0 ,3 0 ,4 0 ,5 0 ,6 0 ,7 0 ,8 0 ,9 0 ,1 0 0 ];
let soma = 0 ;

for ( let valor of valores ) {


soma += valor ; // soma = soma + valor ;
}

let media = soma / valores . length ;

console . log ( media ) ;

31 / 32
Controle de Fluxo
Estruturas de Decisão e Repetição
Desenvolvimento de Aplicativos Multimídia
Produção Multimídia
Santa Catarina Prof. Dr. Andre Salvaro Furtado
Câmpus PHB andre.salvaro@ifsc.edu.br

32 / 32

Você também pode gostar