O documento apresenta uma aula introdutória sobre algoritmos e lógica de programação. Serão abordados conceitos básicos como o que é um algoritmo, representações de algoritmos através de fluxogramas e pseudocódigo, e a linguagem Visualg que será utilizada no curso. Também são apresentados os primeiros comandos da linguagem como escreva, escreval e operadores matemáticos.
1. Aula01–Algoritmos:visãogeral
Ementa Introduzir conceitos e técnicas de programação de computadores, utilizando noções de algoritmos e lógica computacional, através da utilização de diagramas e linguagens de alto nível, além da análise e depuração de código.
Introdução à Programação
www.fiponline.edu.br
PROF. Msc. BERG OLIVEIRA
2014.2
2. Sobre o curso.
•O que nós veremos:
•Lógica de Programação na prática
•Algoritmos
•Conceitos, análise e escrita
•Exercícios
•Praticar, praticar, praticar
•Linguagem utilizada:
•VisuALG
•Linguagem de programação didática
•Comandos em português
•Indicada para iniciantes.
filesberg@gmail.com 2
3. Sobre o curso.
•Datas de Aula:
•17/10
•24/10 (feriado –não haverá aula)
•31/10
•07/11
•14/11
•21/11
•28/11
•05/12
•O aluno deverá frequentar no mínimo 75% do curso.
•Garantia de bolsas.
•Inscrever-se na Página FIP Projetos
filesberg@gmail.com 3
4. Sobre os alunos
•É a sua vez de falar =)
•Nome
•Cidade
•Escola
•Como soube do curso?
•Porque a escolha do curso?
filesberg@gmail.com 4
5. Antes de começarmos
•Algumas dicas
•Não hesite em tirar dúvidas;
•Não se atenha apenas às notas de aula (slides);
•Estude em casa!
•Pontualidade é sinônimo de respeito e educação.
filesberg@gmail.com 5
6. Começando
•O que é software?
•Uma estrutura de comandos escritosem uma linguagem de programação
•O que faz um software?
•Resolve problemas
•Quem utiliza o software?
•Usuários
•Quem cria ou produz o software?
•Analistas, Desenvolvedores, Testers.
•Equipe de desenvolvimento.
•O que há por trás de um software?
•Códigos
filesberg@gmail.com 6
7. O que é Algoritmo
•Sequência de passos (ou instruções) para resolver um problema.
•Padrão de comportamento que deve ser seguido, para alcançar a resolução de problema.
•O que é preciso para resolver um algoritmo?
•Entender o problema
•Organizar ações que devem ser tomadas.
•Estabelecer passos que devem ser executados
•Sequência finita.
filesberg@gmail.com 7
8. O que é Algoritmo
•Todo algoritmo tem que ter:
corpo
filesberg@gmail.com 8
Início
Fim
Passo 1
Passo 2
Passo n
...
9. O que é Algoritmo
•Todo algoritmo podeter:
Estruturas condicionais
corpo
filesberg@gmail.com 9
Início
Fim
Passo 1
condição
Passo 2
Se verdade
Passo 3
Se falso
10. O que é Algoritmo
•Todo algoritmo podeter:
Estruturas de repetição
corpo
filesberg@gmail.com 10
Início
Fim
Passo 1
condição
Passo 2
Se verdade
Se falso
11. Algoritmo não ésinônimo de computação
•Algoritmo = sequência de passos para resolver problema
•Implica conhecer o problema
•Exemplo de Algoritmo:
Algoritmo “Trocar Pneu” <-todo algoritmo tem um nome
1.Desligar o carro
2.Sair do carro
3.Pegar as ferramentas
4.Pegar o estepe9. Colocar estepe
5.Folgar os parafusos10. Enroscar os parafusos
6.Suspender o carro11. Abaixar o carro
7.Retirar os parafusos12. Arrochar parafusos
8.Retirar pneu furado13. Guardar pneu furado
FIM DO ALGORITMO
filesberg@gmail.com 11
12. Algoritmo Computacional
•Quando um algoritmo é utilizado para computador, ele é geralmente constituído de 3 partes:
filesberg@gmail.com 12
Entrada de Dados
Processamento dos Dados
Saída dos Dados
13. Representações de Algoritmo
•Fluxograma
* Linguagens
-> Linguagem Natural
-> Pseudocódigo
* VisuALG
-> Linguagem de Máquina
-> Linguagem de Programação
filesberg@gmail.com 13
Início
Fim
Passo 1
Passo 2
Passo n
...
14. Algoritmos e Linguagens
•Linguagens de Máquina são muito baixo nível.
•Difícil de entender
•Linguagens de Programação são alto nível
•Mais fácil de entender, por parecer com linguagem natural.
filesberg@gmail.com 14
Linguagem de Programação
Compilador
Ou Interpretador
Linguagem de Máquina
15. VisuALG
•O VisuALG (Visualizador de Algoritmo) é um programa que edita, interpretae executaalgoritmos com uma linguagem próxima do português estruturado como um programa normal de computador.
•Utiliza Pseudocódigo
•Visualg não é uma linguagem de programação
•É um software que interpreta os comando e executa numa linguagem de programação 15 filesberg@gmail.com
Linguagem de Programação
Compilador
Ou Interpretador
Linguagem de Máquina
Pseudocódigo
16. VisuALG
•O foco do nosso curso é a Lógica de Programação, usando a ferramentaVisuALG.
•Se vcquiser um manual mais detalhado da ferramenta VisuALG, vcencontra aqui:
•http://pt.slideshare.net/jkolive/apostila-de-visualg
•Vamos focar o curso nos comandos do programa, e como utilizá-los em nosso benefício.
•Uma vez que vcaprender a lógica de programação, é quiser mudar de linguagem ou ferramenta, vcterá que aprender os comandos desta nova linguagem.
filesberg@gmail.com 16
17. VisuALG
•Primeiros Comandos
•escreva("texto")
•Escreve na tela o que tiver dentro das aspas duplas.
•escreval("texto”)
•Igual ao comando “escreva”, só que ao final da execução, o programa quebra ou desce uma linha (como se fosse um “enter”)
•escreva("texto", comandos)
•escreval("texto", comandos)
•Os dois comandos acima escrevem um texto na tela (quebrando a linha ou não), e executa a série de comandos existentes depois das vírgula.
filesberg@gmail.com 17
18. VisuALG
•Primeiros Comandos: Exemplos
•escreva(“Meu nome é Zé")
•O que será impresso:
Meu nome é Zé
•escreval("Meu nome é Zé")
•O que será impresso:
Meu nome é Zé
(linha em branco)
•escreval(“2 + 2=", 2+2)
•O que será impresso:
2+2=4
(linha em branco)
filesberg@gmail.com 18
19. VisuALG
•Primeiros Comandos: Exemplos
•No momento que for preciso concatenar texto e comandos, cuidado com os parênteses. Sempre que houver um parêntese aberto, deverá ter um parêntese fechando.
•Exemplo:
•escreva(“(2+2)/2”, (2+2/2)
•Obs1: Os parênteses (como qualquer informação) dentro da aspas são ignorados pelo programa. Ou seja, ele não avalia nada dentro das aspas, somente imprime.
•Obs2: Está faltando um parêntese: existe um parêntese no início, mas nenhum parêntese no final que feche a função.
•O programa vai entender a função acima assim:
escreva(“(2+2)/2”, (2+2/2)
•O correto seria: escreva(“(2+2)/2”, (2+2/2))
filesberg@gmail.com 19
20. VisuALG
•Operadores Matemáticos:
•Soma: +
•Subtração: –
•Multiplicação: * (asterisco)
•Divisão: /
•Potência: ^
•Quociente (de uma divisão de inteiros): div
•Resto (de uma divisão de inteiros): mod
•Exemplos:
•Soma, subtração e multiplicação são óbvios.
•5/2 = 2,5
•5^2 = 25 (o mesmo que 52)
•5 div2 = 2
•5 mod2 = 1
filesberg@gmail.com 20
21. VisuALG
•Exercícios:
•Escreva um programa que imprima o resultado das seguintes operações (cada operação numa linha)
•9+2
•9-2
•9*2
•9 / 2
•9 div2
•9 mod2
•2*3+4-2
•2+3-4*2 mod3
•(2*3) div(4-2)
•2 mod3 * 0 + 5
•2 + 3 -9 / 3
filesberg@gmail.com 21