SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
JavaScript: Sempre a repetir o mesmo? :-/
Carlos Santos
LabMM 3 - NTC - DeCA - UA
Aula 08 e 09, 11-10-2013 e 16-10-2013
Como “simplificar” trabalhos repetitivos?
Como repetir?
• 2 tipos de estruturas de repetição:
• for
• repetição baseada num número de vezes pré-determinado
• while
• repetição até que uma determinada condição seja verdadeira
Estrutura de repetição: for
inicialização da
variável de ciclo

condição de
teste do ciclo

incremento da
variável de ciclo

for ( cont = valorInicial; cont <= valorFinal; cont++)
{
// código a executar
}
Estrutura de repetição: for
a variável contadora
já foi declarada
anteriormente?

var cont;
for ( cont = valorInicial; cont <= valorFinal; cont++)
{
// código a executar
}

for (var cont = valorInicial; cont <= valorFinal; cont++)
{
// código a executar
}
Observações [idiotas?]
• A variável contadora do ciclo pode ter um nome qualquer
• “cont” é só um exemplo!
• O incremento da variável contadora pode ser realizado com base em
qualquer valor inteiro (positivo ou negativo)
• ++ é um valor muito utilizado... mas apenas isso!
• O valor da variável contadora não deve ser alterado dentro do bloco de
instruções
• é possível... mas é bom saber muito bem o que se está a fazer :)
for: como funciona?
1. Executar a parte de inicialização do ciclo.
2. Verificar a condição de teste.
i. Se verdadeira, continuar;
ii. Se não, terminar o ciclo.
3. Executar o código existente no bloco de instruções.
4. Executar a parte de incremento do ciclo.
5. Repetir os passos 2 a 4, até a condição de teste ser falsa.
for: como funciona em fluxograma
1. inicialização
ciclo;

5...
4. incremento de
variável de ciclo;

2. Condição
de teste

true

3. bloco de código;

false
for: Exemplo (1)
•

Qual o resultado?

var i;
for (i = 0; i <= 5; i++)
{
document.write("O número é " + i);
document.write("<br />");
}
for: Exemplo (2)
•

Qual o resultado?

var x = 0;
for (x = 10; x >= 0; x = x - 2)
{
document.write("O número é " + x);
document.write("<br />");
}
for: Exemplo (3)
•

Qual o resultado?

var num = prompt(“Número?”, “”);
// Aqui falta uma rotina de validação
var i;
for (i = 1; i <= 10; i++)
{
document.write(num + “ * " + i + “ = “ + num*i);
document.write("<br />");
}
for...in e for each...in
• estruturas de repetição para utilizar com objetos (arrays na maioria dos casos
encontrados em LabMM3)
• são rotinas que simplificam o acesso aos diferentes elementos de um
objeto;
• tudo o que permitem fazer também pode ser conseguido com um ciclo for
“normal”;
• voltaremos mais tarde a estas estruturas de repetição!
Estrutura de repetição: while
enquanto a condição for
verdadeira o ciclo continua

while ( condição )
{
// código a executar
}

a condição pode ser
qualquer expressão que
tenha como resultado um
valor booleano

o código a executar deve
conter alguma instrução que
possa ter impacto no valor
da condição
while: como funciona em fluxograma

1. Condição
de teste

true

2. bloco de código;

false
while: Exemplo (1)
•

Qual o resultado?

var i = 0;
while (i <= 5)
{
document.write("O número é " + i);
document.write("<br />");
}
while: Exemplo (2)
•

Qual o resultado?

var i = 0;
while (i <= 5)
{
document.write("O número é " + i);
document.write("<br />");
i++;
}
while: Exemplo (3)
•

Qual o resultado?

var i = 0;
while (i <= 5)
{
i++;
document.write("O número é " + i);
document.write("<br />");
}
Estrutura de repetição: do...while

do
{
// código a executar
}
while ( condição )

enquanto a condição for
verdadeira o ciclo continua

o código é sempre
executado pelo menos
uma vez
do..while: como funciona em fluxograma

1. bloco de código;

2. Condição
de teste

true

false
do...while: Exemplo (1)
•

Qual o resultado?

var i = 0;
do
{
document.write("O número é " + i);
document.write("<br />");
i++;
}
while (i <= 5);
do...while: Exemplo (2)
•

Qual o resultado?

var i = 0;
do
{
i++;
document.write("O número é " + i);
document.write("<br />");
}
while (i <= 5);
do...while: Exemplo (3)
•

Qual o resultado?

var userAge=””;
do
{
userAge = prompt(“Please enter your age”,””)
}
while (isNaN(userAge) == true);
do...while: Exemplo (4)
•

Qual o resultado?

var userAge=””;
do
{
userAge = prompt(“Please enter your age”,””)
}
while (isNaN(userAge));
ciclos dentro de ciclos (nested)
•

Qual o resultado?
var linha = 0, coluna = 0;
document.writeln("<table>");
for (linha=1; linha<=10; linha++)
{
document.writeln("<tr>");
for (coluna=1; coluna<=10; coluna++)
{
document.writeln("<td>"+linha*coluna+"</td>");
}
document.writeln("</tr>");

}
document.writeln("</table>");

Weitere ähnliche Inhalte

Was ist angesagt?

Recursividade em linguagem C
Recursividade em linguagem CRecursividade em linguagem C
Recursividade em linguagem C
Leonardo Lima
 
0000364 aula 5 estruturas de decisão
0000364 aula 5   estruturas de decisão0000364 aula 5   estruturas de decisão
0000364 aula 5 estruturas de decisão
EvelyneBorges
 
Introdução a linguagem c 2_97_2003
Introdução a linguagem c  2_97_2003Introdução a linguagem c  2_97_2003
Introdução a linguagem c 2_97_2003
Henoc Freire
 
Livro Código Limpo: Tratamento de Erros - Cap 7
Livro Código Limpo: Tratamento de Erros - Cap 7Livro Código Limpo: Tratamento de Erros - Cap 7
Livro Código Limpo: Tratamento de Erros - Cap 7
Inael Rodrigues
 
Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)
111111119
 

