Você está na página 1de 38

PC

PROGRAMAÇÃO DE
COMPUTADORES
(Teoria)

Aula 01

Prof. Ricardo Veras


(prof.rveras@gmail.com)
ALGORITMOS

"Seqüência ordenada de passos, que deve ser seguida para a


realização de um tarefa"

"Algoritmo é um conjunto finito de regras sequenciais bem


definidas, para a solução de um problema em um tempo finito, e
com um número finito de passos."

Obs.:
Algoritmos não se aprendem:
– Copiando algoritmos
– Estudando algoritmos
Algoritmos só se aprendem:
– Construindo algoritmos
– Testando algoritmos
ALGORITMOS

Formas de representação de algoritmos:


- Descrição Narrativa;
- Fluxograma;
- Pseudocódigo (Linguagem Estruturada, Português
Estruturado ou Portugol);

Dependendo da forma de representação utilizada, é possível


especificar com mais ou menos riqueza de detalhes, a
operação (negócio) descrita pelo algoritmo.
ALGORITMOS

Descrição Narrativa:

... os algoritmos são expressos diretamente em


linguagem natural.

Exemplos:

Troca de um pneu furado Cálculo da média de um aluno


Passo 1 – Afrouxar ligeiramente as porcas Passo 1 – Obter as notas da primeira e
Passo 2 – Suspender o carro da segunda prova
Passo 3 – Retirar as porcas e o pneu Passo 2 – Calcular a média aritmética
Passo 4 – Colocar o pneu reserva entre as duas
Passo 5 – Apertar as porcas Passo 3 – Se a média for maior ou igual
Passo 6 – Abaixar o carro a 7, o aluno foi aprovado, senão ele foi
Passo 7 – Dar o aperto final nas porcas reprovado

Obs.: cada passo pode ser detalhado em diversos outros passos,


aumentando a riqueza de detalhes do algoritmo
ALGORITMOS

Fluxograma (ou Diagrama de Blocos)

... É uma representação gráfica, onde Formas Geométricas


diferentes implicam Ações (instruções, comandos) distintas.

Exemplo:
Obs.: cada símbolo
representa uma ação, e as
setas, a ordem de execução
das ações.
ALGORITMOS
Símbolos de um Fluxograma:
ALGORITMOS
Símbolos de um Fluxograma (cont.):
ALGORITMOS

Pseudocódigo
...é uma forma genérica de escrever um algoritmo, utilizando
linguagem simples, de forma a ser entendido por qualquer
pessoa, sem a necessidade de se conhecer uma linguagem de
programação.

Exemplo:
Algoritmo Media
Var N1, N2, Media Obs.: é bastante rica em
Início detalhes, e assemelha-se à
Leia N1, N2 forma em que os programas
Media := (N1+N2)/2 serão escritos.
Se Media >= 7 Entao
Escreva “Aprovado”
Senao
Escreva “Reprovado”
Fim.
ALGORITMOS

Assim:
No processo de criação de um Algoritmo,
tenha sempre em mente:

1.Entenda o problema.
2.Verifique quais dados são necessários para
garantir a resolução do problema.
3.Analise qual será a resposta dada de acordo
com o que foi pedido, e como ela deve ser
processada e apresentada.
ALGORITMOS

Exercícios:
Crie um Algoritmo Descritivo que elenque os
passos para:

1 - Ir de Casa para o Shopping;

2 - Enviar um E-Mail;

3 - Escanear uma Imagem;


EXERCÍCIO

1 - Ir de Casa para o Shopping

Passo 1 - Abrir a porta, sair de casa e fechar a porta.


Passo 2 - Caminhar até o ponto de ônibus.
Passo 3 - Pegar o ônibus que passa próximo ao
shopping.
Passo 4 - Descer do ônibus no ponto mais próximo
do shopping.
Passo 5 - Caminhar até o shopping.
Passo 6 - Entrar no shopping.
EXERCÍCIO

2 - Enviar um E-Mail

Passo 1 - Ligar o Computador.


