ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO
Algoritmos Conceitos Iniciais
Prof. Luiz Fernando Laguardia Campos
FMS
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
Compilação/Interpretação
Um compilador ao receber como entrada um programa fonte fornece como saída um programa escrito em linguagem de maquina, chamado programa objeto. A compilação do programa, portanto, gera um programa que pode então ser executado.
Já um interpretador traduz para a linguagem de maquina os comandos do programa um a um, executando-os em seguida. Assim a interpretação de um programa não gera um programa objeto, portanto não podendo ter um executável.
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
SINTAXE / SEMÂNTICA
Sintaxe é estrutura que é colocada a linha de comando de acordo com a linguagem utilizada. Ou seja um comando escrito de forma errada, gera-se um erro de Sintaxe após compilação do mesmo;
Semântica é quando a lógica utilizada em uma determinada linha de comando não produz o resultado real esperado. Ou seja o programa executa normalmente, sem erro de sintaxe, mas, porém seu resultado é incorreto. Este é chamado o erro de lógica.
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
Posição de memória no computador que
armazena um determinado valor. Nome das Variáveis: cada linguagem de
programação tem suas próprias regras para a formação do nome de uma variável. Normalmente, o nome de uma variável pode ser composto por letras, dígitos e o caracter sublinhado ( _ ), sendo que o primeiro caracter deve ser uma letra. Não pode ter acentos, cedilha e etc…
Tipos de Variáveis: cada variável utilizada em um algoritmo, deverá ser declarada de um determinado tipo, de acordo com o tipo de valor que ela pode armazenar.
VARIÁVEIS
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
VARIÁVEIS
TIPO DA
VARIÁVEL
VALORES
CABIVEIS
NOME
Inteiro (int) 17 -5 +90 0 Numero
Real (float) 4.5 1200.93 -
0.00005 +15.0 0.0
Altura
Caracter (char) ‘x’ ‘*’ ‘R’ ‘r’ ‘5’ ‘
’ ‘’
Letra
String (String) : ‘Sistemas de
Informação’ ‘1234’
Nome
Lógicos Verdadeiro (TRUE)
Falso (FALSE)
Situacao
Vetor (‘23456’,’branco’,’ve
rmelho’)
Vetor
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
EXEMPLO DE UM ALGORÍTIMO
Algoritmo Media_Aritimetica
Variáveis
ValorA, ValorB, ValorC, Soma : inteiro
Media : Real
Início
Leia ValorA
Leia ValorB
Leia ValorC
Soma ← ValorA + ValorB + ValorC
Media ← Soma / 3
Escreva Media
Fim
#include <stdio.h> #include <stdlib.h> //Algoritmo Media_Aritimetica int main(int argc, char *argv[]) { float ValorA, ValorB, ValorC, Soma,Media; scanf ("%f",&ValorA); scanf ("%f",&ValorB); scanf ("%f",&ValorC); Soma=ValorA + ValorB + ValorC; Media=Soma / 3; printf ("%f",Media); system("PAUSE"); return 0; }
PSEUDO CÓDIGO LINGUAGEM C
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
OPERADORES
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
OPERADORES
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
O que estiver entre parênteses
Exponenciação ^
NOTA: No caso da linguagem C ou C++ entre outras iremos utilizar uma
função para realização de exponenciação. Veremos isto mais a frente.
Multiplicação, ou divisão real, ou divisão inteira
Adição ou subtração
Operadores relacionais:
Operador lógico de negação
Operadores lógicos E e OU
Hierarquia das Operações
Importante: quando aparecem duas ou mais operações de mesma
hierarquia, estas são executadas na ordem em que as mesmas
aparecem na expressão, da esquerda para a direita.
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
2 + a Y = --------- – 2x + x3 b - 3
Resposta: Y = (2 + a) / (b – 3) – 2*x + x^3
NOTA: No caso da linguagem C ou C++ entre outras iremos utilizar uma função para realização de exponenciação. Veremos isto mais a frente.
EXEMPLOS
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
EXEMPLOS
A B C X
Variáveis
A, B: float
C, X: int
? ?
? ?
Início
A=6.0
B=3.0
C=11
X=C/4
C=C%2
B=5.4
C=C + 1
A=B + 2
6.0
7.4
6.0
6.0
6.0
6.0
6.0
6.0
? ?
?
? ? 3.0
3.0
3.0
3.0
5.4
5.4
5.4
11
11
1
1
2
2
2
2
2
2
2
? ?
?
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
EXERCÍCIO 01
Quais os valores das expressões a seguir:
2 + 3*6
12 / 3 * 2 - 5
31 / 4
31/4
31%4
9 ^ (1/2)
16 ^ 0
Resposta: 20
Resposta: 3
Resposta: 7.75
Resposta: 7
Resposta: 3
Resposta: 3
Resposta: 1
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
EXERCÍCIO 03
Considerando a, b, c, d como variáveis, escreva os comandos para
calcular o valor de x das fórmulas a seguir.
b
---------- + 4a
a + c
x = ----------------------
d – 2a
-----------
3 + c
-b -b3 - 4ac + 2a2
x = -------------------------------
2a
-----------
(b + 1)2
x = (b / (a + c) + 4*a) / ( (d – 2*a) / (3 + c) )
x = (- b – b^3 – 4*a*c + 2*a^2) / (2*a / (b + 1)^2)
ENGENHARIA DE PRODUÇÃO – PROGRAMAÇÃO
Prof. Luiz Fernando L. Campos - FMS
EXEMPLO Q W R E
Variáveis
Q, W, R: Int
E: Float
? ?
? ? ? ?
Início
Q=10
Q=10 + 30
W= -1 W=W + Q
Q=Q % W
E=2 * Q/W
R=0
R=R + 1
40
0
40
40
0
0
1
0
? ? ?
?
? ? -1
39
39
39
39
39
39
?
?
?
?
1
0
?
0.0
0.0
?
0.0
?
Q = W /(Q + W)
R=R + 1
10
0
?
39 2
? ?
0.0