Вы находитесь на странице: 1из 62

| 


  
 
   

Prof. Rossana Junqueira 1


rapítulo 1: °
 

Prof. Rossana Junqueira 2


° 
 
½ Ô que é lógica?
½ rriada pelo filósofo grego Aristóteles.
½ Ele a chamava de RAZÃÔ.
½ É a análise das formas e leis do pensamento.
½Não se preocupa com o conteúdo do pensamento.
½ Mas sim, com a maneira pela qual um pensamento ou uma
idéia é organizada e apresentada, possibilitando que
cheguemos a uma conclusão.
½ Argumentos são compostos por uma ou mais premissas, as
quais podem ser verdadeiras ou falsas e conduzem à conclusão.

Prof. Rossana Junqueira 


° 
 
½ [so do raciocínio lógico no dia-a-dia
½ [sada desde os tempos primitivos.
½ romprovado pelo fato de termos estabelecido seqüências
adequadas para a realização de tarefas com sucesso.

½ Ô uso da lógica aplicada à informática


½ Aplicada a diversas ciências.
½ Na computação aplica-se a todas as suas áreas para a
construção e funcionamento do hardware e software.

Prof. Rossana Junqueira D


rapítulo 2: °
| 

Prof. Rossana Junqueira 5


°  | 

½ [m computador possui duas partes diferentes que


trabalham juntas:
½ Hardware composto pelas partes físicas.
½ Software composto pelos programas.
½ Quando queremos criar um software para realizar
determinado processamento, devemos escrever um
programa.
½ Para que o computador compreenda e execute esse
programa, devemos escrevê-lo usando uma linguagem
que tanto o computador quanto o criador entendam.
½ Linguagem de Programação.

Prof. Rossana Junqueira å


°  | 

½ Etapas para o desenvolvimento de um programa:


½ Análise Estuda-se o enunciado do problema para definir os
dados de entrada, o processamento e os dados de saída.
½ Algoritmo Ferramentas do tipo descrição narrativa,
fluxograma ou português estruturado são utilizadas para
descrever o problema com suas soluções.
½ rodificação Ô algoritmo é transformado em códigos da
linguagem de programação escolhida para se trabalhar.

½ Portanto, um programa é a codificação de um


algoritmo em uma linguagem de programação.
Prof. Rossana Junqueira †
°  | 

½ ronceito de Algoritmo:
½ ͞Seqüência de passos que visa atingir um objetivo bem
definido.͟ (FÔRBELLÔNE, 1999)
½ ͞Descrição de uma seqüência de passos que deve ser seguida
para a realização de uma tarefa.͟ (ASrENr Ô, 1999)
½ Seqüência finita de instruções ou operações cuja execução,
em tempo finito, resolve um problema computacional, qualquer
que seja sua instância.͟ (SALVETT , 1999)
½ Analisando as definições, podemos perceber que
executamos no dia-a-dia vários algoritmos.
½ Podem existir vários algoritmos para solucionar o
mesmo problema.
Prof. Rossana Junqueira Ë
°  | 
½ Para a construção de qualquer tipo de algoritmo, é
necessário seguir estes passos:
½ rompreender completamente o problema a ser resolvido,
destacando os pontos mais importantes e os objetos que o
compõem.
½ Definir os dados de entrada, ou seja, quais os dados serão
fornecidos e quais objetos fazem parte desse cenário-problema.
½ Definir o processamento, ou seja, quais cálculos serão
efetuados e quais as restrições para esses cálculos.
½ Definir os dados de saída, ou seja, quais dados serão gerados
depois do processamento.
½ ronstruir o algoritmo.
½ Testar o algoritmo realizando simulações.
Prof. Rossana Junqueira 9
°  | 
½ Tipos de algoritmos:
½ Descrição narrativa ronsiste em analisar o enunciado do
problema e escrever, utilizando uma linguagem natural, os
passos a serem seguidos para sua resolução.
½ Fluxograma ronsiste em analisar o enunciado do problema
e escrever, utilizando símbolos gráficos predefinidos, os passos
a serem seguidos para sua resolução.
½ Pseudocódigo ronsiste em analisar o enunciado do
problema e escrever, por meio de regras predefinidas, os passos
a serem seguidos para sua resolução.

Prof. Rossana Junqueira 10


°  | 
½ Exemplos de algoritmos:
a) Faça um algoritmo para mostrar o resultado da
multiplicação de dois números:
½ Descrição narrativa:
½ Passo 1: Receber os dois números que serão multiplicados.
½ Passo2: Multiplicar os números.
½ Passo: Mostrar o resultado obtido na multiplicação.

½ Fluxograma:

Prof. Rossana Junqueira 11


°  | 
½ Exemplos de algoritmos:
a) Faça um algoritmo para mostrar o resultado da
multiplicação de dois números:
½ Pseudocódigo:

Prof. Rossana Junqueira 12


°  | 
½ ronceito de variável:
½ Duas pessoas estão conversando e precisam realizar uma conta:
½ A primeira pessoa diz: ͞Vamos somar dois números. Ô primeiro
número é 5͟.
½ A segunda pessoa guarda o primeiro número na cabeça, ou
seja, na memória.
½ A primeira pessoa diz: ͞Ô segundo número é ͟.
½ A segunda pessoa também guarda o segundo número na
cabeça, sem esquecer o primeiro número, ou seja, cada número
foi armazenado em posições diferentes da memória humana, sem
sobreposição.
½ A primeira pessoa pergunta: ͞Qual o resultado da soma?͟.
½ A segunda pessoa resgata os valores armazenados na
memória, realiza a conta e responde dizendo que o resultado é Ë.
Prof. Rossana Junqueira 1
°  | 
½ ronceito de variável:
½ [m algoritmo recebe dados que precisam ser armazenados
no computador para serem utilizados no processamento.
½ Esse armazenamento é feito na memória.
½ [ma variável representa uma posição na memória.
½ Possui nome e tipo e seu conteúdo pode variar ao longo do
tempo, durante a execução de um programa.
½ Só pode armazenar um valor a cada instante.

Prof. Rossana Junqueira 1D


°  | 
½ Tipos de dados:
½ Mais utilizados:
½ Numéricos: nteiros e reais.
½ nteiros Podem ser positivos ou negativos e não possuem
parte fracionária.
½ Real Podem ser positivos ou negativos e possuem parte
fracionária.

½ Lógicos: Também chamados dados booleanos e podem


assumir os valores verdadeiro ou falso.

Prof. Rossana Junqueira 15


°  | 
½ Tipos de dados:
½ Mais utilizados:
½ Literais ou raracteres: São dados formados por um único
caractere ou uma cadeia de caracteres.
½ Devem estar sempre entre aspas.

Prof. Rossana Junqueira 1å


°  | 
½ Formação de identificadores:
½ São os nomes das variáveis, dos programas, das constantes,
etc.
½ Regras básicas para a formação dos identificadores são:
½ Ôs caracteres: números, letras maiúsculas ou minúsculas
e _.
½ Ô primeiro caractere deve ser sempre uma letra.
½ Não são permitidos espaços em branco e caracteres
especiais.
½ Não podemos usar palavras que pertençam a uma
linguagem de programação (palavras reservadas).

Prof. Rossana Junqueira 1†


°  | 
½ Expressões aritméticas:
Ô  
  
+ Adição 2 + 3, X + Y
- Subtração 4 ± 2, N ± M
* Multiplicação 3 * 4, A * B
/ Divisão 10/2, X1/X2
\ Divisão inteira 9\2
^ ou Exp(Base, Exponenciação 2^3
expoente)
(x elevado a y) Exp(2,3)
raizq(x) Radiciação raizq(9)
(raiz quadrada de x)
mod Resto da divisão 9 mod 4 resulta em 1
div
Prof. Rossana Junqueira Quociente da divisão 27 div 5 resulta em 5 1Ë
°  | 
½ Expressões lógicas:
Ô  
  
6 ual a 3 6 3, X 6 Y
> Maior que 5 > 4, X > Y
< Menor que 3 < 6, X < Y
>6 Maior ou iual a 5 >6 3, X >6Y
<6 Menor ou iual a 5 <6 5, X <6Y
<> Diferente de 8 <> 9, X <> Y

Prof. Rossana Junqueira 19


°  | 
½ Ôperadores lógicos:
Ô  

E Resulta VERDADE RO se ambas as


partes forem verdadeiras

Ou Resulta VERDADE RO se uma das


partes é verdadeira

Não Nea uma afirmação

Prof. Rossana Junqueira 20


rapítulo :    

Prof. Rossana Junqueira 21


    
½ Estrutura básica:
| (nome do algoritmo)

 
(bloco de comandos)
 

Prof. Rossana Junqueira 22


    
½Declaração de variáveis:
½ São declaradas após a palavra var.
½ Ôs tipos usados:
½ inteiro | (nome do algoritmo)
½ real ou numerico 
½ literal ou caractere   ! 
 ! 
 
(bloco de comandos)
 

Prof. Rossana Junqueira 2


    
½romando de atribuição:
½ [tilizado para atribuir valores ou operações a variáveis,
sendo representado pelo símbolo і.
| (nome do algoritmo)

  ! 
 ! 
 
 "#
"$
 "%&
 
Prof. Rossana Junqueira 2D
    
½romando de entrada:
½ [tilizado para receber dados digitados pelo usuário, que
serão armazenados em variáveis.
| (nome do algoritmo)

  ! 
 ! 
 
 ' (
 '(
 ' (
 
Prof. Rossana Junqueira 25
    
½romando de saída:
½ [tilizado para mostrar dados na tela.
| (nome do algoritmo)

  ! 
 ! 
 
  '%°  !%(
 ' (
  '%° )*!%(
 '(
  '%° +*!%(
 ' (
 
Prof. Rossana Junqueira 2å
    
½Exemplos:
½ Faça um algoritmo que receba quatro números inteiros,
calcule e mostre a soma desses números.
| Exemplo1 "',).,+.,- .,#(
   '%|/!%(
,),+,-,#!   
 
  '%°   ,)!%(
 ',)(
  '%°   ,+!%(
 ',+(
  '%°   ,-!%(
 ',-(
  '%°   ,#!%(
 ',#(
Prof. Rossana Junqueira 2†
    
½Exemplos:
½ Faça um programa que receba três notas, calcule e mostre a
média aritmética entre elas.
| Exemplo2

)+- !  
 
  '%°  )!%(
 ')(
  '%°  +!%(
 '+(
  '%°  -!!%(
 '-(
 "').+.-( 0-
  '%|//!% (
 
Prof. Rossana Junqueira 2Ë
    
½Exemplos:
½ Faça um algoritmo que receba o salário de um funcionário,
calcule e mostre o novo salário, sabendo-se que este sofreu um
aumento de 25%..
| Exemplo

! 
 
  '%° 1!%(
 '(
 " 2)+3
  '%41!%(
 

Prof. Rossana Junqueira 29


rapítulo D: 5 

Prof. Rossana Junqueira 0


 5 
½ Estrutura condicional simples:
| (nome do algoritmo) ½ Ô comando só será
 executado se a condição
  for verdadeira.
condição 46|7
(comando)
 

Prof. Rossana Junqueira 1


 5 
½Exemplos:
½ Faça um programa que receba duas notas, calcule e mostre a
média aritmética entre elas. Baseando-se no resultado informe
se o aluno esta Aprovado. Para aprovação, média >=†.
| Exemplo1  ' 89:( 
   '%| ;&(
)+ !    
 
  '%°  )!%(
 ')(
  '%°  +!%(
 '+(
 "').+( 0+

Prof. Rossana Junqueira 2


 5 
½ Estrutura condicional composta:
| (nome do algoritmo) ½ Se a condição for
 verdadeira, será executado
  o comando1; caso
condição 46|7 contrário, será executado o
(comando1) comando2.
4|7 (comando2)
 

Prof. Rossana Junqueira 


 5 
½Exemplos:
½ Faça um programa que receba duas notas, calcule e mostre a
média aritmética entre elas. Baseando-se no resultado informe
se o aluno esta Aprovado ou Reprovado. Para aprovação, média
>=†.
| Exemplo2  ' 89:( 
   '%||7<|=7;&(
)+ !    
    '%|7<|=7;&(
  '%°  )!%(  
 ')(
  '%°  +!%(
 '+(
 "').+( 0+
Prof. Rossana Junqueira D
rapítulo 5:  
 

Prof. Rossana Junqueira 5


   
½ [tilizada quando um trecho do algoritmo ou até
mesmo o algoritmo inteiro precisa ser repetido.
½ Ô número de repetições pode ser fixo ou estar atrelado
a uma condição.
½ Tipos de estruturas:
½ Para
½ Enquanto
½ Repita

Prof. Rossana Junqueira å


   
½ Estrutura PARA [tilizada quando se sabe o número
de vezes que um trecho do algoritmo deve ser repetido.
| (nome do algoritmo)

! 
 
||i  (valor inicial)  (valor final)  
(comando)
° ||
½ i é uma variável de controle.
 
½ Seu valor inicial e valor final
definem quantas vezes
Prof. Rossana Junqueira comando será repetido. †
   
½Exemplos:
½ [ma sala de aula possui D0 alunos. Faça um programa que
receba duas notas, calcule e mostre a média aritmética das
notas de cada um dos alunos.
| Exemplo1  "').+( 0+
   '% /!% (
)+ !    
!   
 
 ) #>
  '%°  )!%(
 ')(
  '%°  +!%(
 '+(

Prof. Rossana Junqueira Ë


   
½ Estrutura ENQ[ANTÔ:
½[tilizada quando não se sabe o número de vezes que um
trecho do algoritmo deve ser repetido.
½ Pode ser usada também quando se conhece o número de
vezes que um trecho do algoritmo deve ser repetido.
½ Baseia-se na análise de uma condição.
½ A repetição será feita enquanto a condição mostrar-se
verdadeira.

Prof. Rossana Junqueira 9


   
½ Estrutura ENQ[ANTÔ:

| (nome do algoritmo)


 
4?@|467 (condição)  
(comando)
° 4?@|467
 

Prof. Rossana Junqueira D0


   
½Exemplos:
½ [ma sala de aula possui D0 alunos. Faça um programa que
receba duas notas, calcule e mostre a média aritmética das
notas de cada um dos alunos.
| Exemplo2  "').+( 0+
   '% /!% (
)+ !   AB .)
!   
   
AB )
A9#>
  '%°  )!%(
 ')(
  '%°  +!%(
 '+(
Prof. Rossana Junqueira D1
   
½ Estrutura REP TA:
½[tilizada quando não se sabe o número de vezes que um
trecho do algoritmo deve ser repetido.
½ Pode ser usada também quando se conhece o número de
vezes que um trecho do algoritmo deve ser repetido.
½ Baseia-se na análise de uma condição.
½ A repetição será feita enquanto a condição tornar-se
verdadeira.
½ A diferença entre a estrutura ENQ[ANTÔ e a estrutura
REP TA é que nesta última os comandos serão repetidos pelo
menos uma vez, já que a condição de parada se encontra no
final.

Prof. Rossana Junqueira D2


   
½ Estrutura ENQ[ANTÔ:

| (nome do algoritmo)


 
°6|
(comando)
|6 (condição)
 

Prof. Rossana Junqueira D


   
½Exemplos:
½ [ma sala de aula possui D0 alunos. Faça um programa que
receba duas notas, calcule e mostre a média aritmética das
notas de cada um dos alunos.
| Exemplo  "').+( 0+
   '% /!% (
)+ !   AB .)
!   8#>
   
AB )
 
  '%°  )!%(
 ')(
  '%°  +!%(
 '+(
Prof. Rossana Junqueira DD
rapítulo å: <  

Prof. Rossana Junqueira D5


<  
½ ronhecido como variável composta homogênea
unidimensional.
½ Trata-se de um conjunto de variáveis do mesmo tipo,
que possuem o mesmo identificador (nome) e são
alocadas seqüencialmente na memória.
½ romo têm o mesmo nome, o que as distingue é um
índice que referencia sua localização dentro da estrutura.
romparando um Vetor a um Prédio, um
Prédio seria um vetor e cada um dos
apartamentos seriam um elemento
Prof. Rossana Junqueira
deste vetor. Då
<  
½ Declaração:

| (nome do algoritmo)

1 ! CD  
 
½ variável é o nome do vetor.
  ½ vi é o elemento inicial do
vetor.
½ vf é o elemento final do
vetor.
½ tipo é o tipo de dado que o
vetor irá receber.
Prof. Rossana Junqueira D†
<  
½ Exemplo1: [sando um cenário de um prédio de 10
andares:

 ! C))>D  

½ Exemplo2: [sando um cenário de uma fila de cinema


com 50 pessoas:

! C)3>D  

Prof. Rossana Junqueira DË


<  
½ Manipulação:
½ Primeiro devemos saber o nome do vetor para depois
identificar o elemento deste que queremos acessar.
½ Ex: predio[2] (Vetor predio, segundo elemento)

Prof. Rossana Junqueira D9


<  
½ Preenchimento:
½ Significa atribuir valores a todas as suas posições.
½ Assim, deve-se implementar um mecanismo que controle o
valor do índice. | (nome do algoritmo)

x: vetor[1..5] de inteiro
i: inteiro
 
para i de 1 ate 5 faca
escreva(͞Digite o ͞, i , ͞número do vetor͟)
leia(x[i])
fimpara
Prof. Rossana Junqueira   50
<  
½ Mostrando os elementos:
½ Também implica a utilização do índice.
| (nome do algoritmo)

x: vetor[1..5] de inteiro
i: inteiro
 
para i de 1 ate 5 faca
escreva(x[i], ͞ ͟)
fimpara
 

Prof. Rossana Junqueira 51


<  
½Exemplos:
½ Escrever um algoritmo que leia o nome e as duas notas de 5
alunos. Escrever o nome e a média de cada um dos alunos.
| Exemplo  CD "')CD .+CD( 0+
  
 ! C)3D    ) 3 
)+ ! C)3D     ' CD%/!E CD(
!   
 
 ) 3   
  '%°  ! %(
 ' CD(
  '%°  )!%(
 ')CD(
  '%°  +!%(