Was ist angesagt? (20)

Recursividade em linguagem C
Recursividade em linguagem CRecursividade em linguagem C
Recursividade em linguagem C
 
Aula python
Aula pythonAula python
Aula python
 
Python + algoritmo
Python + algoritmoPython + algoritmo
Python + algoritmo
 
0000364 aula 5 estruturas de decisão
0000364 aula 5   estruturas de decisão0000364 aula 5   estruturas de decisão
0000364 aula 5 estruturas de decisão
 
Groovy para javeiros - Migração Painless
Groovy para javeiros - Migração PainlessGroovy para javeiros - Migração Painless
Groovy para javeiros - Migração Painless
 
Migrando para PHP7 - Novidades
Migrando para PHP7 - NovidadesMigrando para PHP7 - Novidades
Migrando para PHP7 - Novidades
 
Java script2
Java script2Java script2
Java script2
 
Aula03 - JavaScript
Aula03 - JavaScriptAula03 - JavaScript
Aula03 - JavaScript
 
Bg, fg, jobs, nohup - controle de tarefas do shell
Bg, fg, jobs, nohup - controle de tarefas do shellBg, fg, jobs, nohup - controle de tarefas do shell
Bg, fg, jobs, nohup - controle de tarefas do shell
 
Aula02 - Lógica de Programação
Aula02 - Lógica de ProgramaçãoAula02 - Lógica de Programação
Aula02 - Lógica de Programação
 
Parte1c
Parte1cParte1c
Parte1c
 
Usando POP com Programação Funcional
Usando POP com Programação FuncionalUsando POP com Programação Funcional
Usando POP com Programação Funcional
 
Lógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoLógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetição
 
Introdução a linguagem c 2_97_2003
Introdução a linguagem c  2_97_2003Introdução a linguagem c  2_97_2003
Introdução a linguagem c 2_97_2003
 
Minicurso Node.js fullstack IFCE - 2015-11-28
Minicurso Node.js fullstack IFCE - 2015-11-28Minicurso Node.js fullstack IFCE - 2015-11-28
Minicurso Node.js fullstack IFCE - 2015-11-28
 
Livro Código Limpo: Tratamento de Erros - Cap 7
Livro Código Limpo: Tratamento de Erros - Cap 7Livro Código Limpo: Tratamento de Erros - Cap 7
Livro Código Limpo: Tratamento de Erros - Cap 7
 
Aula 9 - Introdução ao Python
Aula 9 - Introdução ao PythonAula 9 - Introdução ao Python
Aula 9 - Introdução ao Python
 
Debugging tips and tricks
Debugging tips and tricksDebugging tips and tricks
Debugging tips and tricks
 
Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)
 
Test-driven Development
Test-driven DevelopmentTest-driven Development
Test-driven Development
 

Andere mochten auch

Actividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de Guadarrama
Actividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de GuadarramaActividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de Guadarrama
Actividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de Guadarrama
Borja Sarasola
 
Cuidadodearboles 130918092134-phpapp02
Cuidadodearboles 130918092134-phpapp02Cuidadodearboles 130918092134-phpapp02
Cuidadodearboles 130918092134-phpapp02
camargo17
 
Power point organica inorganica greco
Power point organica inorganica grecoPower point organica inorganica greco
Power point organica inorganica greco
Regina Greco
 
Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...
Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...
Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...
NationalBurnsCentre2000
 
PROBLEMAS DE (DES)COMPOSICIÓN DE FUERZAS
PROBLEMAS DE (DES)COMPOSICIÓN DE FUERZASPROBLEMAS DE (DES)COMPOSICIÓN DE FUERZAS
PROBLEMAS DE (DES)COMPOSICIÓN DE FUERZAS
Álvaro Pascual Sanz
 

Andere mochten auch (20)

m y s
m y sm y s
m y s
 
Resume
ResumeResume
Resume
 
Криоаппарат для хирургии
Криоаппарат для хирургииКриоаппарат для хирургии
Криоаппарат для хирургии
 
Actividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de Guadarrama
Actividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de GuadarramaActividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de Guadarrama
Actividades OTOÑO 2013 en los centros de visitantes del P.N Sierra de Guadarrama
 
Cuidadodearboles 130918092134-phpapp02
Cuidadodearboles 130918092134-phpapp02Cuidadodearboles 130918092134-phpapp02
Cuidadodearboles 130918092134-phpapp02
 
Power point organica inorganica greco
Power point organica inorganica grecoPower point organica inorganica greco
Power point organica inorganica greco
 
컬러배스
컬러배스컬러배스
컬러배스
 
power point 150
power point 150power point 150
power point 150
 
Behavior Models
Behavior ModelsBehavior Models
Behavior Models
 
Brands 2012 2013 portfolio
Brands 2012 2013 portfolioBrands 2012 2013 portfolio
Brands 2012 2013 portfolio
 
Ensayo sobre influencia de la tecnologia
Ensayo sobre influencia de la tecnologiaEnsayo sobre influencia de la tecnologia
Ensayo sobre influencia de la tecnologia
 
La hipertrigliceridemia como factor de riesgo cardiometabólico en el Mexicano...
La hipertrigliceridemia como factor de riesgo cardiometabólico en el Mexicano...La hipertrigliceridemia como factor de riesgo cardiometabólico en el Mexicano...
La hipertrigliceridemia como factor de riesgo cardiometabólico en el Mexicano...
 
Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...
Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...
Burns- chemical and pediatric by Dr. Sunil Keswani, National Burns Centre, Ai...
 
Трудности фасилитации - разбор проблемных кейсов
Трудности фасилитации - разбор проблемных кейсовТрудности фасилитации - разбор проблемных кейсов
Трудности фасилитации - разбор проблемных кейсов
 
Construindo APIs Mobile
Construindo APIs MobileConstruindo APIs Mobile
Construindo APIs Mobile
 
PROBLEMAS DE (DES)COMPOSICIÓN DE FUERZAS
PROBLEMAS DE (DES)COMPOSICIÓN DE FUERZASPROBLEMAS DE (DES)COMPOSICIÓN DE FUERZAS
PROBLEMAS DE (DES)COMPOSICIÓN DE FUERZAS
 
Testate On Line
Testate On LineTestate On Line
Testate On Line
 
Equipo de Trabajo de Alto Rendimiento
Equipo de Trabajo de Alto RendimientoEquipo de Trabajo de Alto Rendimiento
Equipo de Trabajo de Alto Rendimiento
 
Salary tax return 2015 presentation
Salary tax return 2015 presentationSalary tax return 2015 presentation
Salary tax return 2015 presentation
 
PROBLEMAS DE LA LEY DE HOOKE
PROBLEMAS DE LA LEY DE HOOKEPROBLEMAS DE LA LEY DE HOOKE
PROBLEMAS DE LA LEY DE HOOKE
 

Ähnlich wie T08_T09_LM3: Estruturas de repetição (2013-2014)

GraphQL e APIs: como manter a qualidade?
GraphQL e APIs: como manter a qualidade?GraphQL e APIs: como manter a qualidade?
GraphQL e APIs: como manter a qualidade?
Qaladies
 
Curso lógica de programação
Curso   lógica de programaçãoCurso   lógica de programação
Curso lógica de programação
Paulo Batista
 
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdfMicrofundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
FelipeSoares580387
 
