sistemas operacionais - engenharia da computaçãozimmer/te207/12_mar_2015_te207_aulas_1 e 2... ·...
TRANSCRIPT
Técnicas de Programação em Engenharia Elétrica I
- Engenharia de Sistemas Embarcados -
Introdução aos Algoritmos
A única diferença entre o difícil e o impossível é que o último demora um
pouco mais de tempo para ser alcançado..
- Definição: Conjunto finito de regras que
fornece uma seqüência de operações para
resolver um problema específico.
Ou seja.. Seqüência de passos visando atingir um
objetivo bem definido.
Tarefas ordenadas logicamente.
Algoritmo
- Lógica serve para ordenar pensamentos e ações.
Exemplos:
1. Estudar para a prova
de programação;
2. Ato de dirigir;
3. Receita de bolo..
Lógica
O algoritmo é como uma receita de
bolo, ou seja, um conjunto de instruções
para a realização de uma tarefa
específica.
Algoritmos em Programação
Entrada Processamento Saída
Propriedades:
- Finitude ( tem que terminar!! );
- Objetivo ( bem definido );
- Entrada(s) ( do que eu preciso? );
- Saída(s) (o que irei produzir ? );
- Efetividade. (ações sem ambiguidade).
OBS: Deve ser composto por operações básicas..
Algoritmos
Entrada Processamento Saída
- Entrada de dados e informações para processamento;
- Expressões (aritméticas, algébricas, lógicas, relacionais);
- Testes (se EXPRESSAO VERDADEIRA então ...);
- Repetições;
- Saída de dados e informações processados (resultado);
Algoritmos – Operações Básicas
OBS: Resultados podem ser numéricos ou
mensagens na tela do computador,
telefone ou dispositivos, ou podem ser
comandos para controle de
equipamentos ou acessórios diversos.
Normalmente são uma combinação de
ambos.
Construção do Algoritmo
OBS: Muitos algoritmos referem-se a
manipulações numéricas (continhas).
Lembrem-se da origem da palavra
computação = computare = calcular !!
Construção do Algoritmo
Passos:
1. Verificar o objetivo;
2. Determinar a(s) entrada(s);
3. Determinar a(s) saída(s);
4. Determinar a(s) ações(ão);
5. Construir o algoritmo (definir a sequencia lógica das ações);
6. Testar o algoritmo (teste de mesa).
Algoritmos em Programação
Exemplos:
1 - Dado um número, imprimir o seu valor absoluto.
Resolução
Objetivo?
Entrada(s)?
Saída(s)?
Ações(ão)?
Sequencia das operações?
+ Teste de mesa..
Construção do Algoritmo
Exemplos:
2 – Dada a sua primeira nota e o número de faltas nesta disciplina, calcule quanto precisaria tirar para passar direto.
Resolução
Objetivo? Entrada(s)?
Saída(s)? Ações(ão)?Sequencia das operações?
+ Teste de mesa..
Construção do Algoritmo
Tarefas:
1 – Escreva um algoritmo para determinar o consumo de seu carro (em km/l).
Resolução?
Objetivo? Entrada(s)?
Saída(s)?
Ações(ão)?
Sequencia das operações?
+Teste de mesa
Construção do Algoritmo
Tarefas:
2 – Escreva um algoritmo para calcular e mostrar as raízes de uma equação do segundo grau.
Resolução?
Objetivo? Entrada(s)?
Saída(s)? Restrições(ão)?
Ações(ão)?
Sequencia das operações?
+Teste de mesa
Construção do Algoritmo
Tarefas:
3 – Escreva um programa que, dado um número decimal entre 0 a 15, mostre o número equivalente em binário.
Resolução?
Objetivo? Entrada(s)?
Saída(s)?
Ações(ão)?
Sequencia das operações?
+Teste de mesa
Construção do Algoritmo
Técnicas de Programação em Engenharia Elétrica I
- Engenharia de Sistemas Embarcados -
Pseudo Linguagem de Programação PORTUGOL
“Podemos escolher o que semear, mas somos obrigados a colher aquilo o que
plantamos”. Provérbio Chinês.
Pseudo-Linguagem
Linguagem de Programação?
Notação formal servindo para:
- Expressar um raciocínio lógico (algorítmico).
- Execução automática de um algoritmo no
computador.
Pseudo-Linguagem
Pseudo-Linguagem?
Conjunto básico de primitivas que permitem a
descrição de um algoritmo destinado a
resolver um problema, fazendo a abstração
do sistema no qual será processado.
Intermediário entre a linguagem de
programação e o algoritmo.
Ex:
Algoritmo.. Fluxograma.. Portugol.. C
PORTUGOL
Portugol é uma pseudo-linguagem de
programação originada da mistura
entre o Português, o Algol e o Pascal.
Portugol – Estrutura Básica
Blocos e Comandos Básicos de Controle:
INICIO
< declarações de variáveis > ;
< comandos > ;
FIM.
Variáveis – Tipos Básicos
INTEIRO: Qualquer número inteiro positivo, negativo ou nulo (0, -2, 310, etc.).
REAL: Qualquer número real positivo, negativo ou nulo (3.2, -4.5, 0.03, etc.).
CARACTERE: Qualquer conjunto de caracteres alfanuméricos (“professor”,”federal”, etc.).
LÓGICO: Valores FALSO ou VERDADEIRO, resultado de comparações ou proposições lógicas.
Variáveis - Composição
Nomes de Variáveis (identificadores)
Formados por uma letra seguida de uma
seqüência de letras e/ou dígitos.
Variáveis - Declaração
Toda variável deve ser declarada antes do uso.
Declaração:
Indicar o tipo da variável, seguida do(s) nome(s)
desejado(s)
Sintaxe:
TIPO : nome 1 , nome 2, ... , nome n ;
Variáveis - Declaração
Exemplos :
INTEIRO: a, x1, k39, temp, contador;
REAL: a, b, salario;
Portugol – Comandos Básicos
Comando (Operador) de Atribuição ()
Sintaxe:
NOME VALOR ;
Onde NOME é nome desejado para a
variável e VALOR é um valor constante, uma
variável ou resultado de expressão/ função.
Portugol – Comandos Básicos
OBS: ( ; ) – Terminador de comando
obrigatório em Portugol (e em C).
Operadores
- Aritméticos.
- Lógicos.
- Relacionais.
- Outras expressões.
Portugol – Comandos Básicos
Precedência das Operações
Parênteses e funções (da esq. p/a
direita).
+ - (unários), ** , * , / , + - (binários).
, , = , , , .
NÃO , E , OU .
Portugol – Comandos Básicos
Precedência das Operações
Exemplo:
INICIO
INTEIRO: delta, b , a , c ;
delta b ** 2 – 4 * a * c ;
Média 3 + 2 / 2 ;
Média ( 3 + 2 ) / 2 ;
FIM.
Portugol – Comandos Básicos
Seqüência Simples
INICIO
< comando 1 > ;
< ... > ;
< comando n > ;
FIM.
Portugol – Comandos Básicos
Alternativa Simples
SE < condição >
ENTÃO
< comando 1 > ;
< ... > ;
< comando n > ;
FIMSE ;
Portugol – Comandos Básicos
Alternativa Simples
Ex:
SE ( idade < 18 )
ENTÃO
situaçãoLegal “menor” ;
FIMSE ;
Portugol – Comandos Básicos
Alternativa Composta
SE < condição >
ENTÃO
< comando 1 > ;
< ... > ;
< comando n > ;
SENÃO
< comando 1 > ;
< ... > ;
< comando n > ;
FIMSE ;
Portugol – Comandos BásicosAlternativa Composta
Exemplo:
SE ( peso < 100 )
ENTÃO
físico “magro” ;
SENÃO
físico “gordo” ;
FIMSE ;
Portugol – Comandos Básicos
Entrada / Saída
LEIA ( valor 1 , valor 2, ... , valor n ) ;
Onde valor 1, ... , valor n são nomes de
variáveis.
IMPRIMA ( valor 1 , valor 2, ... valor n ) ;
Onde valor 1, ... , valor n são variáveis,
constantes ou expressões/funções.
Portugol – Comandos Básicos
Repetição
ENQUANTO < condição > FAÇA
< comando 1 > ;
< ... > ;
< comando n > ;
FIMENQUANTO ;
Repetição
Ex:
x 0 ;
ENQUANTO ( x < 10 ) FAÇA
IMPRIMA ( x * 2 ) ;
x x + 1 ;
FIM ENQUANTO ;
Portugol – Comandos Básicos
Portugol – Implementações
Exemplo de Tradutor:
VisualG v 2.0
Apoio Informática
Portugol – Comandos Básicos
Próxima aula..
Exemplos e exercícios.