Passo 2 - Acionar o programa que acessa a Internet.
Passo 3 - Abrir o site de e-mail.
Passo 4 - Entrar com o nome e a senha do Usuário.
Passo 5 - Clicar sobre o botão "Nova Mensagem".
Passo 6 - Escrever a mensagem.
Passo 7 - Clicar no botão "Enviar".
EXERCÍCIO

3 - Escanear uma Imagem

Passo 1 - Ligar o Computador.


Passo 2 - Ligar o Scaner.
Passo 3 - Colocar a imagem no Scaner.
Passo 4 - Acionar o programa que recebe os dados
no Scaner.
Passo 5 - Clicar no botão que inicia a fase de
"escaneamento".
Passo 6 - Guardar a imagem "escaneada" em algum
diretório.
ALGORITMOS

Representação de Um Algoritmo na Forma de


Pseudocódigo

Algoritmo <nome_do_algoritmo>
Var
<declaração_de_variáveis>
<subalgoritmos>
Início
<corpo_do_algoritmo>
Fim.
ALGORITMOS

Exemplo:

Algoritmo Media
Var
N1, N2, Media: Real
Início
Leia N1, N2
Media := (N1+N2)/2
Se Media >= 7 Então
Escreva "Aprovado"
Senão
Escreva "Reprovado"
Fim_se
Fim.
ALGORITMOS

TIPOS DE DADOS

Todo o trabalho realizado por um computador é baseado na


manipulação das informações contidas em sua memória. Estas
informações podem ser classificadas em dois tipos:

– As instruções, que comandam o funcionamento da máquina e


determinam a maneira como devem ser tratados os dados.

– Os dados propriamente ditos, que correspondem à porção das


informações a serem processadas pelo computador.
TIPOS DE DADOS

Tipos Inteiros

São os dados numéricos positivos ou negativos (exclui-se


destes, qualquer número fracionário). Como exemplo deste tipo
de dado, tem-se os valores: 35, 0, -56, 1024 entre outros.

Tipos Reais

São os dados numéricos positivos e negativos e números


fracionários. Como exemplo deste tipo de dado, tem-se os
valores: 35, 0, -56, 1.2, -45.987 entre outros.
(obs.: percebam que na caracterização dos números reais
utilizamos o "ponto" como separação decimal)
TIPOS DE DADOS

Tipos Caracteres

São as seqüências contendo letras, números e símbolos


especiais. Uma sequência de caracteres deve ser indicada entre
aspas (""). Este tipo de dado também é conhecido como
alfanumérico, string, literal ou cadeia. Como exemplo deste tipo
de dado, tem-se os valores: "Programação", "Rua Alfa, 52 Apto
1", "Fone 574-9988", "04387-030", " ", "7" entre outros.

Tipos Lógicos

São os dados com valor verdadeiro e falso, sendo que este


tipo de dado poderá representar apenas um dos dois valores.
Ele é chamado por alguns de tipo booleano, devido à
contribuição do filósofo e matemático inglês George Boole na
área da lógica matemática.
VARIÁVEIS

Para armazenar os dados na memória, imagine que a memória de um


computador é um grande arquivo com várias gavetas, onde cada
gaveta pode armazenar apenas um único valor (seja ele numérico,
caractere ou lógico). Se é um grande arquivo com várias gavetas, é
necessário identificar com um nome a gaveta que se pretende utilizar.

Informações correspondentes a diversos tipos de dados são


armazenadas nas memórias dos computadores. Para acessar
individualmente cada uma destas informações, em princípio, seria
necessário saber o tipo de dado desta informação (ou seja, o número
de bytes de memória por ela ocupados) e a posição inicial deste
conjunto de bytes na memória.

Assim, uma variável é uma entidade destinada a guardar uma


informação.

Basicamente, uma variável possui três atributos: um nome, um tipo


de dado associado à mesma e a informação por ela guardada.
VARIÁVEIS

Adotaremos para os algoritmos, as seguintes regras:

- um nome de variável deve necessariamente começar com uma letra;


- um nome de variável não deve conter nenhum símbolo especial,
exceto a sublinha (_), ou "underline", e nenhum espaço em branco;
- um nome de variável não poderá ser uma palavra reservada a uma
instrução de programa.

Exemplos de nomes de variáveis:

Salario – correto
1ANO – errado (não começou uma letra)
ANO1 – correto
a casa – errado (contém o caractere branco - "espaço")
SAL/HORA – errado (contém o caractere “/”)
SAL_HORA – correto
_DESCONTO – errado (não começou com uma letra)
leia – errado (é uma palavra reservada de instrução)
VARIÁVEIS

Definição de Variáveis em Algoritmos

Todas as variáveis utilizadas em algoritmos devem ser definidas antes


de serem utilizadas. Isto se faz necessário para permitir que o
compilador reserve um espaço na memória para as mesmas.
Nos algoritmos, todas as variáveis utilizadas serão definidas no início
do mesmo, por meio de um comando de uma das seguintes formas:

VAR
<nome_da_variável> : <tipo_da_variável>
<lista_de_variáveis> : <tipo_das_variáveis>

Obs.:
- Numa mesma linha poderão ser definidas uma ou mais variáveis
("<lista_de_variáveis>") do mesmo tipo. Neste caso, deve-se separar
os nomes das mesmas por vírgulas;
- Variáveis de tipos diferentes devem ser declaradas em linhas
diferentes.
VARIÁVEIS

Exemplo:

VAR
nome: caracter[30]
idade, qtdPessoas, qtdAreas: inteiro
salario: real
tem_filhos: lógico
OPERADORES

Operadores são elementos fundamentais que atuam sobre operandos e


produzem um determinado resultado. Por exemplo, a expressão 3 + 2
relaciona dois operandos (os números 3 e 2) por meio do operador (+)
que representa a operação de adição.

Operadores de Atribuição

Um operador de atribuição serve para atribuir um valor a uma variável.


Em Algoritmo usamos o operador de atribuição:
:=

A sintaxe de um comando de atribuição é:


Nome_da_Variável := expressão
OPERADORES

Operadores Aritméticos
Os operadores aritméticos se relacionam às operações aritméticas
(matemáticas) básicas, conforme a tabela abaixo:
OPERADORES

Expressões Aritméticas

Toda Expressão Aritmética deverá ser linearizada quando escrito em


uma linha de comando (linha de um programa de computador).

Ex.:

A expressão: −b+ b 2 − 4 ac
x1 =
2a

Deverá ser escrita da seguinte forma:

x1 = (-b + (b**2 - 4*a*c)**(1/2)) / 2*a

Obs.: atenção à utilização de parênteses.


OPERADORES
Operadores Literais

Os operadores que atuam sobre caracteres variam muito de uma linguagem


para outra. O operador mais comum, e mais usado, é o operador que faz a
concatenação (união) de strings: toma-se duas strings e acrescenta-se
(concatena-se, uni-se) a segunda ao final da primeira.

O operador que faz esta operação é:


+ (sinal de mais) ou , (vírgula)

Por exemplo, a concatenação das strings "ALGO" e "RITMO" é representada por:


"ALGO" + "RITMO" e o resultado de sua avaliação é: "ALGORITMO"
Obs.: em concatenação de cadeia de caracteres, a expressão:
"23" + "45"
resulta em "2345"
Para se obter a soma dos valores, deve-se trabalhar com valores
numéricos (23 + 45 = 68 -> sem as aspas, e com tipos numéricos)

A concatenação usada em comandos de saída será com a vírgula.


Ex.:
Escreva ("Valor de x = ", x)
OPERADORES
Comandos de Entrada de Dados

Os comandos de entrada de dados são o meio pelo qual as informações dos


usuários são transferidas para a memória dos computadores, para que possam
ser usadas nos programas.

No diagrama de blocos o comando de entrada de dados é representado por:

= Operação de Entrada de Dados

Há duas sintaxes possíveis para esta instrução:

LEIA <variável>
Ex: LEIA X

LEIA <lista_de_variáveis>
Ex: LEIA nome, endereco, cidade
OPERADORES
Comandos de Saída de Dados

Os comandos de saída de dados são o meio pelo qual informações contidas na


memória dos computadores são colocadas nos dispositivos de saída (Monitor,
Impressora, etc...), para que os usuários possam apreciá-las.

No diagrama de blocos o comando de saída de dados é representado por:

= Operação de saída de dados em impressora