(A06) LabMM3 - JavaScript
(A06) LabMM3 - JavaScript(A06) LabMM3 - JavaScript
(A06) LabMM3 - JavaScript
Carlos Santos
 
T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)
Carlos Santos
 
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
 
Introdução ao JS1.pptx
Introdução ao JS1.pptxIntrodução ao JS1.pptx
Introdução ao JS1.pptx
LuanDev1
 

Ähnlich wie T08_T09_LM3: Estruturas de repetição (2013-2014) (20)

GraphQL e APIs: como manter a qualidade?
GraphQL e APIs: como manter a qualidade?GraphQL e APIs: como manter a qualidade?
GraphQL e APIs: como manter a qualidade?
 
Testing sucks
Testing sucksTesting sucks
Testing sucks
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScript
 
TDC 2014 POA - Clean Code para Testers
TDC 2014 POA - Clean Code para TestersTDC 2014 POA - Clean Code para Testers
TDC 2014 POA - Clean Code para Testers
 
Curso lógica de programação
Curso   lógica de programaçãoCurso   lógica de programação
Curso lógica de programação
 
TDC2013 Otimizando-C
TDC2013 Otimizando-CTDC2013 Otimizando-C
TDC2013 Otimizando-C
 
Aula3
Aula3Aula3
Aula3
 
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdfMicrofundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
Java script aula 02 - operadores
Java script   aula 02 - operadoresJava script   aula 02 - operadores
Java script aula 02 - operadores
 
PHPUnit e teste de software
PHPUnit e teste de softwarePHPUnit e teste de software
PHPUnit e teste de software
 
Aula2
Aula2Aula2
Aula2
 
Programação Orientada a Testes
Programação Orientada a TestesProgramação Orientada a Testes
Programação Orientada a Testes
 
(A06) LabMM3 - JavaScript
(A06) LabMM3 - JavaScript(A06) LabMM3 - JavaScript
(A06) LabMM3 - JavaScript
 
T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)
 
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
 
Introdução ao JS1.pptx
Introdução ao JS1.pptxIntrodução ao JS1.pptx
Introdução ao JS1.pptx
 
Aula 1 | Introdução a C++
Aula 1 | Introdução a C++Aula 1 | Introdução a C++
Aula 1 | Introdução a C++
 
Testes com python: como fazer uma refatoração segura
Testes com python: como fazer uma refatoração seguraTestes com python: como fazer uma refatoração segura
Testes com python: como fazer uma refatoração segura
 
Modulo02
Modulo02Modulo02
Modulo02
 

Mehr von Carlos Santos

AVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosAVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunos
Carlos Santos
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativo
Carlos Santos
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e Scoreoid
Carlos Santos
 
T19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoT19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificação
Carlos Santos
 
T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)
Carlos Santos
 

Mehr von Carlos Santos (20)

Is AI the Spice of our future?
Is AI the Spice of our future?Is AI the Spice of our future?
Is AI the Spice of our future?
 
Mentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantesMentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantes
 
1º Encontro Científico TCEdu
1º Encontro Científico TCEdu1º Encontro Científico TCEdu
1º Encontro Científico TCEdu
 
Tecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicialTecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicial
 
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunosAVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
 
AVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosAVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunos
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
 
Tecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho práticoTecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho prático
 
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
SAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentSAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning Environment
 
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusRepensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
 
A technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectA technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus project
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativo
 
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCARepensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e Scoreoid
 
T19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoT19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificação
 
T18_LM3: Ajax
T18_LM3: AjaxT18_LM3: Ajax
T18_LM3: Ajax
 
T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)
 

Kürzlich hochgeladen

Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
azulassessoria9
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
rfmbrandao
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
azulassessoria9
 

Kürzlich hochgeladen (20)

Caderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfCaderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdf
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
 
tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptx
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdf
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LP
 
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfMESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
 

