Este documento fornece um resumo introdutório sobre lógica de programação para alunos do curso de Engenharia de Produção no CEDERJ. Aborda conceitos como algoritmos, variáveis, estruturas de repetição e desvio condicional, além de estruturas de dados como vetores, matrizes e funções recursivas. O objetivo é apresentar os principais tópicos da disciplina de forma concisa.
arte retrato de um povo - Expressão Cultural e Identidade Nacional
Resumo computação I
1. Computação I - CEDERJ
(Introdução a lógica de programação)
Tutor Érick Barbosa
(Material não oficial)
2. Informações
Material feito para os alunos do CEDERJ, disciplina Computação I do curso de
Engenharia de Produção.
A principal referência deste material é a apostila oficial da disciplina.
3. Dicas
Serão apontados os principais tópicos da ementa da disciplina, ou seja, este
material não substitui a apostila. Não espere aprender por completo uma
disciplina, rica em detalhes, em menos de 50 slides.
É extremamente importante a realização dos exercícios da apostila.
4. Dicas
Se os conceitos aqui abordados são estranhos a você, tente começar os
estudos através da ferramenta Scratch.
Link do scratch: https://scratch.mit.edu/
6. Algoritmo
Definição:
Conjunto finito de passos bem definidos para resolver um problema.
Exemplos:
● Somar todos os números inteiros de 1 a 1000.
● Somar todos os números inteiros, e múltiplos de 3, de 1 a 1000.
● Dado um número inteiro, dizer se ele é par ou ímpar.
10. Sintaxe básica - Impressão
Algoritmo olaMundo( )
Início
//Impressão de variável texto
Imprimir “2+2”
Fim
Saída do programa:
2 + 2
Algoritmo olaMundo( )
Início
//Impressão de variável numérica(
Inteiro ou Real )
Imprimir 2+2
Fim
Saída do programa:
4
11. Sintaxe básica - Variáveis
Declaração de variáveis, exemplo:
Algoritmo declaracao( )
Início
Inteiro num
num = 2
Imprimir num
Fim
12. Sintaxe básica - Comando de leitura
Exemplo de utilização de comando de leitura:
Algoritmo exemploLeitura( )
Início
Inteiro num
Ler num
Imprimir num
Fim
13. Uma abstração do funcionamento do
Computador.
Declaração de variável
Inteiro a
Atribuição de valor
a=5
Memória do computador
14. Uma abstração do funcionamento do
Computador.
Declaração de variável
Inteiro a
Atribuição de valor
a=5 a
Memória do computador
15. Uma abstração do funcionamento do
Computador.
Declaração de variável
Inteiro a
Atribuição de valor
a=5 a
Memória do computador
5
16. Uma abstração do funcionamento do
Computador. Operação de soma.
Inteiro a, b, c
a=5
b=3
c=a+b
Imprimir “O valor de c é : ” + c
Memória do computador
17. Uma abstração do funcionamento do
Computador. Operação de soma.
Inteiro a, b, c
a=5
b=3
c=a+b
Imprimir “O valor de c é : ” + c
a b c
Memória do computador
18. Uma abstração do funcionamento do
Computador. Operação de soma.
Inteiro a, b, c
a=5
b=3
c=a+b
Imprimir “O valor de c é : ” + c
a b c
Memória do computador
5 3
19. Uma abstração do funcionamento do
Computador. Operação de soma.
Inteiro a, b, c
a=5
b=3
c=a+b
Imprimir “O valor de c é : ” + c
a b c
Memória do computador
5 3 8
20. Expressões lógicas
Expressões cujo valor é do tipo lógico ( Verdadeiro ou Falso )
-Expressões simples
-Negação(!), Conjunção(&), Disjunção(|)
21. Expressões lógicas - Expressões simples
Operador Exemplo Verdadeira quando?
== a == b a é igual a b
!= a != b a é diferente de b
> a > b a é maior que b
< a < b a é menor que b
>= a >= b a é maior ou igual a b
<= a <= b a é menor ou igual a b
29. Desvio condicional
Estrutura capaz de “desviar” o fluxo de execução do programa através de uma
condição( expressão lógica )
-Desvio simples
-Desvio composto
30. Desvio condicional - Desvio simples
Executa Código 1 caso Expressão seja verdadeira
Se ( Expressão ) Faça
/* Código 1 */
Fim Se
31. Desvio condicional - Desvio simples
Exemplo:
Se ( 1 < 2 ) Faça
Imprimir “1 é menor que 2”
Fim Se
32. Desvio condicional - Desvio composto
Executa Código 1 caso a Expressão seja verdadeira, Código 2 caso contrário
Se ( Expressão ) Faça
/* Código 1 */
Senão
/* Código 2 */
Fim Se
33. Desvio condicional - Desvio composto
Exemplo:
Se ( 1 < 2 ) Faça
Imprimir “1 é menor que 2”
Senão
Imprimir “1 é maior que 2”
Fim Se
35. Repetição - Com contador
Estrutura básica:
Para ( Inicialização ; Condição de parada ; Passo ) Faça
/* Instrução */
Fim Para
36. Repetição - Com contador
Exemplo:
Inteiro i
Imprimir “Início”
Para ( i = 0 ; i <= 5 ; i = i + 1 ) Faça
Imprimir i
Fim Para
Imprimir “Fim”
Saída do programa
Início
1
2
3
4
5
Fim
37. Repetição - Sem contador
Controle no início Controle no fim
Enquanto ( Expressão ) Faça
/* Instruções */
Fim Enquanto
Faça
/* Instruções */
Enquanto ( Expressão )
38. Repetição - Sem contador
Certo Errado!
Inteiro i = 0
Enquanto ( i <= 5 ) Faça
Imprimir “Repetição” + i
i = i + 1
Fim Enquanto
Enquanto ( 1<2 ) Faça
Imprimir “Repetição”
Fim Enquanto
(Loop infinito!)
40. Vetores
Definição: Conjunto identificável de posições de memória capaz de armazenar
dados de um determinado tipo.
-Declaração
-Alocação
-Acesso
Exemplo de vetor com 5 posições
41. Vetores - Declaração
Declaração:
tipo [ ] identificador
Exemplo: Armazenar dados de alunos de uma sala de aula
Inteiro [ ] idade
Real [ ] altura, nota
42. Vetores - Alocação
Alocação:
tipo [ ] identificador = tipo[N]
Exemplo: A mesma sala de aula tem 30 alunos, logo:
Inteiro [ ] idade = Inteiro[30]
Real [ ] nota
nota = Real[30]
43. Vetores - Acesso
Exemplo de declaração, alocação e acesso:
Inteiro [ ] idade = Inteiro[5]
idade[0] = 17
idade[1] = 15
idade[2] = 20
idade[3] = 19
idade[4] = 18
Representação do vetor
idade
Posição do vetor 0 1 2 3 4
Dado armazenado 17 15 20 19 18
44. Matriz
Definição: Conjunto identificável de posições de memória capaz de armazenar
dados de um determinado tipo. Difere dos vetores pelo tipo de indexação.
-Declaração
-Alocação
-Acesso
Exemplo de matriz de 2 dimensões e 9 posições.
46. Matriz - Alocação
Alocação:
tipo [ ][ ] identificador = tipo[M][N]
Exemplo: Registro de vendas de uma equipe de 3 vendedores em 5 dias
Inteiro [ ][ ] vendas = Inteiro[3][5]
ou
Inteiro [ ][ ] vendas = Inteiro[5][3]
48. Funções e procedimentos
Permitem escrever códigos mais organizados e com menos repetições.
Função Procedimento
tipo nome(<parâmetros>)
Início
/* Instruções */
Fim
Procedimento
nome(<parâmetros>)
Início
/* Instruções */
Fim
49. Funções
Escreva um programa que converta minutos em segundos utilizando função.
Inteiro segundos( Inteiro minutos )
Início
Retorne ( 60*minutos )
Fim
Algoritmo tempo( )
Início
Inteiro min, sec
Imprimir “Tempo da exp. em
minutos”
Ler min
sec = segundos(min)
Imprimir “O tempo em segundos
é” + sec
Fim
50. Procedimentos
Escreva um procedimento que informe se o parâmetro de entrada é par ou
ímpar. Utilize-o num algoritmo.
Procedimento teste( Inteiro a )
Início
Se ( a % 2 == 0 ) Então
Imprimir “O número é par”
Senão
Imprimir “O número é ímpar”
Fim Se
Fim
Algoritmo numero( )
Início
Inteiro num
Imprimir “Digite um valor”
Ler num
teste(num)
Fim
52. Recursão
Exemplo:
Definição do fatorial
n! = 1 se n ∈ [0,1] ( Caso base )
n! = n*(n-1)! c.c. ( Caso recursivo )
Função que calcula fatorial de n
Inteiro fatorial( Inteiro n )
Início
Se ( n == 0 I n == 1 )
Retorne 1
Senão
Retorne n * fatorial( n-1 )
Fim Se
Fim
53. Obrigado pela sua atenção!
Espero que ter ajudado na compreensão dos principais conceitos de lógica de
programação.
Dúvidas ou sugestões?
ebsouza07@gmail.com