Você está na página 1de 41

Instituto Federal de Minas Gerais

Campus Ouro Branco

Introdução a programação – Visão geral

Professor: Saulo Henrique Cabral Silva


Conceitos – lógica/algoritmo
• A lógica é usada no dia a dia das pessoas para solucionar
problemas de forma eficiente.

• Algoritmo representa de forma estruturada, uma sequência


de ações, que levam a um resultado esperado.
– Algoritmo: exercício de raciocínio (definir o problema).

– Técnicas de programação: exercício da implementação.

2
Vamos deixar tudo fácil…
• De forma genérica, a construção de um algoritmo se resume
as seguintes etapas:

1. Entendimento do problema;

3
Vamos deixar tudo fácil…
• De forma genérica, a construção de um algoritmo se resume
as seguintes etapas:

1. Entendimento do problema;

2. Elaboração da solução;

4
Vamos deixar tudo fácil…
• De forma genérica, a construção de um algoritmo se resume
as seguintes etapas:

1. Entendimento do problema;

2. Elaboração da solução;

3. Codificação da solução.

5
É importante sempre se lembrar que…
• Para cada ação ocorrer, é necessário que as ações anteriores
a esta já tenham sido executadas.

• Cada ação pode conter outros eventos associados (outros


algoritmos).

6
CAMINHO DAS LINGUAGENS DE
PROGRAMAÇÃO ATE AQUI...

7
Linguagens de Baixo Nível
• São Linguagens totalmente dependentes da máquina
(computador). Não é portável...
– Linguagem de máquina: Utiliza-se das operações fundamentais para o
seu funcionamento. Consiste na combinação de 0’s e 1’s para formar
os “comandos” entendíveis pelo processador da máquina.

– Linguagem Assembler: Derivação da Linguagem de máquina. Formada


por abreviaturas de letras e números (chamados de mnemotécnicos).
Esta linguagem foi prelúdio dos programas
tradutores de códigos implementados
em assembler para código de máquina.

Escovador de Bit!!!

8
Linguagens e Baixo Nível - exemplos

0x 60 00 00 80 IMM R0, 0x80


0x A4 00 00 00 LOAD R0, R0
0x 60 01 00 84 IMM R1, 0x84
0x A4 01 01 00 LOAD R1, R1
0x 60 02 00 00 IMM R2, 0x0
0x 60 03 00 04 IMM R3, 0x4
0x 60 04 00 00 STORE R0, R2
0x 08 00 00 02 ADD R0, R0, R3
0x 20 00 00 03
Código de máquina Código Assembler (mips variação simples)

9
Linguagens de alto nível
• São Linguagens que se encontram mais “próximas” à
linguagem natural.

• Aqui não nos preocupamos com a arquitetura (desenho e


instruções) dos processadores.
– Código parcialmente portável para várias plataformas.
Orientação a Objetos
• Terceira geração de Linguagens Nível 4
orientadas a objetos. Nível 3
Nível 2
Nível 1

10
Linguagens de alto nível

int r0 = 0, r1 = 0, r2 = 0, r3 = 0;
r0 = r2;
r0 = r0 + r3;

11
PORTUGOL – ESTRUTURA E O
PORQUE USAR???

12
Portugol - Estrutura
• É uma pseudolinguagem que permite ao programador pensar no
problema em si e não na tecnologia (linguagens/ frameworks) que serão
utilizadas para a construção/execução do algoritmo.

• Estrutura geral do portugol:

Programa {

funcao inicio ( ) {
...
COMANDOS SÃO INSERIDOS AQUI!!!!
...
}
}
13
http://lite.acad.univali.br/portugol
14
Portugol - Estrutura
• Declaração de variáveis
– É um local que armazena um tipo específico de
conteúdo.

– Contém um valor que se modifica durante a execução de um


programa.

– Possui um identificador (nome), que pode ser representado:

TIPO Identificador
15
Portugol - Estrutura

cadeia
inteiro: sem a parte decimal (idade)
real: números que exigem sua representação decimal (preço)
cadeia: nomes em geral (endereço)
logico: verdadeiro

16
Portugol – nunca faça!!!
• Não é possível definir variáveis de diferentes tipos com o
mesmo identificador.

• Tomar cuidado em relação a sintaxe da linguagem. Não é


possível ter identificadores com o nome de palavras
reservadas e caracteres de operações.

• Letras maiúsculas e minúsculas são


tratadas de forma diferente.

17
PORTUGOL – COMANDOS BÁSICOS

18
Portugol – comados básicos
• O comando de atribuição é utilizado para atribuir um valor a
uma variável.

• Para isso utilizamos o símbolo “ = ”

• X = 10

0x11FF 19
Portugol – comandos básicos
• A notação usada para expressões é basicamente a mesma
utilizada na matemática... Alguns operadores que usaremos
em breve:

– Aritméticos: + , - , = , * , / , %

– Lógicos: e, ou, nao

– Relacionais: == , != , > , >= , < , <=

