• Nenhum resultado encontrado

Lógica de Programação

N/A
N/A
Protected

Academic year: 2021

Share "Lógica de Programação"

Copied!
31
0
0

Texto

(1)

Lógica de Programação

Aula 1 - Introdução

Clenisson Calaça <[email protected]>

(2)

Sobre mim

Tecnólogo em Análise e

Desenvolvimento de Sistemas

Maurício de Nassau, 2015

Desenvolvedor

Plus Agência – www.plusagencia.digital (2011 – dias atuais)

“Reinão” em programação desde 2004 e eterno estudante da área.

Instrutor do curso desde out/2016.

Tudo sobre mim: www.clenissoncalaca.com

/clenisson /clenisson [email protected]

(3)

Sobre vocês?

Apresentem-se :)

(4)

Sobre o curso

http://www.conhecimentodigital.com.br/curso/tecnologico/logica

(5)

Sobre o curso

Aulas expositivas (slides, vídeos, exemplos, códigos, etc.)

– Portal web para divulgação dos conteúdos

Prática (exercícios)

Dúvidas poderão ser tiradas sempre que surgirem, aqui ou não =)

– Grupo (WhatsApp) e e-mail serão nossos

canais de comunicação fora da Conhecimento

Digital

(6)

Vamos começar?

(7)

Pensando em programação

Quantas vezes, ao longo da sua vida como usuário,

você já se perguntou como são feitos os programas que você executa nos seus dispositivos?

Alguma vez você já se perguntou...:

Como o Facebook acessa meu perfil quando eu entro com o login e a senha? Por que não acessa outro perfil?

Como o WhatsApp faz para abrir a câmera do meu celular quando eu clico no botão para tirar foto em uma conversa?

Como o Tinder pega a minha localização atual e mostra as pessoas que estão próximas a mim geograficamente para que eu demonstre interesse nelas?

...

(8)

Em resumo...

Como eu faço pra dizer ao computador que

executa o meu programa o que ele deve fazer em determinadas situações?

“Leia o login e a senha e procure o usuário na base de dados...”

“Quando o usuário clicar no botão, abra a câmera fotográfica de seu dispositivo”

“Pegue a localização geográfica do usuário

utilizando o GPS do dispositivo e liste as pessoas

próximas a ele”

(9)

Pensando logicamente

Um programa de computador executa instruções.

Um programador define essas instruções.

Nós definimos o que o programa deve fazer, e ele fará aquilo sempre que for executado.

Mas somente uma instrução não basta...

Deve haver um conjunto de instruções que,

executadas de forma ordenada, atinjam o objetivo que a gente quer.

Deve haver uma lógica de programação!!!

(10)

Lógica de programação

Técnica empregada para desenvolver uma sequência de passos que visa atingir um determinado objetivo.

Os passos presentes na sequência devem fazer sentido para que a tarefa seja atingida.

Algoritmo: sequência finita de passos

logicamente encadeados que executam uma determinada tarefa.

“Receita de bolo”

(11)

Algoritmos

Não é nada que nós nunca fizemos antes...

Sacar dinheiro.

1. Dirija-se ao caixa eletrônico 2. Insira seu cartão

3. Selecione a opção “saque”

4. Digite o valor e confirme 5. Digite sua senha

Dirigir um carro

1. Ligue o carro

2. Pise na embreagem

3. Engate a primeira marcha

(12)

Algoritmos

Nós praticamente vivemos executando

algoritmos para nossas atividades constantes.

Ou seja, pra tudo o que fazemos, nós seguimos uma linha de raciocínio. Algo que começa e

termina, de acordo com os recursos que temos disponíveis.

Você não vai dirijir-se a um caixa eletrônico se não tiver como ir a um ao executar a tarefa.

Você não vai conseguir ligar um carro se o mesmo

estiver quebrado ou sem gasolina.

(13)

Algoritmos

Um programa de computador é um algoritmo.

O programador diz o que ele vai fazer de acordo com sua capacidade

O computador é responsável por ler o que o

programador ordenou e executar a instrução!

(14)

Escrevendo Algoritmos

Um algoritmo sempre deve ser escrito como uma sequência de passos, o que é diferente de um texto comum.

Não é algoritmo:

