Вы находитесь на странице: 1из 29

ALGOR Algoritmos para Funcionais

Aula 1 Algoritmos e Fundamentos da Programao


Sumrio

30 Aula 1 Algoritmos e Fundamentos da


minutos
Programao:
Objetivos do Curso
Agenda do Curso
Algoritmos
Fundamentos da Programao

19/09/2017 3
Objetivos do curso

4
Algoritmos para Funcionais

Apresentar os principais conceitos de um Algoritmo


Introduzir os conceitos bsicos da Programao de Computadores
Habilitar o consultor funcional a definir a soluo de um problema
atravs de Algoritmos
Habilitar o consultor a rastrear e identificar os principais erros
encontrados em solues ABAP dentro do SAP

19/09/2017 5
5
Agenda do curso

6
Agenda
Aulas gravadas

1 Algoritmos e Fundamentos da Programao 30 minutos


2 Programao Bsica 30 minutos
3 Tpicos em Programao 30 minutos

Aulas presenciais para realizao de exerccios


3 aulas de 4 horas cada

19/09/2017 7
7
Algoritmos
Definio e aplicao

8
Definio formal

Sequncia finita de passos que levam a execuo de uma


determinada tarefa

Exemplos:
Receitas
Manuais
Instrues de Trabalho

19/09/2017 9
Caractersticas

Conjunto de Instrues
Quantidade finita
Apresentadas de forma clara e precisa
Obedecendo uma ordem lgica

Conjunto de Entradas
Todos os itens necessrios para a resoluo do problema

Conjunto de Sadas
Itens que so esperados aps a resoluo do problema

19/09/2017 10
Construo

Compreender corretamente o problema


Identificar os conjuntos de Entradas e Sadas
Definir os passos que produziro as Sadas esperadas
Construir o Algoritmo

Exemplo de problema:
Comprar uma porca

19/09/2017 11
Algoritmo para a compra

Entradas:
Dinheiro
Sadas:
Porca comprada

Passos:
Receber o dinheiro
Ir a loja de materiais de construo mais prxima
Escolher a porca mais barata para um parafuso de 50mm
Pagar em dinheiro
Se houver troco
Recolha o troco
Retornar com a porca comprada

19/09/2017 12
Representaes

Formas de apresentao de um algoritmo, visando uma melhor


compreenso

Principais formas:
Linguagem Natural
Fluxograma
Pseudo-cdigo

19/09/2017 13
Linguagem Natural

Utilizada at este ponto nos exemplos

Exemplo de Algoritmo para o clculo de mdia:


Receber as Notas
Som-las
Dividir pelo total de notas

19/09/2017 14
Fluxograma
Permite uma melhor visualizao da soluo

Exemplo de Algoritmo para o clculo de mdia:

19/09/2017 15
Pseudo-Cdigo
Forma mais prxima daquela que interpretada por uma mquina

Exemplo de Algoritmo para o clculo de mdia:


Calcula Mdia:
L Nota1
L Nota2
Mdia = ( Nota1 + Nota2 ) / 2
Mostra Mdia

19/09/2017 16
Fundamentos da Programao
Definio e aplicao
Definio

Linguagem Binria
nica forma de representao de instrues que pode ser processada por
uma mquina
Seu formato dificulta a utilizao por profissionais

Linguagem de Alto Nvel


Instrues padronizadas
Evita a necessidade dos profissionais utilizarem a Linguagem Binria
diretamente
Suas instrues sero traduzidas para a Linguagem Binria
Exemplos:
Java, ABAP, Pascal, C/C++ e etc.

19/09/2017 18
Programas e Nveis de Abstrao

Programas
Representao de um Algoritmo em uma determinada Linguagem que possa
ser interpretada por uma mquina

Nveis de Abstrao
Nvel de detalhamento dos passos para a resoluo do problema
Alto Nvel de Abstrao
Foco no problema abordado
Baixo Nvel de Abstrao
Foco nos detalhes tcnicos
Diferentes Nveis de Abstrao o principal problema na traduo entre
diferentes formas de representao

19/09/2017 19
Variveis

Uma rea de memria responsvel por armazenar dados


Dados utilizados em um programa devem ser armazenado em uma
varivel
Dados armazenados so acessados pelo nome da varivel

Caractersticas
Nome
Tipo

19/09/2017 20
Caractersticas

Nome
Identificador nico daquela rea de armazenamento
Deve ser formado por letras ou nmeros
Sempre deve ser iniciado por uma letra
Exemplos: media, nome, pi, fim

Tipo
Define o que pode ser armazenado na varivel

Tipo Exemplo
Inteiro 1235
Real 13.646
Carcter Pelissari
Lgico VERDADEIRO ou FALSO

19/09/2017 21
Declarao

Toda varivel deve ser declarada antes de sua utilizao


Deve se definir o nome e o tipo da varivel
As declaraes devem ocorrer em um ponto especfico
Bloco var

Exemplo
nome : caracter
media : inteiro
pi : real
fim : logico

19/09/2017 22
Atribuio

Toda varivel recm declarada no possui um valor armazenado


As atribuies de valores devem respeitar o tipo da varivel
Devem ocorrer junto as demais instrues do programa
Bloco inicio

Exemplo
nome <- Pelissari
media <- 30
pi <- 3.14
fim <- falso

19/09/2017 23
Delimitadores

Definem os principais blocos de um programa

Define o incio e o fim de um programa


algoritmo e fimalgoritmo
Define onde devem ser declaradas as variveis
var
Define onde devem iniciar as instrues do programa
inicio

algoritmo "nome_do_programa
var

inicio

fimalgoritmo

19/09/2017 24
Comandos Bsicos

Instruo de Entrada: leia


Recebe o valor digitado no teclado e atribui a varivel informada
A varivel deve ser informada dentro dos parnteses
Uma nica varivel deve ser informada

leia( nome )

Instrues de Sada: escreva e escreval


Escreve o valor da varivel ou o texto informado na tela
As variveis e os textos deve ser informada dentro dos parnteses
Separados por virgula

escreva( nome )
escreval( A mdia igual a , media )

19/09/2017 25
Comentrios

Comentrios no so interpretados pela mquina


Servem como documentao da soluo adotada
Toda linha iniciada por // considerada um comentrio

Exemplo:
//Recebe o nome do usurio
leia( nome )

19/09/2017 26
Primeiro Programa

algoritmo recebe_usuario
var
nome : caracter

inicio
//Recebe o nome do usurio
leia( nome )
escreva( "Ol ", nome, "!")

fimalgoritmo

19/09/2017 27
Resumo

28