SlideShare ist ein Scribd-Unternehmen logo
1 von 51
Estudos Diversificados II (ED II)
Escola Politécnica da Universidade de São Paulo
Nathalia Sautchuk Patrício
Algoritmos, Inteligência
Artificial e Políticas Públicas
Black Mirror
• Be right back (Temporada 2, Episódio 1)
• Playtest (Temporada 3, Episódio 2)
• Men Against Fire (Temporada 3, Episódio 5)
Governo de Algoritmos
• Caso Agência de Proteção Ambiental
• Caso Public Safety Assessment
• Caso Google
Conceitos Iniciais
• O homem quer resolver seus problemas com
maior rapidez e menos esforço possíveis
(automatização)
• O computador automatiza tarefas rotineiras
Conceitos Iniciais
• Tarefas realizadas automaticamente pelo
computador precisam ser pensadas e colocadas
em uma sequência de ações
• A sequência de ações é um programa
• A fase de formular soluções que gerem
programas denomina-se Lógica de Programação
Conceitos Iniciais
• A meta principal de qualquer programador:
–Resolver problemas por meio de soluções
lógicas
–Obter resultados eficientes (corretos)
–Obter resultados eficazes (com qualidade)
Componentes do computador
• Todo computador é composto de duas
partes essenciais para o seu
funcionamento:
–Hardware
–Software
• Sem uma dessas partes ele não funciona
Componentes do computador
• Software
–Conjunto de programas que comandam o
funcionamento do hardware
–Programas são feitos a partir de algoritmos
(sequências de instruções/comandos)
–Depois de pronto, o algoritmo é convertido
para uma linguagem de programação. O
produto dessa conversão é um programa.
Componentes do computador
• Linguagem de programação
–Conjunto de representações e/ou regras
utilizadas para criar programas.
–Por meio delas você estabelece uma
comunicação com o computador, fazendo com
que ele compreenda e execute o que você
determinar
Níveis de linguagens
• Existem 3 níveis de Linguagens de
programação:
–Linguagem de máquina
–Linguagem de baixo nível
–Linguagem de alto nível
Níveis de linguagens
• Linguagem de máquina:
– linguagem compreendida pelo computador,
cujas instruções são representadas por vários
0 e 1 (bits)
O computador transforma dados em sinais elétricos.
Cada sinal, chamado Bit (binary
digit) – a menor parte de uma informação
em um computador – é representado por 0 (ausência de
eletricidade) ou 1 (presença de
eletricidade). Qualquer dado armazenado no
computador equivale a um byte
(conjunto de 8 bits).
Níveis de linguagens
Níveis de linguagens
• Linguagem de baixo nível:
– linguagem que utiliza instruções próximas à
compreensão do computador (linguagem de
máquina).
– exige grande conhecimento de hardware.
– Exemplo: Assembler
Níveis de linguagens
• Linguagem de alto nível:
– linguagem cujas instruções estão próximas
do nível de compreensão humana (linguagem
humana).
– Exemplos: Visual Basic, Delphi, C, Java,
Cobol
Lógica de Programação
• Lógica é a “coerência de raciocínio, de
ideias”
• Lógica é a “sequência coerente, regular e
necessária de acontecimentos, de coisas”
Lógica de Programação
• Lógica de programação é apenas
contextualizar a lógica na programação de
computadores
• Busca-se a melhor sequência de ações
para solucionar determinado problema
(algoritmo)
Lógica de Programação
• Algoritmo é a sequência de passos ou
ações para atingir um objetivo
Atividade: Algoritmo
• Ordene a sequência abaixo
1. Sair do banco.
2. Aguardar a vez de ser atendido.
3. Entrar na fila do caixa.
4. Digitar a senha.
5. Entrar no banco.
6. Informar o valor a ser retirado.
7. Procurar a fila do caixa.
8. Pegar o comprovante do saque, o cartão eletrônico e o
dinheiro
9. Entregar o cartão eletrônico ao funcionário que atende
no caixa
10. Conferir o valor em dinheiro
Lógica de Programação
• Ação é um fato que, a partir de um estado
inicial, após um período de tempo finito,
produz um estado final previsível e
definido
Porta fechada Porta aberta
Ação: Abrir
Tempo: Segundos
Estado inicial Estado final
Algoritmo
• Para criar um algoritmo que vai solucionar
algum problema, você deve colocar as
ações na sequência, uma em cada linha.
• O algoritmo é um conjunto de ações.
Atividade: Algoritmo
• Ordene a sequência abaixo
1. Sair do banco.
2. Aguardar a vez de ser atendido.
3. Entrar na fila do caixa.
4. Digitar a senha.
5. Entrar no banco.
6. Informar o valor a ser retirado.
7. Procurar a fila do caixa.
8. Pegar o comprovante do saque, o cartão eletrônico e o
dinheiro
9. Entregar o cartão eletrônico ao funcionário que atende
no caixa
10. Conferir o valor em dinheiro
Atividade: Algoritmo
• Sequência correta
1. Entrar no banco.
2. Procurar a fila do caixa.
3. Entrar na fila do caixa.
4. Aguardar a vez de ser atendido.
5. Entregar o cartão eletrônico ao funcionário que atende
no caixa
6. Informar o valor a ser retirado.
7. Digitar a senha.
8. Pegar o comprovante do saque, o cartão eletrônico e o
dinheiro.
9. Conferir o valor em dinheiro
10. Sair do banco.
Formas de representação
• Há várias formas de representação do
algoritmo. As principais são:
– Pseudocódigo
– Fluxograma
Pseudocódigo
• Comandos escritos em língua portuguesa
• Também conhecido como português
estruturado ou portugol
• Sua característica principal é a
proximidade com a linguagem humana
Pseudocódigo
início
| <comando 1>
| <comando 2>
| ...
| <comando n>
fim
Fluxograma
• Utiliza figuras para representar o fluxo de
dados e os comandos do algoritmo
• É ótima para descrever algoritmos de
pequeno e médio tamanhos
Fluxograma
início
fim
<comando 1>
<comando 2>
<comando n>
Inteligência Artificial
• Em 1956, John McCarthy, um professor
universitário, criou o termo para descrever
um mundo em que as máquinas poderiam
“resolver os tipos de problemas que hoje
são reservados para humanos.”
• É um ramo da ciência de computação que
tem como foco elaborar dispositivos que
simulem a capacidade de raciocínio
humano
Inteligência Artificial
• A definição está relacionada à
– capacidade das máquinas de pensarem como
seres humanos
– de terem o poder de aprender, raciocinar,
perceber, deliberar e decidir de forma racional
e inteligente.
Inteligência Artificial
• A partir de algoritmos baseados em
probabilidades, capazes de subtrair
significados a partir de uma grande
quantidade de informações,
pesquisadores descobriram que não era
preciso ensinar a um computador como
realizar uma tarefa.
Inteligência Artificial
• O uso de algoritmos genéticos também foi
essencial para o desenvolvimento da
inteligência artificial como a conhecemos
atualmente.
• Esta técnica consiste em vasculhar
pedaços de códigos gerados
aleatoriamente e selecionar somente
aqueles que proporcionem o melhor
desempenho.
Inteligência Artificial
• A combinação de vários pedaços constitui
um novo código, renovado
constantemente e que torna a
programação final extremamente eficiente
– em resumo, se trata de um processo
elaborado de aprendizado.
Inteligência Artificial
• Várias áreas da ciência da computação
como
– Machine Learning
– Deep Learning
– Processamento de Linguagem Natural
– Big Data
– Computação em nuvem
Inteligência Artificial
Escola Politécnica da Universidade de São Paulo
Nathalia Sautchuk Patrício
nathalia.sautchuk@gmail.com
Obrigada!
Componentes do computador
• Hardware
–É a parte física do computador
–É o conjunto formado pelos circuitos
eletrônicos, processador, gabinete, pelas
placas, etc
Componentes do computador
• O computador funciona como uma
máquina que recebe dados, processa-os e
retorna um ou mais dados como resultado
Entrada de
Dados
Computador
(processamento)
Saída de
Dados
Componentes do computador
Entrada de
Dados
Periférico
de Entrada
de Dados
Saída de
Dados
Periférico
de Saída de
Dados
UCP
ULA UC
Memória
Principal
Memória
Auxiliar
Computador
Componentes do computador
• Periféricos de entrada de dados (input)
Componentes do computador
• Periféricos de entrada de dados (input)
–Dispositivos que recebem os dados do meio
externo e são capazes de traduzi-los para
pulsos elétricos compreensíveis para o
computador
–Exemplos: teclado, leitora de cartão perfurado,
leitor ótico de cartão, leitor de código de barras,
mouse, scanner, driver, placa de fax/modem,
placa de rede, modem, leitor de CD-ROM, leitor
de DVD-R, caneta ótica e outros
Componentes do computador
• Unidade Central de Processamento (UCP)
ou Central Process Unit (CPU)
Componentes do computador
• Unidade Central de Processamento (UCP)
ou Central Process Unit (CPU)
–Responsável por todas as operações
realizadas no computador, divide-se em:
–Unidade Lógica e Aritmética (ULA): responsável
pelas operações lógicas e aritméticas
–Unidade de Controle (UC): responsável pelo fluxo
de informações dentro do computador. Essa unidade
controla a entrada e saída de dados, envia e recebe
dados das memórias e controla a ULA
Componentes do computador
• Memória Principal
Componentes do computador
• Memória Principal
–Quando um programa está sendo executado,
são processados vários dados através de vários
comandos.
–Para que esse processamento tenha
velocidade, é necessário que os dados e
comandos estejam sempre à disposição e que
não sejam perdidos. Isso é viabilizado pela
Memória Principal
Componentes do computador
• Memória Principal
–Podemos comparar com uma grande sala com
vários armários, contendo gavetas e pastas
–Cada gaveta corresponde a uma parte da
memória
–Cada parte da memória localiza-se em uma
posição chamada de endereço de memória
–É possível dar um nome para cada endereço
de memória
Componentes do computador
• A Memória Principal divide-se em:
–Memória ROM (Read-Only Memory): contém
dados que configuram o computador ao ser
ligado e que não podem ser gravados ou
alterados
–Memória RAM (Random Access Memory):
Utilizada na execução de um programa para o
armazenamento e a leitura de dados e
comandos. Essa memória só atua quando o
computador estiver ligado.
Componentes do computador
• Memória Auxiliar
Componentes do computador
• Memória Auxiliar
–Utilizada para guardar dados
permanentemente.
–A leitura e a gravação de dados nesse tipo de
memória é feita pelos periféricos de entrada e
saída.
–Exemplos: fitas magnéticas, discos rígidos
(HDs), CD-ROM, DVDs, etc.
Componentes do computador
• Periféricos de Saída de Dados (Output)
Componentes do computador
• Periféricos de Saída de Dados (Output)
–Dispositivos que recebem dados do
computador, na forma de pulsos elétricos e
convertem esses dados em sons, números,
palavras, imagens, etc., para o meio externo.
–Exemplos: impressora, plotter, placa de vídeo,
placa de som, placa de fax/modem, placa de
rede, modem e outros.
Componentes do computador
• Periféricos de Entrada e Saída de Dados
(Input/Output)
–Periféricos que tanto recebem dados para o
computador como os transferem para o meio
externo.
–Exemplos: placa de fax/modem, placa de rede,
modem.

