Você está na página 1de 28

Unidade 1

Introdução
aos
Algoritmos
Disciplina Laboratório de Programação I
Profª Me. Renata Cristina Laranja Leite
Processamento de dados

Objetivos
Lógica e Lógica de programação

da aula Algoritmo

Programa

Teste de Mesa

2
Processamento de
Dados
Conceito: consiste em obter os
dados adequados, efetuar os
procedimentos necessários e
apresentar o resultado desejado.

3
Lógica
• Aristóteles foi o criador da lógica. A palavra lógica
é originária do grego logos, que significa
linguagem racional.
• “Lógica é a análise das formas e leis do
pensamento.” (Michaelis).
Logo, lógica
Não se preocupa com a produção do pensamento,
mas sim, com a maneira que um pensamento ou ideia
é organizado e apresentado.

É por meio do encadeamento dos argumentos de uma


ideia ou pensamento que se chega a uma conclusão.
4
“Incrível, ele é tão veloz quanto um gato morto.”
“Arroz de trás para frente é a mulher do Zorro.”
“A morte é uma coisa que acaba com a vida da gente.”
“A primeira vez que te vi tive a impressão de que nunca
Exemplo de tinha te visto.”
“Estava com tanto sono que fiquei com preguiça de
frases sem dormir!”

lógica
Mais: https://www.42frases.com.br/frases-sem-sentido/

5
Exemplo de coisas sem lógica

6
Lógica de Programação
É a técnica de encadear pensamentos para
atingir determinado objetivo.
Estes pensamentos podem ser descritos como uma
sequência de instruções, que devem ser seguidas para se
cumprir uma determinada tarefa.
Instruções é um conjunto de regras ou normas definidas
para a realização de algo. Em informática, é o que indica a
um computador uma ação a executar.
Instrução Instrução Instrução
1 27 3
Lógica de Programação
A lógica de programação é necessária para
pessoas que desejam trabalhar com
desenvolvimento de sistemas e programas.

8
Algoritmo
• Um algoritmo é uma sequência lógica de instruções que
devem ser seguidas para a resolução de um problema
ou para a execução de uma tarefa.
• Os algoritmos são amplamente utilizados na área da
computação para:
• Soluções voltadas à construção de interfaces: softwares e hardware;
• Planejamento de redes de computadores;
• Documentação de sistemas – descrevem as tarefas a serem realizadas pelos
programas.

• No dia-a-dia as pessoas utilizam-se de algoritmos de


maneira intuitiva:
• Para um cozinheiro preparar um bolo;
• Um motorista para fazer a troca de um pneu furado;
• Acordar cedo e ir para a faculdade
9
Escrevendo um Algoritmo
Estas tarefas não podem ser redundantes nem
subjetivas na sua definição, devem ser claras e
precisas. Por exemplo:
“Somar dois números quaisquer”
1º Escreva o primeiro número no retângulo A
2º Escreva o segundo número no retângulo B
3º Some o número do retângulo A com número
do retângulo B e coloque o resultado no
retângulo C

10
Exemplo de um Algoritmo
Vemos que para conseguir o coquetel é necessário seguir
uma série de passos detalhadamente especificados.

Algoritmo é a série de instruções, numa certa


sequência, necessária para descrever as operações que
levam à solução
11 de um problema.
Tipos de Representação de Algoritmos mais
Conhecidos
DESCRIÇÃO NARRATIVA
Nesta forma de representação os algoritmos são expressos
diretamente em linguagem natural.
Exemplo:
1. Guardar N = 0 e SOMA = 0
2. Ler número qualquer e guardar em NUMERO
3. Somar valor guardado em NUMERO ao de SOMA e guardar
resultado como novo valor de SOMA
4. Somar 1 ao valor de N e guardar resultado como novo N
5. Se valor de N for menor que 5, então ir para o item 2
6. Senão imprimir valor de SOMA
7. Parar

12
Tipos de Representação de Algoritmos
mais Conhecidos (cont.)
PSEUDOCÓDIGO (PORTUGOL)
Esta forma de representação de algoritmos é rica em detalhes,
como a definição de tipos de variáveis usadas no algoritmo e,
por assemelhar-se bastante à forma em que os programas são
escritos.