20
Portugol – Operadores específicos
• Para operações mais específicas utilizamos o pacote
Matemática: inclua biblioteca Matematica --> mat

potencia = mat.potencia( base, potencia)


raiz_quadrada = mat.raiz ( radicando, indice)

• Existe ainda outra biblioteca que vamos utilizar


muito: Util
inclua biblioteca Util --> u

21
Portugol – Exemplos (como fazer…)
– Atribuição de expressões

programa {
funcao inicio () {
inteiro valor
inteiro x, y
x = 10
y=5
valor = x + y * 2
}
}

22
Portugol – Exercícios
• Desenvolva um algoritmo em portugol para dividir dois
valores inteiros (10 / 5). Para “treinar” utilize:
– 2 variáveis para armazenar os dois valores informados no enunciado...
– 1 variável para armazenar o resultado do calculo.

23
Portugol – Exercícios
• Desenvolva um algoritmo em portugol para somar dois
valores inteiros (10 / 5)

Programa {
funcao inicio ( ) {
inteiro x, y
real z
x = 10
y=5
z=x/y
}
}

24
Portugol – Exercícios
• Qual o valor de D, ao final do processo ?

logico a, b, c, d, y, z
a = verdadeiro
b = falso
c = falso
d = falso
y = falso
z = verdadeiro

d = (nao (a e b)) ou ((d e c) ou (y ou z))

25
PORTUGOL – ENTRADA E SAÍDA DE
DADOS

26
Portugol – Entrada e saída de dados
• Interação com dispositivos de entrada e saída.

• Um programa pode receber um dado informado através de


um comando de leitura.

• Também pode ser necessário conhecer o resultado de uma


determinada operação.

27
Portugol – Entrada e saída de dados
– Leia
inteiro x
leia (x)

– Escreva
escreva (“informacao”)
escreva(x)

28
EXEMPLO PARA SER SEMPRE
CONSULTADO

29
Exemplo para ser sempre consultado
• Calcular a soma de dois números informados pelo usuário:
– Etapa 1
Sabemos que vamos calcular a soma de dois números

30
Exemplo para ser sempre consultado
• Calcular a soma de dois números informados pelo usuário:
– Etapa 1
Sabemos que vamos calcular a soma de dois números

– Etapa2
Os dados necessários serão os dois valores, que colocaremos em duas
variáveis A e B, de tipo inteiro, e uma terceira...

31
Exemplo para ser sempre consultado
• Calcular a soma de dois números informados pelo usuário:
– Etapa 1
Sabemos que vamos calcular a soma de dois números

– Etapa2
Os dados necessários serão os dois valores, que colocaremos em duas
variáveis A e B, de tipo inteiro, e uma terceira...

– Etapa3
A obtenção dos dados é simples e direta pelo usuário

32
Exemplo para ser sempre consultado
• Calcular a soma de dois números informados pelo usuário:
– Etapa 1
Sabemos que vamos calcular a soma de dois números

– Etapa2
Os dados necessários serão os dois valores, que colocaremos em duas
variáveis A e B, de tipo inteiro, e uma terceira...

– Etapa3
A obtenção dos dados é simples e direta pelo usuário

– Etapa4
O processo será realizado pelo operador soma, e o resultado da operação
será armazenado na terceira variável.

33
Exemplo para ser sempre consultado
• Calcular a soma de dois números:
– Etapa 1
Sabemos que vamos calcular a soma de dois números

– Etapa2
Os dados necessários serão os dois valores, que colocaremos em duas variáveis A e
B, de tipo inteiro, e uma terceira...

– Etapa3
A obtenção dos dados é simples e direta pelo usuário

– Etapa4
O processo será realizado pelo operador soma, e o resultado da operação será
armazenado na terceira variável.

– Etapa5
Exibir o conteúdo da terceira variável.

34
Exemplo Soma
Inteiro x, y, soma
escreva(“Inserir dois números: ”)
leia (x)
leia (y)

soma = x + y
escreva (“A soma entre ”, x, “ + ”, y, “ = ”, soma)

35
Exercício 1
• Elaborar um programa para calcular o Montante final
(dinheiro final) de um capital inicial (dinheiro inicial) durante
n meses a uma taxa de juros i.

36
Exercício 1
• Elaborar um programa para calcular o Montante final (dinheiro
final) de um capital inicial durante n meses a uma taxa de juros i.

• 1 – entender o problema

• 2 – elencar as variáveis

• 3 – receber os dados

• 4 – calcular

• 5 – mostrar o resultado

37
Exercício 2
• Desenvolva um programa que calcule o volume de uma esfera
de raio r, fornecido pelo usuário.

38
Exercício 3
• Desenvolva um algoritmo para encontrar a média aritmética
entre 4 valores fornecidos pelo usuário...

N1 + N2 + N3 + N4 + ... Nm
Média =
m

39
Exercício 4
• Escreva um programa que receba a hora atual em horas,
minutos e segundos. Determinar quantos segundos passaram
desde o início do dia até a hora atual.

41

Você também pode gostar