SlideShare uma empresa Scribd logo
1 de 60
Baixar para ler offline
Introdução ao pensamento
computacional e aos algoritmos
Sérgio Souza Costa
Os slides a seguir foram adaptados partir do material do professor Alex Barradas.
Roteiro
- O que são computadores?
- Pensamento Computacional
- Algoritmos
Computador:
Exemplos:
Cálculos, relatórios,
Entretenimento,
Comunicação,
Qualificação ,
Compras ....
O que são computadores?
- Definição: Um computador é uma máquina capaz de sistematicamente coletar,
manipular e fornecer os resultados da manipulação de informações para um ou
mais objetivos. (MONTEIRO, 2001)
Atualmente presente em diversos dispositivos e formas.
O que são computadores?
Atualmente presente em diversos dispositivos e formas.
Conceitos - computador
REFLEXÃO: Como serão
os computadores daqui
30 anos ? em 2051 ?
Pense bem pois
esperamos estar aqui,
vivendo e trabalhando :)
Pensamento computacional
Definição:
O conjunto de habilidades intelectuais e de raciocínio que
indicam como as pessoas interagem e aprendem a pensar
por meio da linguagem computacional. (WING, 2006)
JEANNETTE M. WING
Professor at Carnegie Mellon University / Vice president at Microsoft Research
About:
Link: http://www.cs.cmu.edu/~wing/
Journals:
Computational thinking
Link: https://www.cs.cmu.edu/~15110-s13/Wing06-ct.pdf
Computational Thinking and Thinking About Computing
Link: http://www.cs.cmu.edu/~wing/publications/Wing08a.pdf
Pensamento computacional
Definição:
O conjunto de habilidades intelectuais e de raciocínio que
indicam como as pessoas interagem e aprendem a pensar
por meio da linguagem computacional. (WING, 2006)
JEANNETTE M. WING
Professor at Carnegie Mellon University / Vice president at Microsoft Research
About:
Link: http://www.cs.cmu.edu/~wing/
Journals:
Computational thinking
Link: https://www.cs.cmu.edu/~15110-s13/Wing06-ct.pdf
Computational Thinking and Thinking About Computing
Link: http://www.cs.cmu.edu/~wing/publications/Wing08a.pdf
Não confundam
pensamento
computacional com
ciências da computação.
Enquanto o primento é
uma maneira de abordar
um problema, o outro é o
estudo da computação em
todos os seus elementos.
Pensamento Computacional e o code.org
Pensamento Computacional e o code.org
Para conhecer melhor essa
iniciativa, pause o video e
acesse o video de
lançamento em 2013:
https://www.youtube.com/w
atch?v=nKIu9yen5nc
Pensamento Computacional e o code.org
Não deixem de visitar
https://code.org/ e
“brincar” um pouco.
Importante para o
aprendizado e para
conhecer uma possível
ferramenta que
poderão utilizar
Para conhecer melhor essa
iniciativa, pause o video e
acesse o video de
lançamento em 2013:
https://www.youtube.com/w
atch?v=nKIu9yen5nc
Pensamento Computacional no Brasil
Em muitas escolas particulares, os
alunos tem disciplina de pensamento
computacional desde a alfabetização.
Alguns professores tem levado esse
conhecimento para escolas públicas
através de projetos de extensão.
http://www.computacional.com.br/
Pensamento computacional
Elementos do pensamento
computacional:
- Decomposição
- Reconhecimento de padrões
- Abstração
- Algoritmos
Pensamento computacional
Elementos do pensamento
computacional:
- Decomposição
- Reconhecimento de padrões
- Abstração
- Algoritmos
Pensamento computacional
Decomposição:
Trata-se de quebrar um problema complexo;
Sistemas são dividos em partes menores;
Facilitar a compreensão.
- Nota: As peças pequenas podem ser, em seguida, examinadas e resolvidas, ou
concebidas individualmente, uma vez que são mais fáceis de trabalhar.
Pensamento computacional
Decomposição em prática (resolver um crime):
O crime foi cometido?
Quando o crime foi cometido?
Onde o crime foi cometido?
Existem provas?
Testemunhas?
Crimes semelhantes?
Pensamento computacional
Elementos do pensamento
computacional:
- Decomposição
- Reconhecimento de padrões
- Abstração
- Algoritmos
Pensamento computacional
Reconhecimento de padrões:
Observar tendências;
Regularidades nos dados.
Pelos padrões que conseguimos automatizar as operações.
Pensamento computacional
Elementos do pensamento
computacional:
- Decomposição
- Reconhecimento de padrões
- Abstração
- Algoritmos
Pensamento computacional
Abstração:
Trata-se de filtrar;
Identificar os princípios gerais.
Abstração: permite criar uma ideia geral do que é o problema e como resolvê-lo
(modelo). O processe remove todos os detalhes e padrões que não irão nos ajudar
a resolver o problema.
Um algoritmo é uma abstração de um procedimento passo a passo para obter
entrada e produzir alguma saída desejada (Wing, 2008)
Pensamento computacional
O funcionamento de um carro é abstraído
através de poucos controle.
A comunicação entre os computadores
funciona considerando diferentes níveis de
abstração, conhecidos como camadas
Pensamento computacional
Algoritmo:
Desenvolvimento de uma solução passo-a-passo;
As regras a seguir para resolver o problema.
- Nota: Em um algoritmo, cada instrução é identificada e possui uma ordem de
execução definida.
Algoritmos
Algoritmo
“Nas palavras de um lógico:
Um algoritmo é
um método finito,
escrito em um vocabulário simbólico fixo,
regido por instruções precisas,
que se movem em passos discretos, 1,2,3 ….,
cuja execução não requer insight, esperteza, intuição,
inteligênca ou clareza e lucidez,
e que mais cedo ou mais tarde chega a um fim.”
Berlinski D. O advento do algoritmo.
Algoritmo
“Uma vez descoberto o algoritmo que executa uma dada
tarefa, sua execução já não dependera do conhecimento
dos princípios nos quais se baseia, restringindo se
apenas seguir as instruções estabelecidas.
Capacidade de captar e transferir a inteligência
mediante os algoritmos”
Berlinski D. O advento do algoritmo.
Algoritmos
Definições:
“Ação ou acontecimento que, a partir de um estado inicial, após um
período de tempo finito, produz um estado final previsível e bem-
definido. Portanto, um algoritmo é a descrição de um conjunto de
comandos que, obedecidos, resultam numa sucessão finita de ações”.
(FARRER, 1999)
“É um conjunto ordenado de passos executáveis, não ambíguos, que
define um processo finalizável”. (BROOKSHEAR, 2013)
Algoritmos
Principais características dos algoritmos:
Finitude:
Um algoritmo deve sempre terminar após um número finito de passos.
Definição:
Cada passo de um algoritmo deve ser precisamente definido.
Entradas:
Ter a capacidade de receber dado(s) de entrada.
Saídas:
Poder gerar informações de saída.
Efetividade:
Um algoritmo deve ser eficiente.
Algoritmos: Curiosidade
O termo algoritmo com a computação, na verdade ele teve sua
origem no nome do matemático do século IX Muḥammad ibn Mūsā
al-Khwārizmī, cujo sobrenome foi latinizado para Algoritmi.
Um dos mais antigos algoritmos foram
criados ainda Grécia e Roma antiga.
Pesquise o algoritimo Crivo de
Eratóstenes, utilizado para encontrar
números primos .
Algoritmos: Como fazer ?
Fonte: Raoni Florentino da Silva Teixeira:
Introdução a Algoritmos
Algoritmos: como fazer?
ENTENDIMENTO DO PROBLEMA
• Leia atentamente o enunciado, esclarecendo possíveis dúvidas de
vocabulário e identificando os dados do problema e o resultado
esperado.
• Identifique quais ações podem ser executadas pelo algoritmo.
• Tente responder as perguntas: Você já viu este problema antes?
Você conhece um problema relacionado?
Algoritmos: como fazer?
CONSTRUÇÃO DO ALGORITMO
• Responda a questão: Você consegue transformar este problema em
algum outro que já foi resolvido?
• Avalie se o problema ainda parece complicado e, caso necessário, o
transforme-o em um problema auxiliar, eliminando alguma das
variáveis envolvidas. Considere os casos mais simples primeiro.
• Brinque com a solução e tente entender o que acontece quando
grupos de ações são combinadas.
• Procure encontrar padrões e descreva o algoritmo.
Algoritmos: como fazer?
EXECUÇÃO DO ALGORITMO
• Antecipe o resultado da solução do problema.
• Simule a execução do algoritmo e guarde a solução encontrada
AVALIAÇÃO DA RESPOSTA
• Avalie a solução. A cada iteração você aprende mais sobre o problema.
• Se estiver resolvendo um problema auxiliar, aumente a complexidade do problema
e refaça o processo.
• Inicie o processo novamente, se o resultado esperado não for alcançado
Algoritmos: três fases fundamentais
Dados (entrada):
A matéria-prima obtida por uma ou mais
fontes.
Processamento:
Manipulação das informações coletadas no
início da atividade.
Resultado (saída):
Subentende a dados organizados (processados
– segundo a uma orientação específica).
Algoritmos: três fases fundamentais
Dados (entrada):
A matéria-prima obtida por uma ou mais
fontes.
Processamento:
Manipulação das informações coletadas no
início da atividade.
Resultado (saída):
Subentende a dados organizados (processados
– segundo a uma orientação específica).
Base e Altura
Algoritmos: três fases fundamentais
Dados (entrada):
A matéria-prima obtida por uma ou mais
fontes.
Processamento:
Manipulação das informações coletadas no
início da atividade.
Resultado (saída):
Subentende a dados organizados (processados
– segundo a uma orientação específica).
Base e Altura
Base X Altura
Algoritmos: três fases fundamentais
Dados (entrada):
A matéria-prima obtida por uma ou mais
fontes.
Processamento:
Manipulação das informações coletadas no
início da atividade.
Resultado (saída):
Subentende a dados organizados (processados
– segundo a uma orientação específica).
Base e Altura
Base X Altura
Área
Algoritmos: três fases fundamentais
Dados (entrada):
A matéria-prima obtida por uma ou mais
fontes.
Processamento:
Manipulação das informações coletadas no
início da atividade.
Resultado (saída):
Subentende a dados organizados (processados
– segundo a uma orientação específica).
Algoritmos
Formas de representação de algoritmos:
Algoritmos
Formas de representação de algoritmos:
Linguagem natural
Linguagem natural
Os algoritmos são expressos diretamente em linguagem natural.
• Vantagem: Não é necessário aprender conceitos novos
• Desvantagem: A linguagem natural abre espaço para várias
interpretações e ambiguidades, o que pode dificultar sua tradução para
um programa
Linguagem natural - Exemplo 1
Crie um algoritmo para mostrar o resultado da multiplicação de dois
números:
Passo 1: Receber os dois números que serão multiplicados
Passo 2: Multiplicar os números
Passo 3: Mostrar o resultado obtido na multiplicação
Linguagem natural - Exemplo 2
Faça um algoritmo para mostrar a divisão de dois números
Passo 1: receber os dois números
Passo 2: Se o numerador (segundo número) for igual a zero a divisão
não poderá ser feita; caso contrário dividir os dois números e mostrar o
resultado
Linguagem natural - Exemplo 3
Problema: Atravessar a rua
Algoritmos
Formas de representação de algoritmos:
Linguagem natural
Fluxograma convencional
Fluxograma
É uma representação gráfica que emprega formas geométricas
padronizadas para indicar as diversas ações e decisões que
devem ser executadas.
• Vantagem: o entendimento de elementos gráficos é mais simples e um
pouco mais formal.
• Desvantagens
• É necessário aprender uma nova simbologia
• O algoritmo resultante pode não apresentar muitos detalhes,
dificultando sua tradução para uma linguagem de programação
• Um algoritmo detalhado pode ser complexo de entender
Fluxograma - Símbolos
Direção do fluxo
Indica Cálculos e
Atribuições
Indica Entrada de
Dados
Indica Tomada
de decisão
Saída de
Dados
Início/Fim
Fluxograma - Exemplo 1
inicio
N1, N2
M = N1 * N2
Imprime M Fim
Crie um algoritmo para mostrar o
resultado da multiplicação de dois
números.
Fluxograma - Exemplo 2
Faça um algoritmo para mostrar a divisão de
dois números
inicio
N1, N2 N2=0
Impossível
dividir
D = N1/N2
Imprime D fim
Sim
Não
Algoritmos
Formas de representação de algoritmos:
Linguagem natural
Fluxograma convencional
Pseudocódigo
Pseudocódigo
Emprega uma linguagem intermediária entre a linguagem natural
e uma linguagem de programação.
Vantagem
A transformação do algoritmo para uma linguagem de programação é
simples
Desvantagem
É necessário aprender as regras de especificação do pseudo-código
Como não é uma linguagem de programação, cada pessoa pode definir
suas próprias regras e símbolos
Pseudocódigo - Exemplo 1
Crie um algoritmo para mostrar o resultado da multiplicação de
dois números
Algoritmo Multiplicação
Var N1, N2, M Real
Inicio
Escreva (“Digite dois números”)
Leia (N1, N2)
M <- N1 * N2
Escreva “Multiplicação = “, M
Fim
Pseudocódigo: Exemplo 2
Crie um algoritmo que dado duas notas, retorne se o aluno foi
aprovado.
Portugol
Baseada no Pascal, é utilizada como a primeira “linguagem de programação”.
Em muitos casos ela não é usada como uma linguagem para qual existem
interpretadores, como o Visualg:
Portugol
Baseada no Pascal, é utilizada como a primeira “linguagem de programação”.
Em muitos casos ela não é usada como uma linguagem para qual existem
interpretadores, como o Visualg:
Ao invés de trabalharmos
como Portugol, nesse
curso já iremos usar de
modo ainda superficial a
linguagem de
programação Python.
Algoritmos
Formas de representação de algoritmos:
Linguagem natural
Fluxograma convencional
Pseudocódigo
Linguagem de programação
Linguagem de programação
“Um programa é uma sequência de símbolos que especifica uma computação. Uma
linguagem de programação é um conjunto de regras que especificam quais
sequências de símbolos constituem um programa e que computação o programa
descreve."
Um algoritmo precisa ser expresso
por uma linguagem de programação
para que um computador consiga
executar.
Linguagem de programação
“Um programa é uma sequência de símbolos que especifica
uma computação. Uma linguagem de programação é um
conjunto de regras que especificam quais sequências de
símbolos constituem um programa e que computação o
programa descreve." (Monti Ben-Ari - Understanding
Programming Languages)
"Uma linguagem de programação é um formalismo artificial em
que algoritmos podem ser expressos” (Gabbrielli, Maurizio,
Martini, Simone - Programming Languages: Principles and
Paradigms)
Linguagem de programação
Python:
Alto nível x baixo nível;
Linguagem geral x linguagem específica;
Interpretada x compilada.
https://www.python.org/
Linguagem de programação
Python:
Alto nível x baixo nível;
Linguagem geral x linguagem específica;
Interpretada x compilada.
https://www.python.org/
No próximo encontro
iremos falar um pouco
mais sobre essa
linguagem e o ambiente
que iremos utilizá-la.
Para saber mais
- Acessem, crie uma conta no site
https://code.org/
- Acessem o site brasileiro sobre pensamento
computacional:
http://www.computacional.com.br/
Obrigado!