Weitere ähnliche Inhalte

Ähnlich wie Algoritmos, Inteligência Artificial e Políticas Públicas

Informatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociaisInformatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociaisRICARDO81499
 
Computação Científica.pdf
Computação Científica.pdfComputação Científica.pdf
Computação Científica.pdfTomasEdson2
 
De algoritmos à programas de computador
De algoritmos à programas de computadorDe algoritmos à programas de computador
De algoritmos à programas de computadorSérgio Souza Costa
 
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES IORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES Ipaulocoob
 
Conhecendo o Computador e seus Periféricos
Conhecendo o Computador e seus PeriféricosConhecendo o Computador e seus Periféricos
Conhecendo o Computador e seus Periféricoskcugik
 
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 cursoRodrigo Moraes Barbosa
 
648021762-Aula-de-Informatica-Slides.pptx
648021762-Aula-de-Informatica-Slides.pptx648021762-Aula-de-Informatica-Slides.pptx
648021762-Aula-de-Informatica-Slides.pptxMaicksinhoTeclas
 
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çãoRobson Ferreira
 
Algoritmos - Introdução à Computação
Algoritmos - Introdução à ComputaçãoAlgoritmos - Introdução à Computação
Algoritmos - Introdução à ComputaçãoElaine Cecília Gatto
 