= Operação de saída de dados em vídeo


OPERADORES
Comandos de Saída de Dados (cont.)

Há quatro sintaxes possíveis para esta instrução:

ESCREVA (<variável>)
Ex: ESCREVA (X)

ESCREVA (<lista_de_variáveis>)
Ex: ESCREVA (nome, endereco, cidade)

ESCREVA (<literal>)
Ex: ESCREVA ("Algoritmo é o máximo!")

ESCREVA (<literal>, <variável>, ... ,<literal>, <variável>)


Ex: ESCREVA ("Meu nome é: ", nome, " e meu endereço é: ", endereco)
EXERCÍCIOS

1- Crie um programa em Diagrama de Blocos (Fluxograma) e em


Português Estruturado que...:

a. ...calcule e mostre a soma dos três números.

b. ...peça duas notas de um aluno. Os pesos correspondentes destas


notas devem ser: 6 e 4. Calcule e mostre a média ponderada dessas
notas.

c. ...peça o salário de um professor, calcule e mostre o novo salário


sabendo-se que este teve um aumento de 10%.

d. ...peça o salário de um empregado e o percentual de desconto que


ele terá que descontar de seu salário para pagar seu plano médico,
calcule e mostre o valor a ser pago e o novo salário com desconto.
EXERCÍCIOS

a. ...calcule e mostre a soma dos três números.

Algoritmo Soma
Var
n1, n2, n3, soma: inteiro
Início
Escreva ("Entre com os três números...")
Leia n1, n2, n3
soma := n1+n2+n3
Escreva ("A soma dos números é: ", soma)
Fim.
EXERCÍCIOS

a. ...calcule e mostre a soma dos três números.

INÍCIO

N1, N2, N3

SOMA=N1+N2+N3

SOMA

FIM
EXERCÍCIOS

b. ...peça duas notas de um aluno. Os pesos correspondentes


destas notas devem ser: 6 e 4. Calcule e mostre a média
ponderada dessas notas.

Algoritmo Media
Var
n1, n2, media: real
Início
Escreva ("Entre com as duas notas...:")
Leia n1, n2
media := (n1*6 + n2*4)/10
Escreva ("A média é: ", media)
Fim.
EXERCÍCIOS

b. ...peça duas notas de um aluno. Os pesos correspondentes


destas notas devem ser: 6 e 4. Calcule e mostre a média
ponderada dessas notas.

INÍCIO

N1, N2

MEDIA=(N1*6 + N2*4)/10

MEDIA

FIM
EXERCÍCIOS

c. ...peça o salário de um professor, calcule e mostre o novo


salário sabendo-se que este teve um aumento de 10%.

Algoritmo Salario
Var
sal, novoSal: real
Início
Escreva ("Entre com o salário do professor...")
Leia sal
novoSal := sal*1.1
Escreva ("Novo salário = ", novoSal)
Fim.
EXERCÍCIOS

c. ...peça o salário de um professor, calcule e mostre o novo


salário sabendo-se que este teve um aumento de 10%.

INÍCIO

SAL

NOVOSAL=N1*1.1

NOVOSAL

FIM
EXERCÍCIOS
d. ...peça o salário de um empregado e o percentual de desconto que ele
terá que descontar de seu salário para pagar seu plano médico,
calcule e mostre o valor a ser pago e o novo salário com desconto.

Algoritmo Salario
Var
sal, percDesc, valPago, novoSal: real
Início
Escreva ("Entre com o salário do empregado...")
Leia sal
Escreva ("Entre com o percentual de desconto...")
Leia percDesc
valPago := sal * (percDesc / 100)
novoSal := sal - valPago
Escreva ("Valor a ser pago = ", valPago)
Escreva ("Novo salário = ", novoSal)
Fim.
EXERCÍCIOS
d. ...peça o salário de um empregado e o percentual de desconto que ele
terá que descontar de seu salário para pagar seu plano médico,
calcule e mostre o valor a ser pago e o novo salário com desconto.

INÍCIO

SAL, PERCDESC

PERCDESC=SAL*(PERCDESC/100)

NOVOSAL=SAL-PERCDESC

NOVOSAL

FIM

Você também pode gostar