Vá sacar R$50,00 pra mim no caixa eletrônico. Se não houver saldo suficiente neste cartão, utilize o outro.

É um algoritmo:

Dirija-se ao caixa eletrônico

Utilize o primeiro cartão

Verifique se há saldo suficiente

Se não houver saldo suficiente no cartão:

Utilize o outro cartão

Saque 50,00

Volte para casa com o dinheiro.

(15)

Escrevendo Algoritmos

Um algoritmo bem escrito é composto por ações imperativas...

Verbos. Ex.: Vá, Saque, Faça, Leia, Volte...

… condicionais...

Se, senão...

… e repetições

Enquanto, faça X vezes...

(16)

Escrevendo Algoritmos

Mãos à obra!!

Escreva os algoritmos que executarão os objetivos abaixo:

Criar um grupo da turma no WhatsApp

Dica: você vai ter que abrir o aplicativo, clicar no botão, definir um nome....

Ir daqui para a Ponta Verde de ônibus

Dica: você vai ter que ir até o ponto, estender sua mão, puxar a corda onde for descer...

LEMBRE-SE: Você deve descrever passo-a-passo e logicamente.

Utilize o modo imperativo. Não se preocupe com palavras:

pode usar qualquer uma.

(17)

Só tem um problema...

Nós falamos uma linguagem

Se moramos no Brasil, falamos Português.

LEIA O LOGIN

LEIA A SENHA

AUTENTIQUE O USUÁRIO

REDIRECIONE PARA A PÁGINA DO SEU PERFIL

E o computador???

(18)

Liguagem de máquina

Computadores não entendem “português”,

“inglês”, ou “espanhol”...

Basicamente, entendem bits. Sequências de

0s e 1s

(19)

Quer dizer que...

1. LEIA login 2. LEIA senha

3. AUTENTIQUE o usuário

4. REDIRECIONE para o perfil

...

01010101101010010

10101101010101010

10110011010101010

10101010101010101

01010101010101010

101101111100100010

00100100101011010

10010101010101010

10101010110101010

...

(20)

E agora?

Nós não entendemos binário

O computador não entende nossa linguagem

Mas...

Se viajarmos para a China sem saber falar chinês, junto com um intérprete, conseguimos nos

comunicar com todo mundo!

É isso! Precisamos de um “intérprete” que conversa

nosso algoritmo para a linguagem de máquina!

(21)

Linguagem de alto nível

(linguagem de programação)

São linguagens (conjunto de expressões e regras sobre elas) que utilizamos para criar nossos programas

Nós escrevemos linhas de códigos utilizando os recursos disponíveis em uma linguagem

Ao executar o programa, nossas linhas são

“convertidas” para a linguagem que o

computador entenda, e nossas instruções

executadas da forma como escrevemos!

(22)

Sintaxe e Semântica

Sintaxe: define a forma correta de se escrever uma instrução

É o “Como”

Semântica: é o sentido da instrução.

É o “o quê”

Exemplos:

“O gato latiu.” (Sintaxe: ok. Semântica: erro.)

“O cachorro latio.” (Semântica: ok. Sintaxe: erro.)

“O cachorro latiu.” (Sintaxe: ok. Semântica: ok.)

Um código de programação, para ser

executado, deve ter sua sintaxe correta!

(23)

Linguagens de programação

Há uma infinidade delas...

(24)

Linguagem de programação

Ruby

Ruby é a linguagem com a qual iremos iniciar nossos estudos de linguagem de programação.

É uma linguagem que possui uma sintaxe com uma rápida curva de aprendizado

Ideal para prática em um curso de iniciantes!

É popular no mercado de desenvolvimento

Ruby on Rails: framework amplamente utilizado em aplicações web

https://skillcrush.com/2015/02/02/37-rails-sites/

(25)

Escrevendo código

Mãos à obra!! Vamos fazer nosso “Hello World”

– Crie um arquivo chamado hello.rb

– Escreva nele a seguinte linha:

puts “Hello World”

– Abra o terminal do seu sistema

– Navegue até o local (pasta) do arquivo

– Digite:

ruby hello.rb

O que apareceu na linha abaixo?

(26)

O que fizemos?

– Nosso primeiro programa imprimiu na tela do computador a frase Hello World