01 fundamentos de programação
01   fundamentos de programação01   fundamentos de programação
01 fundamentos de programaçãomaceca21
 
Aula 1 aed - introdução à computação
Aula 1   aed - introdução à computaçãoAula 1   aed - introdução à computação
Aula 1 aed - introdução à computaçãoElaine Cecília Gatto
 
Aula 10 microcomputadores
Aula 10   microcomputadoresAula 10   microcomputadores
Aula 10 microcomputadoresRenaldo Adriano
 
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
 
Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!Intel Software Brasil
 
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e ProgramasAula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e ProgramasMessias Batista
 

Ähnlich wie Algoritmos, Inteligência Artificial e Políticas Públicas (20)

Informatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociaisInformatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociais
 
Computação Científica.pdf
Computação Científica.pdfComputação Científica.pdf
Computação Científica.pdf
 
Aula01
Aula01Aula01
Aula01
 
De algoritmos à programas de computador
De algoritmos à programas de computadorDe algoritmos à programas de computador
De algoritmos à programas de computador
 
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES IORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
 
Conhecendo o Computador e seus Periféricos
Conhecendo o Computador e seus PeriféricosConhecendo o Computador e seus Periféricos
Conhecendo o Computador e seus Periféricos
 
Introdução a computação
Introdução a computaçãoIntrodução a computação
Introdução a computação
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
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
 