Mais conteúdo relacionado

Mais procurados

Eletroeletrônica Aplicada.pdf
Eletroeletrônica Aplicada.pdfEletroeletrônica Aplicada.pdf
Eletroeletrônica Aplicada.pdfOs Fantasmas !
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Leinylson Fontinele
 
Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadoresDaniel Moura
 
Aula 01: introdução à informática aplicada
Aula 01:  introdução à informática aplicadaAula 01:  introdução à informática aplicada
Aula 01: introdução à informática aplicadaRubens Vinicius Conte
 
Capítulo 1 Inteligência Artificial RUSSELL
Capítulo 1 Inteligência Artificial RUSSELLCapítulo 1 Inteligência Artificial RUSSELL
Capítulo 1 Inteligência Artificial RUSSELLWellington Oliveira
 
Arquitetura de projetos IoT
Arquitetura de projetos IoTArquitetura de projetos IoT
Arquitetura de projetos IoTFernando Veiga
 
Aula02 - Componentes de um Computador
Aula02 - Componentes de um ComputadorAula02 - Componentes de um Computador
Aula02 - Componentes de um ComputadorSuzana Viana Mota
 
A Internet das Coisas
A Internet das CoisasA Internet das Coisas
A Internet das CoisasLuiz Avila
 
Sistemas de Informações - Aula 16: BI, BA e Big Data
Sistemas de Informações - Aula 16: BI, BA e Big DataSistemas de Informações - Aula 16: BI, BA e Big Data
Sistemas de Informações - Aula 16: BI, BA e Big DataMarcus Araújo
 