T08_T09_LM3: Estruturas de repetição (2013-2014)

  • 1. JavaScript: Sempre a repetir o mesmo? :-/ Carlos Santos LabMM 3 - NTC - DeCA - UA Aula 08 e 09, 11-10-2013 e 16-10-2013
  • 3. Como repetir? • 2 tipos de estruturas de repetição: • for • repetição baseada num número de vezes pré-determinado • while • repetição até que uma determinada condição seja verdadeira
  • 4. Estrutura de repetição: for inicialização da variável de ciclo condição de teste do ciclo incremento da variável de ciclo for ( cont = valorInicial; cont <= valorFinal; cont++) { // código a executar }
  • 5. Estrutura de repetição: for a variável contadora já foi declarada anteriormente? var cont; for ( cont = valorInicial; cont <= valorFinal; cont++) { // código a executar } for (var cont = valorInicial; cont <= valorFinal; cont++) { // código a executar }
  • 6. Observações [idiotas?] • A variável contadora do ciclo pode ter um nome qualquer • “cont” é só um exemplo! • O incremento da variável contadora pode ser realizado com base em qualquer valor inteiro (positivo ou negativo) • ++ é um valor muito utilizado... mas apenas isso! • O valor da variável contadora não deve ser alterado dentro do bloco de instruções • é possível... mas é bom saber muito bem o que se está a fazer :)
  • 7. for: como funciona? 1. Executar a parte de inicialização do ciclo. 2. Verificar a condição de teste. i. Se verdadeira, continuar; ii. Se não, terminar o ciclo. 3. Executar o código existente no bloco de instruções. 4. Executar a parte de incremento do ciclo. 5. Repetir os passos 2 a 4, até a condição de teste ser falsa.
  • 8. for: como funciona em fluxograma 1. inicialização ciclo; 5... 4. incremento de variável de ciclo; 2. Condição de teste true 3. bloco de código; false
  • 9. for: Exemplo (1) • Qual o resultado? var i; for (i = 0; i <= 5; i++) { document.write("O número é " + i); document.write("<br />"); }
  • 10. for: Exemplo (2) • Qual o resultado? var x = 0; for (x = 10; x >= 0; x = x - 2) { document.write("O número é " + x); document.write("<br />"); }
  • 11. for: Exemplo (3) • Qual o resultado? var num = prompt(“Número?”, “”); // Aqui falta uma rotina de validação var i; for (i = 1; i <= 10; i++) { document.write(num + “ * " + i + “ = “ + num*i); document.write("<br />"); }
  • 12. for...in e for each...in • estruturas de repetição para utilizar com objetos (arrays na maioria dos casos encontrados em LabMM3) • são rotinas que simplificam o acesso aos diferentes elementos de um objeto; • tudo o que permitem fazer também pode ser conseguido com um ciclo for “normal”; • voltaremos mais tarde a estas estruturas de repetição!
  • 13. Estrutura de repetição: while enquanto a condição for verdadeira o ciclo continua while ( condição ) { // código a executar } a condição pode ser qualquer expressão que tenha como resultado um valor booleano o código a executar deve conter alguma instrução que possa ter impacto no valor da condição
  • 14. while: como funciona em fluxograma 1. Condição de teste true 2. bloco de código; false
  • 15. while: Exemplo (1) • Qual o resultado? var i = 0; while (i <= 5) { document.write("O número é " + i); document.write("<br />"); }
  • 16. while: Exemplo (2) • Qual o resultado? var i = 0; while (i <= 5) { document.write("O número é " + i); document.write("<br />"); i++; }
  • 17. while: Exemplo (3) • Qual o resultado? var i = 0; while (i <= 5) { i++; document.write("O número é " + i); document.write("<br />"); }
  • 18. Estrutura de repetição: do...while do { // código a executar } while ( condição ) enquanto a condição for verdadeira o ciclo continua o código é sempre executado pelo menos uma vez
  • 19. do..while: como funciona em fluxograma 1. bloco de código; 2. Condição de teste true false
  • 20. do...while: Exemplo (1) • Qual o resultado? var i = 0; do { document.write("O número é " + i); document.write("<br />"); i++; } while (i <= 5);
  • 21. do...while: Exemplo (2) • Qual o resultado? var i = 0; do { i++; document.write("O número é " + i); document.write("<br />"); } while (i <= 5);
  • 22. do...while: Exemplo (3) • Qual o resultado? var userAge=””; do { userAge = prompt(“Please enter your age”,””) } while (isNaN(userAge) == true);
  • 23. do...while: Exemplo (4) • Qual o resultado? var userAge=””; do { userAge = prompt(“Please enter your age”,””) } while (isNaN(userAge));
  • 24. ciclos dentro de ciclos (nested) • Qual o resultado? var linha = 0, coluna = 0; document.writeln("<table>"); for (linha=1; linha<=10; linha++) { document.writeln("<tr>"); for (coluna=1; coluna<=10; coluna++) { document.writeln("<td>"+linha*coluna+"</td>"); } document.writeln("</tr>"); } document.writeln("</table>");