648021762-Aula-de-Informatica-Slides.pptx
648021762-Aula-de-Informatica-Slides.pptx648021762-Aula-de-Informatica-Slides.pptx
648021762-Aula-de-Informatica-Slides.pptx
 
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
 
Aula02.pptx
Aula02.pptxAula02.pptx
Aula02.pptx
 
Algoritmos - Introdução à Computação
Algoritmos - Introdução à ComputaçãoAlgoritmos - Introdução à Computação
Algoritmos - Introdução à Computação
 
01 fundamentos de programação
01   fundamentos de programação01   fundamentos de programação
01 fundamentos de programação
 
Aula 1 aed - introdução à computação
Aula 1   aed - introdução à computaçãoAula 1   aed - introdução à computação
Aula 1 aed - introdução à computação
 
Aula 10 microcomputadores
Aula 10   microcomputadoresAula 10   microcomputadores
Aula 10 microcomputadores
 
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
 
Apresentação1.pptx
Apresentação1.pptxApresentação1.pptx
Apresentação1.pptx
 
Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!
 
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e ProgramasAula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
 

Mehr von Nathalia Sautchuk Patricio

Conceptos fundamentales sobre el funcionamiento y la utilidad del cifrado
Conceptos fundamentales sobre el funcionamiento y la utilidad del cifradoConceptos fundamentales sobre el funcionamiento y la utilidad del cifrado
Conceptos fundamentales sobre el funcionamiento y la utilidad del cifradoNathalia Sautchuk Patricio
 
Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...
Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...
Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...Nathalia Sautchuk Patricio
 