Tecnologias Emergentes na Educação: obstáculos e desafios à sua integração
Tecnologias Emergentes na Educação: obstáculos e desafios à sua integraçãoTecnologias Emergentes na Educação: obstáculos e desafios à sua integração
Tecnologias Emergentes na Educação: obstáculos e desafios à sua integraçãoSónia Cruz
 
Aula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IPAula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IPFilipo Mór
 
Apresentação de Montagem e Manutenção
Apresentação de Montagem e ManutençãoApresentação de Montagem e Manutenção
Apresentação de Montagem e ManutençãoCDP_Online
 
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplinaFundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplinaHelder Lopes
 
[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)Alessandro Almeida
 

Mais procurados (20)

Eletroeletrônica Aplicada.pdf
Eletroeletrônica Aplicada.pdfEletroeletrônica Aplicada.pdf
Eletroeletrônica Aplicada.pdf
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
 
Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadores
 
Aula 01: introdução à informática aplicada
Aula 01:  introdução à informática aplicadaAula 01:  introdução à informática aplicada
Aula 01: introdução à informática aplicada
 
Capítulo 1 Inteligência Artificial RUSSELL
Capítulo 1 Inteligência Artificial RUSSELLCapítulo 1 Inteligência Artificial RUSSELL
Capítulo 1 Inteligência Artificial RUSSELL
 