Como fizemos?

– Escrevemos puts “Hello World” e pedimos que o interpretador Ruby executasse o arquivo

O que aconteceu?

– O interpretador leu a instrução que demos e

converteu para linguagem de máquina, fazendo com que o computador imprimisse a frase

Escrevendo código

(27)

Perceba que nós executamos o seguinte algoritmo:

ESCREVA NA TELA Hello World

Para isso, utilizamos a sintaxe da linguagem Ruby

puts “Hello World”

Que tal brincarmos um pouco mais?

Como executar o algoritmo abaixo?

FAÇA X = 3

FAÇA Y = 5

ESCREVA NA TELA o resultado de x + y

Recapitulando: algoritmos

(28)

Variáveis

Uma variável é um espaço, na memória do computador, destinado a receber um determinado valor .

Em linhas gerais, uma variável possui nome, tipo e conteúdo, onde:

Identificador: “nome” que vai ser utilizado para acessar a variável

Tipo: o dado que a variável suporte como valor (número, caracteres, etc.). Inicialmente, não nos preocuparemos com isso no Ruby.

Valor: aquilo que será “escrito” (utilizado) sempre que a variável for chamada pelo programa.

Exemplos de variáveis no ruby

nome = “Clenisson” (FAÇA nome = “Clenisson”)

idade = 25 (FAÇA idade = 25)

(29)

Variáveis

Já sabemos como imprimir algo na tela (ESCREVA NA TELA...)

Comando puts

Também sabemos como criar uma variável com seu respectivo valor (FAÇA...)

X = 1

Implemente o algoritmo solicitado anteriormente:

FAÇA x = 3

FAÇA y = 5

FAÇA z = x + y

ESCREVA NA TELA z

DICA: Para utilizar o puts somente para exibir um número, não

precisa das aspas.

(30)

Variáveis

E se nem sempre eu quiser definir o valor da variável dentro do próprio programa?

E se eu quiser, por exemplo, digitar o valor dela durante a execução?

O comando gets

Atribua à variável o valor gets

digite = gets

Escreva na tela (puts) o seu valor

puts digite

Salve o arquivo e execute. O que acontece quando você

executa o programa?

(31)

Exercícios

1 – Crie um programa que some dois valores digitados (um de cada vez) pelo usuário.

Dica: Utilize o comando .to_i para pegar o valor digitado pelo usuário na variável.

Não se preocupe, falaremos dele depois!!

Ex.: em vez de puts x + y, escreva puts x.to_i + y.to_i

2 – Crie um programa que exiba na tela seu nome e sua idade, no seguinte formato:

“Olá, me chamo _____, tenho ____ anos e estou no curso de Lógica de Programação da Conhecimento Digital”

Lembrete: para gravar seu nome em uma variável, utilize aspas.

Lembrete²: para escrever na tela um texto, utilize aspas.

Dica: ao utilizar o método puts com as aspas (para escrever textos), dentro das aspas você pode acessar as variáveis com #{IDENTIFICADOR} , trocando IDENTIFICADOR pelo identificador da variável desejada. Ex.: puts “Olá

#{nome}, como está?”

Referências

Documentos relacionados

O rastreio universal do diabetes gestacional deve ser realizado com o exame de glicemia de jejum na primeira consulta de pré-natal, e o teste oral de tolerância à gli- cose, com 75

Etapa 3. Escolha o mesmo método do identificador remoto que o túnel da lista de drop-down remota do identificador. Incorpore o valor apropriado de acordo com o tipo de

Com os dados calibrados, simulou-se quatro cenários com o programa PCSWMM: um atual (2015), com as características da área de contribuição e dimensões atuais da biorretenção; e

[r]

Uma senha de usuário para acessar um sistema computacional consiste em três letras seguidas de dois dígitos.. Na linguagem de programação BASIC original, um identificador tem que

– Onde se pode acessar um valor pelo identificador. • O escopo pode ser, dependendo

Drawings, paintings and installations in which line paths delimit and question what makes an artwork figurative or abstract underpin the oeuvre of Riccardo Baruzzi, whom the

Usado como um valor único para neggar um número, ou seja, tornar um número positivo em negativo e um número negativo em positivo, sejam eles números ou variáveis. Operador