Requisitos de Interface com o usuário em Software Educacional
Requisitos de Interface com o usuário em Software EducacionalRequisitos de Interface com o usuário em Software Educacional
Requisitos de Interface com o usuário em Software EducacionalNathalia Sautchuk Patricio
 
Políticas Educacionais do Ensino a Distância no Brasil
Políticas Educacionais do Ensino a Distância no BrasilPolíticas Educacionais do Ensino a Distância no Brasil
Políticas Educacionais do Ensino a Distância no BrasilNathalia Sautchuk Patricio
 
Como funciona a Internet - Camada de Aplicação
Como funciona a Internet - Camada de AplicaçãoComo funciona a Internet - Camada de Aplicação
Como funciona a Internet - Camada de AplicaçãoNathalia Sautchuk Patricio
 
Engenharia de Requisitos em Software para E-learning
Engenharia de Requisitos em Software para E-learningEngenharia de Requisitos em Software para E-learning
Engenharia de Requisitos em Software para E-learningNathalia Sautchuk Patricio
 
Desenvolvimento de ambientes 3D para Web usando Three JS
Desenvolvimento de ambientes 3D para Web usando Three JSDesenvolvimento de ambientes 3D para Web usando Three JS
Desenvolvimento de ambientes 3D para Web usando Three JSNathalia Sautchuk Patricio
 

Mehr von Nathalia Sautchuk Patricio (16)

Conceptos fundamentales sobre el funcionamiento y la utilidad del cifrado
Conceptos fundamentales sobre el funcionamiento y la utilidad del cifradoConceptos fundamentales sobre el funcionamiento y la utilidad del cifrado
Conceptos fundamentales sobre el funcionamiento y la utilidad del cifrado
 
Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...
Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...
Internet Engineering Task Force (IETF): Visão sobre a Participação Brasileira...
 
Franquia de dados na Internet
Franquia de dados na InternetFranquia de dados na Internet
Franquia de dados na Internet
 
Requisitos de Interface com o usuário em Software Educacional
Requisitos de Interface com o usuário em Software EducacionalRequisitos de Interface com o usuário em Software Educacional
Requisitos de Interface com o usuário em Software Educacional
 
Políticas Educacionais do Ensino a Distância no Brasil
Políticas Educacionais do Ensino a Distância no BrasilPolíticas Educacionais do Ensino a Distância no Brasil
Políticas Educacionais do Ensino a Distância no Brasil
 
Essay: Multistakeholder Model
Essay: Multistakeholder ModelEssay: Multistakeholder Model
Essay: Multistakeholder Model
 
Essay: Brazilian Transition to IPv6
Essay: Brazilian Transition to IPv6Essay: Brazilian Transition to IPv6
Essay: Brazilian Transition to IPv6
 
Protocolos de Rede para Internet das Coisas
Protocolos de Rede para Internet das CoisasProtocolos de Rede para Internet das Coisas
Protocolos de Rede para Internet das Coisas
 
Como funciona a Internet - Camada de Aplicação
Como funciona a Internet - Camada de AplicaçãoComo funciona a Internet - Camada de Aplicação
Como funciona a Internet - Camada de Aplicação
 
Modelos de Engenharia de Software
Modelos de Engenharia de SoftwareModelos de Engenharia de Software
Modelos de Engenharia de Software
 
Software Livre na Educação
Software Livre na EducaçãoSoftware Livre na Educação
Software Livre na Educação
 
O uso das TICs na educação
O uso das TICs na educaçãoO uso das TICs na educação
O uso das TICs na educação
 
Engenharia de Requisitos em Software para E-learning
Engenharia de Requisitos em Software para E-learningEngenharia de Requisitos em Software para E-learning
Engenharia de Requisitos em Software para E-learning
 