Pensamento computacional
Pensamento computacionalPensamento computacional
Pensamento computacional
 
Arquitetura de projetos IoT
Arquitetura de projetos IoTArquitetura de projetos IoT
Arquitetura de projetos IoT
 
Curso clp siemens
Curso clp siemensCurso clp siemens
Curso clp siemens
 
Aula02 - Componentes de um Computador
Aula02 - Componentes de um ComputadorAula02 - Componentes de um Computador
Aula02 - Componentes de um Computador
 
A Internet das Coisas
A Internet das CoisasA Internet das Coisas
A Internet das Coisas
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
 
Manutenção de computadores
Manutenção de computadoresManutenção de computadores
Manutenção de computadores
 
Sistemas de Informações - Aula 16: BI, BA e Big Data
Sistemas de Informações - Aula 16: BI, BA e Big DataSistemas de Informações - Aula 16: BI, BA e Big Data
Sistemas de Informações - Aula 16: BI, BA e Big Data
 
Tecnologias Emergentes na Educação: obstáculos e desafios à sua integração
Tecnologias Emergentes na Educação: obstáculos e desafios à sua integraçãoTecnologias Emergentes na Educação: obstáculos e desafios à sua integração
Tecnologias Emergentes na Educação: obstáculos e desafios à sua integração
 
Aula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IPAula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IP
 
Apresentação de Montagem e Manutenção
Apresentação de Montagem e ManutençãoApresentação de Montagem e Manutenção
Apresentação de Montagem e Manutenção
 
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplinaFundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
 
[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)
 
Informática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - HardwareInformática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - Hardware
 
Apresentação Aula 01
Apresentação  Aula 01Apresentação  Aula 01
Apresentação Aula 01
 

Semelhante a De algoritmos à programas de computador

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
 
COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...
COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...
COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...Faga1939
 
Fundamentos De Ia E Sistemas Baseados em Conhecimento
Fundamentos De Ia E Sistemas Baseados em ConhecimentoFundamentos De Ia E Sistemas Baseados em Conhecimento
Fundamentos De Ia E Sistemas Baseados em Conhecimentozehzinho
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceLuca Bastos
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1Nauber Gois
 
Analise de Projeto de Sistemas EEEP.pptx
Analise de Projeto de Sistemas EEEP.pptxAnalise de Projeto de Sistemas EEEP.pptx
Analise de Projeto de Sistemas EEEP.pptxALLYSONALVESCARVALHO
 
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úblicasNathalia Sautchuk Patricio
 
Introdução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptxIntrodução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptxPaulo Cardoso
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência ArtificialLincolm Aguiar
 