13
Tipos de Representação
de Algoritmos mais
Conhecidos (cont.)
FLUXOGRAMA
A sequência de símbolos do
fluxograma representa a sequência
lógica das instruções do programa.
Cada símbolo tem seu significado,
com isso facilita a leitura e
compreensão do algoritmo.

14
Exemplos de
Fluxogramas

15
16
Vamos
escrever
algoritmos!!!

17
Exercício de fixação
Escreva um algoritmo na
representação de Descrição Narrativa
para:
a) Trocar um pneu furado de um
carro;
b) Trocar uma lâmpada queimada de
uma casa.

18
Por que existe a necessidade de construirmos
um algoritmo
Resposta: Porque ele será o texto do futuro programa.

O programa é uma relação homem-máquina, enquanto o


algoritmo constitui uma relação homem-homem.

19
Programa
• É um conjunto de instruções que colocadas numa
sequência lógica, "dizem" ao computador o que fazer.
Ou
• É uma série de instruções perfeitamente legíveis pelo
computador, ordenadas sequencialmente visando à
realização de um determinado trabalho ou à solução
de um problema de maneira confiável, útil e
oportuna.
Essa definição é semelhante à do algoritmo, com a
diferença de que o programa, em vez de utilizar uma
linguagem humana, emprega uma linguagem inteligível
para a máquina. 20
Exemplo de um programa em C#
class Program
{
static void Main(string[] args)
{
int numero;
int cont=0;
double soma=0;
Console.WriteLine("digite um número positivo ou -1 para parar");
numero = int.Parse(Console.ReadLine());
while (numero != -1)
{
soma += numero; // ou soma = soma + numero;
cont++; //ou cont = cont + 1;
Console.WriteLine("digite um número positivo ou -1 para parar");
numero = int.Parse(Console.ReadLine());
}
Console.WriteLine("a media é " + (soma / cont));
Console.ReadLine();
}
}
Exemplo de um programa em Python

estoque = []
x = int(input("Quantos produtos você deseja ter no estoque? "))
print(" ")
for produto in range(0,x):
produto = input("Insira o nome do produto: ")
estoque.append(produto)
print (" ")
print("Este é o seu estoque: " + str(estoque))
Conclusão sobre Programa
PROGRAMA = ALGORITMO + ESTRUTURA DE DADOS
Autor da frase: Niklaus E. Wirth

Estrutura de Dados é a forma na qual os dados são


organizados. Representam a organização dos dados que
serão transformados em informações durante a execução
de um algoritmo.

Exemplos: vetor, matriz, registro, lista, fila, pilha,


árvores, etc.
23
Principais Tipos
de Programas
• Programas Lineares: o
andamento da execução do
programa obedece à mesma
ordem em que foram
escritas as instruções.

24
Principais Tipos
de Programas
(cont.)
• Programas Cíclicos: são
programas que contém um
grupo de instruções que irão
repetir-se certo número de
vezes e que,
consequentemente, tem que
conter instruções de
bifurcação ou transferência
de controle.

25
Principais Tipos
de Programas
(cont.)
• Programas Alternativos: são
os que podem enveredar por
diversos caminhos, conforme
os valores assumidos por
certas variáveis, seja na
entrada de dados, seja em
qualquer momento de
execução.

26
Teste de Mesa

Para que serve?


O teste de mesa serve para verificar se o
algoritmo desenvolvido está correto.

Como fazer o Teste de Mesa?


Coloque do lado do algoritmos todas as
variáveis que são usadas por ele e seus
valores iniciais, depois percorra as
instruções executando-as e modificando os
valores das variáveis conforme as
instruções. Ao final, observe se o algoritmo
alcançou seu objetivo.

Para saber mais sobre Teste de Mesa acesse: https://pt.stackoverflow.com/questions/220474/o-que-


%C3%A9-um-teste-de-mesa-como-aplic%C3%A1-
lo#:~:text=O%20Teste%20de%20Mesa%20ou,programa%20ou%20o%20programa%20todo.
Fim desta
parte!!!

Você também pode gostar