Mulheres na computação
Mulheres na computaçãoMulheres na computação
Mulheres na computação
 
Mulheres na computação
Mulheres na computaçãoMulheres na computação
Mulheres na computação
 
Desenvolvimento de ambientes 3D para Web usando Three JS
Desenvolvimento de ambientes 3D para Web usando Three JSDesenvolvimento de ambientes 3D para Web usando Three JS
Desenvolvimento de ambientes 3D para Web usando Three JS
 

Algoritmos, Inteligência Artificial e Políticas Públicas

  • 1. Estudos Diversificados II (ED II) Escola Politécnica da Universidade de São Paulo Nathalia Sautchuk Patrício Algoritmos, Inteligência Artificial e Políticas Públicas
  • 2. Black Mirror • Be right back (Temporada 2, Episódio 1) • Playtest (Temporada 3, Episódio 2) • Men Against Fire (Temporada 3, Episódio 5)
  • 3. Governo de Algoritmos • Caso Agência de Proteção Ambiental • Caso Public Safety Assessment • Caso Google
  • 4. Conceitos Iniciais • O homem quer resolver seus problemas com maior rapidez e menos esforço possíveis (automatização) • O computador automatiza tarefas rotineiras
  • 5. Conceitos Iniciais • Tarefas realizadas automaticamente pelo computador precisam ser pensadas e colocadas em uma sequência de ações • A sequência de ações é um programa • A fase de formular soluções que gerem programas denomina-se Lógica de Programação
  • 6. Conceitos Iniciais • A meta principal de qualquer programador: –Resolver problemas por meio de soluções lógicas –Obter resultados eficientes (corretos) –Obter resultados eficazes (com qualidade)
  • 7. Componentes do computador • Todo computador é composto de duas partes essenciais para o seu funcionamento: –Hardware –Software • Sem uma dessas partes ele não funciona
  • 8. Componentes do computador • Software –Conjunto de programas que comandam o funcionamento do hardware –Programas são feitos a partir de algoritmos (sequências de instruções/comandos) –Depois de pronto, o algoritmo é convertido para uma linguagem de programação. O produto dessa conversão é um programa.
  • 9. Componentes do computador • Linguagem de programação –Conjunto de representações e/ou regras utilizadas para criar programas. –Por meio delas você estabelece uma comunicação com o computador, fazendo com que ele compreenda e execute o que você determinar
  • 10. Níveis de linguagens • Existem 3 níveis de Linguagens de programação: –Linguagem de máquina –Linguagem de baixo nível –Linguagem de alto nível
  • 11. Níveis de linguagens • Linguagem de máquina: – linguagem compreendida pelo computador, cujas instruções são representadas por vários 0 e 1 (bits)
  • 12. O computador transforma dados em sinais elétricos. Cada sinal, chamado Bit (binary digit) – a menor parte de uma informação em um computador – é representado por 0 (ausência de eletricidade) ou 1 (presença de eletricidade). Qualquer dado armazenado no computador equivale a um byte (conjunto de 8 bits). Níveis de linguagens
  • 13. Níveis de linguagens • Linguagem de baixo nível: – linguagem que utiliza instruções próximas à compreensão do computador (linguagem de máquina). – exige grande conhecimento de hardware. – Exemplo: Assembler
  • 14. Níveis de linguagens • Linguagem de alto nível: – linguagem cujas instruções estão próximas do nível de compreensão humana (linguagem humana). – Exemplos: Visual Basic, Delphi, C, Java, Cobol
  • 15. Lógica de Programação • Lógica é a “coerência de raciocínio, de ideias” • Lógica é a “sequência coerente, regular e necessária de acontecimentos, de coisas”
  • 16. Lógica de Programação • Lógica de programação é apenas contextualizar a lógica na programação de computadores • Busca-se a melhor sequência de ações para solucionar determinado problema (algoritmo)
  • 17. Lógica de Programação • Algoritmo é a sequência de passos ou ações para atingir um objetivo
  • 18. Atividade: Algoritmo • Ordene a sequência abaixo 1. Sair do banco. 2. Aguardar a vez de ser atendido. 3. Entrar na fila do caixa. 4. Digitar a senha. 5. Entrar no banco. 6. Informar o valor a ser retirado. 7. Procurar a fila do caixa. 8. Pegar o comprovante do saque, o cartão eletrônico e o dinheiro 9. Entregar o cartão eletrônico ao funcionário que atende no caixa 10. Conferir o valor em dinheiro
  • 19. Lógica de Programação • Ação é um fato que, a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e definido Porta fechada Porta aberta Ação: Abrir Tempo: Segundos Estado inicial Estado final
  • 20. Algoritmo • Para criar um algoritmo que vai solucionar algum problema, você deve colocar as ações na sequência, uma em cada linha. • O algoritmo é um conjunto de ações.
  • 21. Atividade: Algoritmo • Ordene a sequência abaixo 1. Sair do banco. 2. Aguardar a vez de ser atendido. 3. Entrar na fila do caixa. 4. Digitar a senha. 5. Entrar no banco. 6. Informar o valor a ser retirado. 7. Procurar a fila do caixa. 8. Pegar o comprovante do saque, o cartão eletrônico e o dinheiro 9. Entregar o cartão eletrônico ao funcionário que atende no caixa 10. Conferir o valor em dinheiro
  • 22. Atividade: Algoritmo • Sequência correta 1. Entrar no banco. 2. Procurar a fila do caixa. 3. Entrar na fila do caixa. 4. Aguardar a vez de ser atendido. 5. Entregar o cartão eletrônico ao funcionário que atende no caixa 6. Informar o valor a ser retirado. 7. Digitar a senha. 8. Pegar o comprovante do saque, o cartão eletrônico e o dinheiro. 9. Conferir o valor em dinheiro 10. Sair do banco.
  • 23. Formas de representação • Há várias formas de representação do algoritmo. As principais são: – Pseudocódigo – Fluxograma
  • 24. Pseudocódigo • Comandos escritos em língua portuguesa • Também conhecido como português estruturado ou portugol • Sua característica principal é a proximidade com a linguagem humana
  • 25. Pseudocódigo início | <comando 1> | <comando 2> | ... | <comando n> fim
  • 26. Fluxograma • Utiliza figuras para representar o fluxo de dados e os comandos do algoritmo • É ótima para descrever algoritmos de pequeno e médio tamanhos
  • 28. Inteligência Artificial • Em 1956, John McCarthy, um professor universitário, criou o termo para descrever um mundo em que as máquinas poderiam “resolver os tipos de problemas que hoje são reservados para humanos.” • É um ramo da ciência de computação que tem como foco elaborar dispositivos que simulem a capacidade de raciocínio humano
  • 29. Inteligência Artificial • A definição está relacionada à – capacidade das máquinas de pensarem como seres humanos – de terem o poder de aprender, raciocinar, perceber, deliberar e decidir de forma racional e inteligente.
  • 30. Inteligência Artificial • A partir de algoritmos baseados em probabilidades, capazes de subtrair significados a partir de uma grande quantidade de informações, pesquisadores descobriram que não era preciso ensinar a um computador como realizar uma tarefa.
  • 31. Inteligência Artificial • O uso de algoritmos genéticos também foi essencial para o desenvolvimento da inteligência artificial como a conhecemos atualmente. • Esta técnica consiste em vasculhar pedaços de códigos gerados aleatoriamente e selecionar somente aqueles que proporcionem o melhor desempenho.
  • 32. Inteligência Artificial • A combinação de vários pedaços constitui um novo código, renovado constantemente e que torna a programação final extremamente eficiente – em resumo, se trata de um processo elaborado de aprendizado.
  • 33. Inteligência Artificial • Várias áreas da ciência da computação como – Machine Learning – Deep Learning – Processamento de Linguagem Natural – Big Data – Computação em nuvem
  • 35. Escola Politécnica da Universidade de São Paulo Nathalia Sautchuk Patrício nathalia.sautchuk@gmail.com Obrigada!
  • 36. Componentes do computador • Hardware –É a parte física do computador –É o conjunto formado pelos circuitos eletrônicos, processador, gabinete, pelas placas, etc
  • 37. Componentes do computador • O computador funciona como uma máquina que recebe dados, processa-os e retorna um ou mais dados como resultado Entrada de Dados Computador (processamento) Saída de Dados
  • 38. Componentes do computador Entrada de Dados Periférico de Entrada de Dados Saída de Dados Periférico de Saída de Dados UCP ULA UC Memória Principal Memória Auxiliar Computador
  • 39. Componentes do computador • Periféricos de entrada de dados (input)
  • 40. Componentes do computador • Periféricos de entrada de dados (input) –Dispositivos que recebem os dados do meio externo e são capazes de traduzi-los para pulsos elétricos compreensíveis para o computador –Exemplos: teclado, leitora de cartão perfurado, leitor ótico de cartão, leitor de código de barras, mouse, scanner, driver, placa de fax/modem, placa de rede, modem, leitor de CD-ROM, leitor de DVD-R, caneta ótica e outros
  • 41. Componentes do computador • Unidade Central de Processamento (UCP) ou Central Process Unit (CPU)
  • 42. Componentes do computador • Unidade Central de Processamento (UCP) ou Central Process Unit (CPU) –Responsável por todas as operações realizadas no computador, divide-se em: –Unidade Lógica e Aritmética (ULA): responsável pelas operações lógicas e aritméticas –Unidade de Controle (UC): responsável pelo fluxo de informações dentro do computador. Essa unidade controla a entrada e saída de dados, envia e recebe dados das memórias e controla a ULA
  • 43. Componentes do computador • Memória Principal
  • 44. Componentes do computador • Memória Principal –Quando um programa está sendo executado, são processados vários dados através de vários comandos. –Para que esse processamento tenha velocidade, é necessário que os dados e comandos estejam sempre à disposição e que não sejam perdidos. Isso é viabilizado pela Memória Principal
  • 45. Componentes do computador • Memória Principal –Podemos comparar com uma grande sala com vários armários, contendo gavetas e pastas –Cada gaveta corresponde a uma parte da memória –Cada parte da memória localiza-se em uma posição chamada de endereço de memória –É possível dar um nome para cada endereço de memória
  • 46. Componentes do computador • A Memória Principal divide-se em: –Memória ROM (Read-Only Memory): contém dados que configuram o computador ao ser ligado e que não podem ser gravados ou alterados –Memória RAM (Random Access Memory): Utilizada na execução de um programa para o armazenamento e a leitura de dados e comandos. Essa memória só atua quando o computador estiver ligado.
  • 47. Componentes do computador • Memória Auxiliar
  • 48. Componentes do computador • Memória Auxiliar –Utilizada para guardar dados permanentemente. –A leitura e a gravação de dados nesse tipo de memória é feita pelos periféricos de entrada e saída. –Exemplos: fitas magnéticas, discos rígidos (HDs), CD-ROM, DVDs, etc.
  • 49. Componentes do computador • Periféricos de Saída de Dados (Output)
  • 50. Componentes do computador • Periféricos de Saída de Dados (Output) –Dispositivos que recebem dados do computador, na forma de pulsos elétricos e convertem esses dados em sons, números, palavras, imagens, etc., para o meio externo. –Exemplos: impressora, plotter, placa de vídeo, placa de som, placa de fax/modem, placa de rede, modem e outros.
  • 51. Componentes do computador • Periféricos de Entrada e Saída de Dados (Input/Output) –Periféricos que tanto recebem dados para o computador como os transferem para o meio externo. –Exemplos: placa de fax/modem, placa de rede, modem.