Apresentaçao - Introdução à Computação.pptx
Apresentaçao - Introdução à Computação.pptxApresentaçao - Introdução à Computação.pptx
Apresentaçao - Introdução à Computação.pptxscoffee633
 
01 fundamentos de programação
01   fundamentos de programação01   fundamentos de programação
01 fundamentos de programaçãomaceca21
 
Fundamentos De Ia E SbCs
Fundamentos De Ia E SbCsFundamentos De Ia E SbCs
Fundamentos De Ia E SbCszehzinho
 
Computação Científica.pdf
Computação Científica.pdfComputação Científica.pdf
Computação Científica.pdfTomasEdson2
 
Princípios de Sistemas de Informação Unidade IV Unip
Princípios de Sistemas de Informação Unidade IV UnipPrincípios de Sistemas de Informação Unidade IV Unip
Princípios de Sistemas de Informação Unidade IV UnipHeber Gutenberg
 
analise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptx
analise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptxanalise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptx
analise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptxMoysesOliveira3
 

Semelhante a De algoritmos à programas de computador (20)

Algoritmos com java script
Algoritmos com java scriptAlgoritmos com java script
Algoritmos com java script
 
Aula01
Aula01Aula01
Aula01
 
Aula01
Aula01Aula01
Aula01
 
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...
 
COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...
COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...
COMO FUNCIONAM A INTELIGÊNCIA ARTIFICIAL E SEUS SOFTWARES E ALGORITMOS INTELI...
 
Fundamentos De Ia E Sistemas Baseados em Conhecimento
Fundamentos De Ia E Sistemas Baseados em ConhecimentoFundamentos De Ia E Sistemas Baseados em Conhecimento
Fundamentos De Ia E Sistemas Baseados em Conhecimento
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ce
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1
 
Analise de Projeto de Sistemas EEEP.pptx
Analise de Projeto de Sistemas EEEP.pptxAnalise de Projeto de Sistemas EEEP.pptx
Analise de Projeto de Sistemas EEEP.pptx
 
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
 
Ia01 introducao (1)
Ia01   introducao (1)Ia01   introducao (1)
Ia01 introducao (1)
 
Introdução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptxIntrodução aos algoritmos e à algoritmia.pptx
Introdução aos algoritmos e à algoritmia.pptx
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência Artificial
 
Apresentaçao - Introdução à Computação.pptx
Apresentaçao - Introdução à Computação.pptxApresentaçao - Introdução à Computação.pptx
Apresentaçao - Introdução à Computação.pptx
 
01 fundamentos de programação
01   fundamentos de programação01   fundamentos de programação
01 fundamentos de programação
 
Fundamentos De Ia E SbCs
Fundamentos De Ia E SbCsFundamentos De Ia E SbCs
Fundamentos De Ia E SbCs
 
Computação Científica.pdf
Computação Científica.pdfComputação Científica.pdf
Computação Científica.pdf
 
Fórum respostas
Fórum  respostasFórum  respostas
Fórum respostas
 
Princípios de Sistemas de Informação Unidade IV Unip
Princípios de Sistemas de Informação Unidade IV UnipPrincípios de Sistemas de Informação Unidade IV Unip
Princípios de Sistemas de Informação Unidade IV Unip
 
analise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptx
analise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptxanalise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptx
analise-de-sistemas-aula-01-bcc-noturno-ema908915a.pptx
 

Mais de Sérgio Souza Costa

Expressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicasExpressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicasSérgio Souza Costa
 
Introdução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosIntrodução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosSérgio Souza Costa
 
Minicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosMinicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosSérgio Souza Costa
 
Banco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de EncerramentoBanco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de EncerramentoSérgio Souza Costa
 
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemBanco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemSérgio Souza Costa
 
Banco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaBanco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaSérgio Souza Costa
 
Linguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoLinguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoSérgio Souza Costa
 
Gödel’s incompleteness theorems
Gödel’s incompleteness theoremsGödel’s incompleteness theorems
Gödel’s incompleteness theoremsSérgio Souza Costa
 
DBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsDBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsSérgio Souza Costa
 
Conceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosConceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosSérgio Souza Costa
 
Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Sérgio Souza Costa
 
Relações (composição e agregação)
Relações (composição e agregação)Relações (composição e agregação)
Relações (composição e agregação)Sérgio Souza Costa
 

Mais de Sérgio Souza Costa (20)

Expressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicasExpressões aritméticas, relacionais e lógicas
Expressões aritméticas, relacionais e lógicas
 
Introdução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosIntrodução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmos
 
Minicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosMinicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficos
 
Modelagem de dados geográficos
Modelagem de dados geográficosModelagem de dados geográficos
Modelagem de dados geográficos
 
Banco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de EncerramentoBanco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de Encerramento
 
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemBanco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
 
Banco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaBanco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de abertura
 
Linguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoLinguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - Introdução
 
Gödel’s incompleteness theorems
Gödel’s incompleteness theoremsGödel’s incompleteness theorems
Gödel’s incompleteness theorems
 
Turing e o problema da decisão
Turing e o problema da decisãoTuring e o problema da decisão
Turing e o problema da decisão
 
DBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsDBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cells
 
Conceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosConceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetos
 
Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)
 
