SlideShare uma empresa Scribd logo
Introdução à algoritmia
Carlos Santos
LabMM 3 - NTC - DeCA - UA
Aula 03, 19-09-2012
Problema 1

• Construir um algoritmo para trocar os objetos entre as duas mãos.
Problema 1 - regras

• Construir um algoritmo para trocar os objetos entre as duas mãos.

  • Regra 1: Em qualquer momento, uma mão só pode segurar um objeto;

  • Regra 2: Um objeto tem de estar sempre em contacto com uma mão.
Problema 1 - solução
Problema 1 - solução - algoritmo

 INÍCIO

   colocar bolaAzul na mãoA;

   colocar bolaLaranja na mãoB;

   trocar bola na mãoA para a mãoC;

   trocar bola na mãoB para a mãoA;

   trocar bola na mãoC para a mãoB;

   libertar mãoC;

 FIM
Um programa...

• ... serve para processar informação!

   • para a informação ser processada ela tem que ser armazenada no
     computador.

   • numa linguagem de programação, são as variáveis que permitem
     armazenar informação.

      • uma variável simples apenas pode conter um elemento de informação;

      • o tipo de informação armazenada numa variável influencia as
        operações na qual esta pode ser utilizada;

      • o limite do número de variáveis é essencialmente determinado pela
        espaço de armazenamento disponível no computador.

   • num computador é a RAM e os registos do processador que permitem
     armazenar informação para ser processada.
Problema 1 - solução - programa

 INÍCIO

   var a = “Azul”;

   var b = “Laranja”;

   var c = a;

   a = b;

   b = c;

 FIM
Problema 1 - programa - como funciona?

 INÍCIO

   var a = “Azul”;

   var b = “Laranja”;

   var c = a;
                                                 RAM
   a = b;

   b = c;

 FIM



            vamos ver no quadro o funcionamento passo-a-passo!
Problema 1 - programa - como funciona?

 INÍCIO
                                             a “Laranja”
   var a = “Azul”;                           b “Azul”
                                             c “Azul”
   var b = “Laranja”;

   var c = a;

   a = b;

   b = c;

 FIM



       resultado final em RAM de acordo com a simulação realizada na aula
Curiosidade

• um simulador online de execução de código em Python

  • http://www.pythontutor.com/visualize.html
Variáveis: espaço em memória