Prof. Rossana Junqueira
 '+CD( 52
rapítulo †: F 

Prof. Rossana Junqueira 5


F 
½ ronhecido como variável composta homogênea
multidimensional.
½ Trata-se de um conjunto de variáveis do mesmo tipo,
que possuem o mesmo identificador (nome) e são
alocadas seqüencialmente na memória.
½ romo têm o mesmo nome, o que as distingue são os
índices que referenciam sua localização dentro da
estrutura.
½ [ma variável do tipo matriz precisa de um índice para
cada uma de suas dimensões.
Prof. Rossana Junqueira 5D
F 

Prof. Rossana Junqueira 55


F 
½ remos utilizar novamente o cenário de um prédio, só
que, agora, cada andar terá vários apartamentos.
½ Digamos que um prédio tenha três apartamentos por
andar, sendo quatro andares.
½ Neste caso, o prédio corresponde a uma matriz com
quatro linhas e três colunas, conforme a figura abaixo.

Prof. Rossana Junqueira 5å


F 
½ Declaração:

| (nome do algoritmo)

1 ! C<°)<)<°+<+<°<D  
 
½ variável é o nome do vetor.
  ½ vi é o elemento inicial do
vetor.
½ vf é o elemento final do
vetor.
½ tipo é o tipo de dado que o
vetor irá receber.
Prof. Rossana Junqueira 5†
F 
½ Exemplo1: [sando um cenário de um prédio de 10
andares com D apartamentos por andar:

 ! C))>)#D  