Herança e Encapsulamento
Herança e EncapsulamentoHerança e Encapsulamento
Herança e Encapsulamento
 
Relações (composição e agregação)
Relações (composição e agregação)Relações (composição e agregação)
Relações (composição e agregação)
 
Abstract classes and interfaces
Abstract classes and interfacesAbstract classes and interfaces
Abstract classes and interfaces
 
Introdução ao Prolog
Introdução ao PrologIntrodução ao Prolog
Introdução ao Prolog
 
Heap - Python
Heap - PythonHeap - Python
Heap - Python
 
Paradigma lógico
Paradigma lógicoParadigma lógico
Paradigma lógico
 
Contextualizando o moodle
Contextualizando o moodleContextualizando o moodle
Contextualizando o moodle
 

De algoritmos à programas de computador

  • 1. Introdução ao pensamento computacional e aos algoritmos Sérgio Souza Costa Os slides a seguir foram adaptados partir do material do professor Alex Barradas.
  • 2. Roteiro - O que são computadores? - Pensamento Computacional - Algoritmos
  • 3. Computador: Exemplos: Cálculos, relatórios, Entretenimento, Comunicação, Qualificação , Compras .... O que são computadores? - Definição: Um computador é uma máquina capaz de sistematicamente coletar, manipular e fornecer os resultados da manipulação de informações para um ou mais objetivos. (MONTEIRO, 2001)
  • 4. Atualmente presente em diversos dispositivos e formas. O que são computadores?
  • 5. Atualmente presente em diversos dispositivos e formas. Conceitos - computador REFLEXÃO: Como serão os computadores daqui 30 anos ? em 2051 ? Pense bem pois esperamos estar aqui, vivendo e trabalhando :)
  • 6. Pensamento computacional Definição: O conjunto de habilidades intelectuais e de raciocínio que indicam como as pessoas interagem e aprendem a pensar por meio da linguagem computacional. (WING, 2006) JEANNETTE M. WING Professor at Carnegie Mellon University / Vice president at Microsoft Research About: Link: http://www.cs.cmu.edu/~wing/ Journals: Computational thinking Link: https://www.cs.cmu.edu/~15110-s13/Wing06-ct.pdf Computational Thinking and Thinking About Computing Link: http://www.cs.cmu.edu/~wing/publications/Wing08a.pdf
  • 7. Pensamento computacional Definição: O conjunto de habilidades intelectuais e de raciocínio que indicam como as pessoas interagem e aprendem a pensar por meio da linguagem computacional. (WING, 2006) JEANNETTE M. WING Professor at Carnegie Mellon University / Vice president at Microsoft Research About: Link: http://www.cs.cmu.edu/~wing/ Journals: Computational thinking Link: https://www.cs.cmu.edu/~15110-s13/Wing06-ct.pdf Computational Thinking and Thinking About Computing Link: http://www.cs.cmu.edu/~wing/publications/Wing08a.pdf Não confundam pensamento computacional com ciências da computação. Enquanto o primento é uma maneira de abordar um problema, o outro é o estudo da computação em todos os seus elementos.
  • 9. Pensamento Computacional e o code.org Para conhecer melhor essa iniciativa, pause o video e acesse o video de lançamento em 2013: https://www.youtube.com/w atch?v=nKIu9yen5nc
  • 10. Pensamento Computacional e o code.org Não deixem de visitar https://code.org/ e “brincar” um pouco. Importante para o aprendizado e para conhecer uma possível ferramenta que poderão utilizar Para conhecer melhor essa iniciativa, pause o video e acesse o video de lançamento em 2013: https://www.youtube.com/w atch?v=nKIu9yen5nc
  • 11. Pensamento Computacional no Brasil Em muitas escolas particulares, os alunos tem disciplina de pensamento computacional desde a alfabetização. Alguns professores tem levado esse conhecimento para escolas públicas através de projetos de extensão. http://www.computacional.com.br/
  • 12. Pensamento computacional Elementos do pensamento computacional: - Decomposição - Reconhecimento de padrões - Abstração - Algoritmos
  • 13. Pensamento computacional Elementos do pensamento computacional: - Decomposição - Reconhecimento de padrões - Abstração - Algoritmos
  • 14. Pensamento computacional Decomposição: Trata-se de quebrar um problema complexo; Sistemas são dividos em partes menores; Facilitar a compreensão. - Nota: As peças pequenas podem ser, em seguida, examinadas e resolvidas, ou concebidas individualmente, uma vez que são mais fáceis de trabalhar.
  • 15. Pensamento computacional Decomposição em prática (resolver um crime): O crime foi cometido? Quando o crime foi cometido? Onde o crime foi cometido? Existem provas? Testemunhas? Crimes semelhantes?
  • 16. Pensamento computacional Elementos do pensamento computacional: - Decomposição - Reconhecimento de padrões - Abstração - Algoritmos
  • 17. Pensamento computacional Reconhecimento de padrões: Observar tendências; Regularidades nos dados. Pelos padrões que conseguimos automatizar as operações.
  • 18. Pensamento computacional Elementos do pensamento computacional: - Decomposição - Reconhecimento de padrões - Abstração - Algoritmos
  • 19. Pensamento computacional Abstração: Trata-se de filtrar; Identificar os princípios gerais. Abstração: permite criar uma ideia geral do que é o problema e como resolvê-lo (modelo). O processe remove todos os detalhes e padrões que não irão nos ajudar a resolver o problema. Um algoritmo é uma abstração de um procedimento passo a passo para obter entrada e produzir alguma saída desejada (Wing, 2008)
  • 20. Pensamento computacional O funcionamento de um carro é abstraído através de poucos controle. A comunicação entre os computadores funciona considerando diferentes níveis de abstração, conhecidos como camadas
  • 21. Pensamento computacional Algoritmo: Desenvolvimento de uma solução passo-a-passo; As regras a seguir para resolver o problema. - Nota: Em um algoritmo, cada instrução é identificada e possui uma ordem de execução definida.
  • 23. Algoritmo “Nas palavras de um lógico: Um algoritmo é um método finito, escrito em um vocabulário simbólico fixo, regido por instruções precisas, que se movem em passos discretos, 1,2,3 …., cuja execução não requer insight, esperteza, intuição, inteligênca ou clareza e lucidez, e que mais cedo ou mais tarde chega a um fim.” Berlinski D. O advento do algoritmo.
  • 24. Algoritmo “Uma vez descoberto o algoritmo que executa uma dada tarefa, sua execução já não dependera do conhecimento dos princípios nos quais se baseia, restringindo se apenas seguir as instruções estabelecidas. Capacidade de captar e transferir a inteligência mediante os algoritmos” Berlinski D. O advento do algoritmo.
  • 25. Algoritmos Definições: “Ação ou acontecimento que, a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e bem- definido. Portanto, um algoritmo é a descrição de um conjunto de comandos que, obedecidos, resultam numa sucessão finita de ações”. (FARRER, 1999) “É um conjunto ordenado de passos executáveis, não ambíguos, que define um processo finalizável”. (BROOKSHEAR, 2013)
  • 26. Algoritmos Principais características dos algoritmos: Finitude: Um algoritmo deve sempre terminar após um número finito de passos. Definição: Cada passo de um algoritmo deve ser precisamente definido. Entradas: Ter a capacidade de receber dado(s) de entrada. Saídas: Poder gerar informações de saída. Efetividade: Um algoritmo deve ser eficiente.
  • 27. Algoritmos: Curiosidade O termo algoritmo com a computação, na verdade ele teve sua origem no nome do matemático do século IX Muḥammad ibn Mūsā al-Khwārizmī, cujo sobrenome foi latinizado para Algoritmi. Um dos mais antigos algoritmos foram criados ainda Grécia e Roma antiga. Pesquise o algoritimo Crivo de Eratóstenes, utilizado para encontrar números primos .
  • 28. Algoritmos: Como fazer ? Fonte: Raoni Florentino da Silva Teixeira: Introdução a Algoritmos
  • 29. Algoritmos: como fazer? ENTENDIMENTO DO PROBLEMA • Leia atentamente o enunciado, esclarecendo possíveis dúvidas de vocabulário e identificando os dados do problema e o resultado esperado. • Identifique quais ações podem ser executadas pelo algoritmo. • Tente responder as perguntas: Você já viu este problema antes? Você conhece um problema relacionado?
  • 30. Algoritmos: como fazer? CONSTRUÇÃO DO ALGORITMO • Responda a questão: Você consegue transformar este problema em algum outro que já foi resolvido? • Avalie se o problema ainda parece complicado e, caso necessário, o transforme-o em um problema auxiliar, eliminando alguma das variáveis envolvidas. Considere os casos mais simples primeiro. • Brinque com a solução e tente entender o que acontece quando grupos de ações são combinadas. • Procure encontrar padrões e descreva o algoritmo.
  • 31. Algoritmos: como fazer? EXECUÇÃO DO ALGORITMO • Antecipe o resultado da solução do problema. • Simule a execução do algoritmo e guarde a solução encontrada AVALIAÇÃO DA RESPOSTA • Avalie a solução. A cada iteração você aprende mais sobre o problema. • Se estiver resolvendo um problema auxiliar, aumente a complexidade do problema e refaça o processo. • Inicie o processo novamente, se o resultado esperado não for alcançado
  • 32. Algoritmos: três fases fundamentais Dados (entrada): A matéria-prima obtida por uma ou mais fontes. Processamento: Manipulação das informações coletadas no início da atividade. Resultado (saída): Subentende a dados organizados (processados – segundo a uma orientação específica).
  • 33. Algoritmos: três fases fundamentais Dados (entrada): A matéria-prima obtida por uma ou mais fontes. Processamento: Manipulação das informações coletadas no início da atividade. Resultado (saída): Subentende a dados organizados (processados – segundo a uma orientação específica). Base e Altura
  • 34. Algoritmos: três fases fundamentais Dados (entrada): A matéria-prima obtida por uma ou mais fontes. Processamento: Manipulação das informações coletadas no início da atividade. Resultado (saída): Subentende a dados organizados (processados – segundo a uma orientação específica). Base e Altura Base X Altura
  • 35. Algoritmos: três fases fundamentais Dados (entrada): A matéria-prima obtida por uma ou mais fontes. Processamento: Manipulação das informações coletadas no início da atividade. Resultado (saída): Subentende a dados organizados (processados – segundo a uma orientação específica). Base e Altura Base X Altura Área
  • 36. Algoritmos: três fases fundamentais Dados (entrada): A matéria-prima obtida por uma ou mais fontes. Processamento: Manipulação das informações coletadas no início da atividade. Resultado (saída): Subentende a dados organizados (processados – segundo a uma orientação específica).
  • 38. Algoritmos Formas de representação de algoritmos: Linguagem natural
  • 39. Linguagem natural Os algoritmos são expressos diretamente em linguagem natural. • Vantagem: Não é necessário aprender conceitos novos • Desvantagem: A linguagem natural abre espaço para várias interpretações e ambiguidades, o que pode dificultar sua tradução para um programa
  • 40. Linguagem natural - Exemplo 1 Crie um algoritmo para mostrar o resultado da multiplicação de dois números: Passo 1: Receber os dois números que serão multiplicados Passo 2: Multiplicar os números Passo 3: Mostrar o resultado obtido na multiplicação
  • 41. Linguagem natural - Exemplo 2 Faça um algoritmo para mostrar a divisão de dois números Passo 1: receber os dois números Passo 2: Se o numerador (segundo número) for igual a zero a divisão não poderá ser feita; caso contrário dividir os dois números e mostrar o resultado
  • 42. Linguagem natural - Exemplo 3 Problema: Atravessar a rua
  • 43. Algoritmos Formas de representação de algoritmos: Linguagem natural Fluxograma convencional
  • 44. Fluxograma É uma representação gráfica que emprega formas geométricas padronizadas para indicar as diversas ações e decisões que devem ser executadas. • Vantagem: o entendimento de elementos gráficos é mais simples e um pouco mais formal. • Desvantagens • É necessário aprender uma nova simbologia • O algoritmo resultante pode não apresentar muitos detalhes, dificultando sua tradução para uma linguagem de programação • Um algoritmo detalhado pode ser complexo de entender
  • 45. Fluxograma - Símbolos Direção do fluxo Indica Cálculos e Atribuições Indica Entrada de Dados Indica Tomada de decisão Saída de Dados Início/Fim
  • 46. Fluxograma - Exemplo 1 inicio N1, N2 M = N1 * N2 Imprime M Fim Crie um algoritmo para mostrar o resultado da multiplicação de dois números.
  • 47. Fluxograma - Exemplo 2 Faça um algoritmo para mostrar a divisão de dois números inicio N1, N2 N2=0 Impossível dividir D = N1/N2 Imprime D fim Sim Não
  • 48. Algoritmos Formas de representação de algoritmos: Linguagem natural Fluxograma convencional Pseudocódigo
  • 49. Pseudocódigo Emprega uma linguagem intermediária entre a linguagem natural e uma linguagem de programação. Vantagem A transformação do algoritmo para uma linguagem de programação é simples Desvantagem É necessário aprender as regras de especificação do pseudo-código Como não é uma linguagem de programação, cada pessoa pode definir suas próprias regras e símbolos
  • 50. Pseudocódigo - Exemplo 1 Crie um algoritmo para mostrar o resultado da multiplicação de dois números Algoritmo Multiplicação Var N1, N2, M Real Inicio Escreva (“Digite dois números”) Leia (N1, N2) M <- N1 * N2 Escreva “Multiplicação = “, M Fim
  • 51. Pseudocódigo: Exemplo 2 Crie um algoritmo que dado duas notas, retorne se o aluno foi aprovado.
  • 52. Portugol Baseada no Pascal, é utilizada como a primeira “linguagem de programação”. Em muitos casos ela não é usada como uma linguagem para qual existem interpretadores, como o Visualg:
  • 53. Portugol Baseada no Pascal, é utilizada como a primeira “linguagem de programação”. Em muitos casos ela não é usada como uma linguagem para qual existem interpretadores, como o Visualg: Ao invés de trabalharmos como Portugol, nesse curso já iremos usar de modo ainda superficial a linguagem de programação Python.
  • 54. Algoritmos Formas de representação de algoritmos: Linguagem natural Fluxograma convencional Pseudocódigo Linguagem de programação
  • 55. Linguagem de programação “Um programa é uma sequência de símbolos que especifica uma computação. Uma linguagem de programação é um conjunto de regras que especificam quais sequências de símbolos constituem um programa e que computação o programa descreve." Um algoritmo precisa ser expresso por uma linguagem de programação para que um computador consiga executar.
  • 56. Linguagem de programação “Um programa é uma sequência de símbolos que especifica uma computação. Uma linguagem de programação é um conjunto de regras que especificam quais sequências de símbolos constituem um programa e que computação o programa descreve." (Monti Ben-Ari - Understanding Programming Languages) "Uma linguagem de programação é um formalismo artificial em que algoritmos podem ser expressos” (Gabbrielli, Maurizio, Martini, Simone - Programming Languages: Principles and Paradigms)
  • 57. Linguagem de programação Python: Alto nível x baixo nível; Linguagem geral x linguagem específica; Interpretada x compilada. https://www.python.org/
  • 58. Linguagem de programação Python: Alto nível x baixo nível; Linguagem geral x linguagem específica; Interpretada x compilada. https://www.python.org/ No próximo encontro iremos falar um pouco mais sobre essa linguagem e o ambiente que iremos utilizá-la.
  • 59. Para saber mais - Acessem, crie uma conta no site https://code.org/ - Acessem o site brasileiro sobre pensamento computacional: http://www.computacional.com.br/