• Qual o espaço ocupado por uma variável para armazenar o texto “Azul”?

  • Qual o espaço ocupado para armazenar um carácter?

     • a resposta está na tabela ASCII (http://www.asciitable.com/)
Tabelas ASCII




0..255 = 256 valores
256 = 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 28
   2 corresponde à base binária: 0 ou 1 (1 bit)
   8 é o número de símbolos
8 bits = 1 Byte por elemento ASCII
Variáveis: espaço em memória

• Qual o espaço mínimo ocupado por uma variável para armazenar o texto
  “Azul”?




              “A”         “z”        “u”          “l”

               65        122         119          108         (4 Bytes)



          01000001     01111010    01110101     01101100       (32 bits)
Problema 2

• Escrever um algoritmo que leia três números inteiros e apresente o maior dos
  valores introduzidos.
Problema 2 - questões?

• Escrever um algoritmo que leia três números inteiros e apresente o maior dos
  valores introduzidos.

  • quantas variáveis são necessárias?

  • como determinar o maior de 3 números inteiros?
Problema 2 - algoritmo

 INÍCIO

   ler dados de entrada;

   determinar o maior valor;

   escrever resultado final;

 FIM
Problema 2 - algoritmo

 INÍCIO

   ler dados de entrada (num1, num2, num3);

   determinar o maior valor (num1, num2, num3, maior);

   escrever resultado final (maior);

 FIM
Problema 2 - algoritmo

 INÍCIO
   ler (num1);
   ler (num2);
   ler (num3);
   maior = num1;
   SE num2 > maior ENTÃO
     maior = num2;
   FIM SE
   SE num3 > maior ENTÃO
     maior = num3;
   FIM SE
   escrever (maior);
 FIM
Problema 2 - programa

 INÍCIO
   var num1 = lerValor();
   var num2 = lerValor();
   var num3 = lerValor();
   var maior = num1;
   SE num2 > maior ENTÃO
     maior = num2;
                                              RAM
   FIM SE
   SE num3 > maior ENTÃO
     maior = num3;
   FIM SE
   escrever (maior);
 FIM

         vamos ver no quadro o funcionamento passo-a-passo!
Problema 2 - outras soluções?

• Será possível encontrar uma solução que só utilize duas variáveis simples?

  • Se sim, apresentar solução no grupo do SAPO Campus;

     • Instruções vão ser enviadas muito brevemente pelo moodle!

  • Identificar vantagens e desvantagens dessa possível solução.
Próxima aula

• Javascript!

   • para que serve?

   • como ler?

   • como armazenar informação?

   • como escrever?

   • ...

Mais conteúdo relacionado

Mais procurados

Lógica de Programação - Unimep/Pronatec - Aula03
Lógica de Programação - Unimep/Pronatec - Aula03Lógica de Programação - Unimep/Pronatec - Aula03
Lógica de Programação - Unimep/Pronatec - Aula03
André Phillip Bertoletti
 
02 while
02 while02 while
02 while
Leandro Barbosa
 
Lógica de Programação - Unimep/Pronatec - Aula04
Lógica de Programação - Unimep/Pronatec - Aula04Lógica de Programação - Unimep/Pronatec - Aula04
Lógica de Programação - Unimep/Pronatec - Aula04
André Phillip Bertoletti
 
Maratona de Programação
Maratona de ProgramaçãoMaratona de Programação
Maratona de Programação
Marcos Castro
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06
André Phillip Bertoletti
 
Curso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalCurso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem Pascal
José Araújo
 
Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10
André Phillip Bertoletti
 
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
 
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Alex Camargo
 
Python + algoritmo
Python + algoritmoPython + algoritmo
Python + algoritmo
Felipe Marcel
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introdução
Robson Ferreira
 
Alg aula 01 - introdução tp1
Alg   aula 01 - introdução tp1Alg   aula 01 - introdução tp1
Alg aula 01 - introdução tp1
Thalles Anderson
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
Jocelma Rios
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
Aislan Rafael
 
Ip 01 logica
Ip 01 logicaIp 01 logica
Ip 01 logica
Eliane Corso
 
Algoritmo Introdução
Algoritmo   IntroduçãoAlgoritmo   Introdução
Algoritmo Introdução
André Nobre
 
scilab aula 05
scilab  aula 05scilab  aula 05
scilab aula 05
Tomás Ribeiro
 
Aula python
Aula pythonAula python
aula 06 - Logica de programacao
aula 06 - Logica de programacaoaula 06 - Logica de programacao
aula 06 - Logica de programacao
Aislan Rafael
 
ESTRUTURA DE DADOS (JAVA) AULA 05
ESTRUTURA DE DADOS (JAVA) AULA 05ESTRUTURA DE DADOS (JAVA) AULA 05
ESTRUTURA DE DADOS (JAVA) AULA 05
ETEC Monsenhor Antonio Magliano
 

Mais procurados (20)

Lógica de Programação - Unimep/Pronatec - Aula03
Lógica de Programação - Unimep/Pronatec - Aula03Lógica de Programação - Unimep/Pronatec - Aula03
Lógica de Programação - Unimep/Pronatec - Aula03
 
02 while
02 while02 while
02 while
 
Lógica de Programação - Unimep/Pronatec - Aula04
Lógica de Programação - Unimep/Pronatec - Aula04Lógica de Programação - Unimep/Pronatec - Aula04
Lógica de Programação - Unimep/Pronatec - Aula04
 
Maratona de Programação
Maratona de ProgramaçãoMaratona de Programação
Maratona de Programação
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06
 
Curso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalCurso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem Pascal
 
Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10
 
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)
 
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
 
Python + algoritmo
Python + algoritmoPython + algoritmo
Python + algoritmo
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introdução
 
Alg aula 01 - introdução tp1
Alg   aula 01 - introdução tp1Alg   aula 01 - introdução tp1
Alg aula 01 - introdução tp1
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Ip 01 logica
Ip 01 logicaIp 01 logica
Ip 01 logica
 
Algoritmo Introdução
Algoritmo   IntroduçãoAlgoritmo   Introdução
Algoritmo Introdução
 
scilab aula 05
scilab  aula 05scilab  aula 05
scilab aula 05
 
Aula python
Aula pythonAula python
Aula python
 
aula 06 - Logica de programacao
aula 06 - Logica de programacaoaula 06 - Logica de programacao
aula 06 - Logica de programacao
 