½ Exemplo2: [tilizando o cenário de um ônibus de


primeiro andar, sendo que em cada andar contém quatro
fileiras de seis cadeiras:

! C)+)#)GD  

Prof. Rossana Junqueira 5Ë


F 
½ Manipulação:
½ Primeiro devemos saber o nome da matriz para depois
identificar o elemento deste que queremos acessar.
½ Ex: predio[2,1] (Matriz predio, segundo andar, apartamento
1)

Prof. Rossana Junqueira 59


F 
½ Preenchimento:
½ Significa atribuir valores a todas as suas posições.
½ Assim, deve-se implementar um mecanismo que controle o
valor do índice para cada posição.
| (nome do algoritmo)

x: vetor[1..5, 1..D] de inteiro
i, j: inteiro
 
para i de 1 ate 5 faca
para j de 1 ate D faca
escreva(͞ nforme os elementos da matriz: ͟)
leia(x[i,j])
fimpara
fimpara
Prof. Rossana Junqueira å0
 
F 
½ Mostrando os elementos:
½ Também implica a utilização do índice para cada dimensão.
| (nome do algoritmo)

x: vetor[1..5, 1..D] de inteiro
i, j: inteiro
 
para i de 1 ate 5 faca
para j de 1 ate D faca
escreva(x[i,j])
fimpara
escreval
fimpara
 
Prof. Rossana Junqueira å1
F 
½Exemplos:
½ Elaborar um algoritmo que leia uma matriz de  linhas e D
colunas de números inteiros. No final, imprima todos os
números.
| Exemplo  ) - 
 H ) # 
F! C)-)#D     'FCHD(
H!   
    
 ) -   
H ) # 
  '% F!E(  
 'FCHD(
 
 
Prof. Rossana Junqueira å2

Вам также может понравиться