ESTRUTURA DE DADOS (JAVA) AULA 05
ESTRUTURA DE DADOS (JAVA) AULA 05ESTRUTURA DE DADOS (JAVA) AULA 05
ESTRUTURA DE DADOS (JAVA) AULA 05
 

Semelhante a (A03) LabMM3 - Introdução à programação

Algoritmos
AlgoritmosAlgoritmos
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
Robson Ferreira
 
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Algoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas PúblicasAlgoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas Públicas
Nathalia Sautchuk Patricio
 
Lógica de programação e algoritmos
Lógica de programação e algoritmosLógica de programação e algoritmos
Lógica de programação e algoritmos
Alisson Meneses Batista
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
Daniel Arndt Alves
 
4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx
Patrícia Melo
 
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOSAULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
profjotamarcosduarte
 
Introdução a programação
Introdução a programaçãoIntrodução a programação
Introdução a programação
Edu Queiroz
 
Aula 01 introdução a linguagem pascal
Aula 01   introdução a linguagem pascalAula 01   introdução a linguagem pascal
Aula 01 introdução a linguagem pascal
Tácito Graça
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
angelicamenegassi
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
angelicamenegassi
 
Apresentacao log
Apresentacao logApresentacao log
Apresentacao log
pedrohfsd
 
Algoritmos
AlgoritmosAlgoritmos
aula_01_tec_programacao_python_programacao.pdf
aula_01_tec_programacao_python_programacao.pdfaula_01_tec_programacao_python_programacao.pdf
aula_01_tec_programacao_python_programacao.pdf
andersonsoares275191
 
oficina de robótica educativa plano de curso
oficina de robótica educativa plano de cursooficina de robótica educativa plano de curso
oficina de robótica educativa plano de curso
Rodrigo Moraes Barbosa
 
Fórum respostas
Fórum  respostasFórum  respostas
Fórum respostas
Fernando A A Morais
 
Linguagem c wellington telles - aula 01
Linguagem c   wellington telles - aula 01Linguagem c   wellington telles - aula 01
Linguagem c wellington telles - aula 01
profwtelles
 
Test-driven Development
Test-driven DevelopmentTest-driven Development
Test-driven Development
Denis L Presciliano
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
Weldir Fernando Dias
 

Semelhante a (A03) LabMM3 - Introdução à programação (20)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
 
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Analise Algoritmos
 
Algoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas PúblicasAlgoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas Públicas
 
Lógica de programação e algoritmos
Lógica de programação e algoritmosLógica de programação e algoritmos
Lógica de programação e algoritmos
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx4-Introducao programacao-convertido.pptx
4-Introducao programacao-convertido.pptx
 
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOSAULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
 
Introdução a programação
Introdução a programaçãoIntrodução a programação
Introdução a programação
 
Aula 01 introdução a linguagem pascal
Aula 01   introdução a linguagem pascalAula 01   introdução a linguagem pascal
Aula 01 introdução a linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Apresentacao log
Apresentacao logApresentacao log
Apresentacao log
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
aula_01_tec_programacao_python_programacao.pdf
aula_01_tec_programacao_python_programacao.pdfaula_01_tec_programacao_python_programacao.pdf
aula_01_tec_programacao_python_programacao.pdf
 
oficina de robótica educativa plano de curso
oficina de robótica educativa plano de cursooficina de robótica educativa plano de curso
oficina de robótica educativa plano de curso
 
Fórum respostas
Fórum  respostasFórum  respostas
Fórum respostas
 
Linguagem c wellington telles - aula 01
Linguagem c   wellington telles - aula 01Linguagem c   wellington telles - aula 01
Linguagem c wellington telles - aula 01
 
Test-driven Development
Test-driven DevelopmentTest-driven Development
Test-driven Development
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 

Mais de Carlos Santos

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?
Carlos Santos
 
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
Carlos Santos
 
1º Encontro Científico TCEdu
1º Encontro Científico TCEdu1º Encontro Científico TCEdu
1º Encontro Científico TCEdu
Carlos Santos
 
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
Carlos Santos
 
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
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
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
Carlos Santos
 
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...
Carlos Santos
 
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
Carlos Santos
 
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)
Carlos Santos
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
Carlos Santos
 
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
Carlos Santos
 
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
Carlos Santos
 
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
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
 
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
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
 
T18_LM3: Ajax
T18_LM3: AjaxT18_LM3: Ajax
T18_LM3: Ajax
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
 

Mais de 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)
 

Último

karl marx biografia resumida com suas obras e história de vida
karl marx biografia resumida com suas obras e história de vidakarl marx biografia resumida com suas obras e história de vida
karl marx biografia resumida com suas obras e história de vida
KleginaldoPaz2
 
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdfUFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
Manuais Formação
 
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
JoanaFigueira11
 
-Rudolf-Laban-e-a-teoria-do-movimento.ppt
-Rudolf-Laban-e-a-teoria-do-movimento.ppt-Rudolf-Laban-e-a-teoria-do-movimento.ppt
-Rudolf-Laban-e-a-teoria-do-movimento.ppt
fagnerlopes11
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
Manuais Formação
 
Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
Professor Belinaso
 
A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...
ANDRÉA FERREIRA
 
Educação trabalho HQ em sala de aula uma excelente ideia
Educação  trabalho HQ em sala de aula uma excelente  ideiaEducação  trabalho HQ em sala de aula uma excelente  ideia
Educação trabalho HQ em sala de aula uma excelente ideia
joseanesouza36
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
MarcosPaulo777883
 
Slide de biologia aula2 2 bimestre no ano de 2024
Slide de biologia aula2  2 bimestre no ano de 2024Slide de biologia aula2  2 bimestre no ano de 2024
Slide de biologia aula2 2 bimestre no ano de 2024
vinibolado86
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
lveiga112
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
mamaeieby
 
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdfO Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
silvamelosilva300
 
Reino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptxReino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptx
CarinaSantos916505
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
HisrelBlog
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
DECIOMAURINARAMOS
 
Aula Contrato Individual de Trabalho .pdf
Aula Contrato Individual de Trabalho .pdfAula Contrato Individual de Trabalho .pdf
Aula Contrato Individual de Trabalho .pdf
Pedro Luis Moraes
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
Manuais Formação
 
Atividade letra da música - Espalhe Amor, Anavitória.
Atividade letra da música - Espalhe  Amor, Anavitória.Atividade letra da música - Espalhe  Amor, Anavitória.
Atividade letra da música - Espalhe Amor, Anavitória.
Mary Alvarenga
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
TomasSousa7
 

Último (20)

karl marx biografia resumida com suas obras e história de vida
karl marx biografia resumida com suas obras e história de vidakarl marx biografia resumida com suas obras e história de vida
karl marx biografia resumida com suas obras e história de vida
 
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdfUFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
 
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
497417426-conheca-os-principais-graficos-da-radiestesia-e-da-radionica.pdf
 
-Rudolf-Laban-e-a-teoria-do-movimento.ppt
-Rudolf-Laban-e-a-teoria-do-movimento.ppt-Rudolf-Laban-e-a-teoria-do-movimento.ppt
-Rudolf-Laban-e-a-teoria-do-movimento.ppt
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
 
Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
 
A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...
 
Educação trabalho HQ em sala de aula uma excelente ideia
Educação  trabalho HQ em sala de aula uma excelente  ideiaEducação  trabalho HQ em sala de aula uma excelente  ideia
Educação trabalho HQ em sala de aula uma excelente ideia
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
 
Slide de biologia aula2 2 bimestre no ano de 2024
Slide de biologia aula2  2 bimestre no ano de 2024Slide de biologia aula2  2 bimestre no ano de 2024
Slide de biologia aula2 2 bimestre no ano de 2024
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
 
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdfO Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
 
Reino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptxReino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptx
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
 
Aula Contrato Individual de Trabalho .pdf
Aula Contrato Individual de Trabalho .pdfAula Contrato Individual de Trabalho .pdf
Aula Contrato Individual de Trabalho .pdf
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
 
Atividade letra da música - Espalhe Amor, Anavitória.
Atividade letra da música - Espalhe  Amor, Anavitória.Atividade letra da música - Espalhe  Amor, Anavitória.
Atividade letra da música - Espalhe Amor, Anavitória.
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
 

(A03) LabMM3 - Introdução à programação

  • 1. Introdução à algoritmia Carlos Santos LabMM 3 - NTC - DeCA - UA Aula 03, 19-09-2012
  • 2. Problema 1 • Construir um algoritmo para trocar os objetos entre as duas mãos.
  • 3. Problema 1 - regras • Construir um algoritmo para trocar os objetos entre as duas mãos. • Regra 1: Em qualquer momento, uma mão só pode segurar um objeto; • Regra 2: Um objeto tem de estar sempre em contacto com uma mão.
  • 4. Problema 1 - solução
  • 5. Problema 1 - solução - algoritmo INÍCIO colocar bolaAzul na mãoA; colocar bolaLaranja na mãoB; trocar bola na mãoA para a mãoC; trocar bola na mãoB para a mãoA; trocar bola na mãoC para a mãoB; libertar mãoC; FIM
  • 6. Um programa... • ... serve para processar informação! • para a informação ser processada ela tem que ser armazenada no computador. • numa linguagem de programação, são as variáveis que permitem armazenar informação. • uma variável simples apenas pode conter um elemento de informação; • o tipo de informação armazenada numa variável influencia as operações na qual esta pode ser utilizada; • o limite do número de variáveis é essencialmente determinado pela espaço de armazenamento disponível no computador. • num computador é a RAM e os registos do processador que permitem armazenar informação para ser processada.
  • 7. Problema 1 - solução - programa INÍCIO var a = “Azul”; var b = “Laranja”; var c = a; a = b; b = c; FIM
  • 8. Problema 1 - programa - como funciona? INÍCIO var a = “Azul”; var b = “Laranja”; var c = a; RAM a = b; b = c; FIM vamos ver no quadro o funcionamento passo-a-passo!
  • 9. Problema 1 - programa - como funciona? INÍCIO a “Laranja” var a = “Azul”; b “Azul” c “Azul” var b = “Laranja”; var c = a; a = b; b = c; FIM resultado final em RAM de acordo com a simulação realizada na aula
  • 10. Curiosidade • um simulador online de execução de código em Python • http://www.pythontutor.com/visualize.html
  • 11. Variáveis: espaço em memória • Qual o espaço ocupado por uma variável para armazenar o texto “Azul”? • Qual o espaço ocupado para armazenar um carácter? • a resposta está na tabela ASCII (http://www.asciitable.com/)
  • 12. Tabelas ASCII 0..255 = 256 valores 256 = 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 28 2 corresponde à base binária: 0 ou 1 (1 bit) 8 é o número de símbolos 8 bits = 1 Byte por elemento ASCII
  • 13. Variáveis: espaço em memória • Qual o espaço mínimo ocupado por uma variável para armazenar o texto “Azul”? “A” “z” “u” “l” 65 122 119 108 (4 Bytes) 01000001 01111010 01110101 01101100 (32 bits)
  • 14. Problema 2 • Escrever um algoritmo que leia três números inteiros e apresente o maior dos valores introduzidos.
  • 15. Problema 2 - questões? • Escrever um algoritmo que leia três números inteiros e apresente o maior dos valores introduzidos. • quantas variáveis são necessárias? • como determinar o maior de 3 números inteiros?
  • 16. Problema 2 - algoritmo INÍCIO ler dados de entrada; determinar o maior valor; escrever resultado final; FIM
  • 17. Problema 2 - algoritmo INÍCIO ler dados de entrada (num1, num2, num3); determinar o maior valor (num1, num2, num3, maior); escrever resultado final (maior); FIM
  • 18. Problema 2 - algoritmo INÍCIO ler (num1); ler (num2); ler (num3); maior = num1; SE num2 > maior ENTÃO maior = num2; FIM SE SE num3 > maior ENTÃO maior = num3; FIM SE escrever (maior); FIM
  • 19. Problema 2 - programa INÍCIO var num1 = lerValor(); var num2 = lerValor(); var num3 = lerValor(); var maior = num1; SE num2 > maior ENTÃO maior = num2; RAM FIM SE SE num3 > maior ENTÃO maior = num3; FIM SE escrever (maior); FIM vamos ver no quadro o funcionamento passo-a-passo!
  • 20. Problema 2 - outras soluções? • Será possível encontrar uma solução que só utilize duas variáveis simples? • Se sim, apresentar solução no grupo do SAPO Campus; • Instruções vão ser enviadas muito brevemente pelo moodle! • Identificar vantagens e desvantagens dessa possível solução.
  • 21. Próxima aula • Javascript! • para que serve? • como ler? • como armazenar informação? • como escrever? • ...