A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Conceitos Básicos Luis Antonio Tavares

Apresentações semelhantes


Apresentação em tema: "Conceitos Básicos Luis Antonio Tavares"— Transcrição da apresentação:

1 Conceitos Básicos Luis Antonio Tavares
Algoritmo Conceitos Básicos Luis Antonio Tavares

2 Ementa Problemas de lógica Tipos e variáveis Conceitos básicos
Instruções básicas Algoritmo cotidiano vs. computacional Linearização de Expressões Fluxograma Condições Pseudocódigo Laços de repetição Estrutura de um programa Funções

3 Introdução O QUE É LÓGICA? Estudo das leis do raciocínio e do modo de aplicá-las corretamente na demonstração da verdade. Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas, ela permite definir a seqüência lógica de operação do programa.

4 Introdução O QUE É ALGORITMO? Seqüência de passos que visam atingir um objetivo pré-definido e bem definido. O algoritmo formado e bem definido que pode ser seguido por qualquer pessoa, e o objetivo será alcançado com certeza.

5 Introdução Cada linha de um algoritmo é uma instrução.
Instruções são um conjunto de regras ou normas definidas para a realização ou emprego de algo. Em informática, é o que indica a um computador uma ação elementar a executar. Um programa é, nada mais, que um conjunto de instruções que executadas cumprem uma finalidade.

6 Programação O que é Programação: Processo de escrita, teste e manutenção de um programa de computador. Os programas de computadores nada mais são do que algoritmos escritos numa linguagem de computador (Pascal, C, Delphi, Java, PHP entre outras) e que são interpretados e executados por um computador. O algoritmo deve ser fácil de se interpretar e fácil de codificar. Ou seja, ele deve ser o intermediário entre a linguagem falada e a linguagem de programação.

7 Por que Algoritmo? LINGUAGEM NATURAL PORTUGUÊS, INGLÊS... INSTRUÇÕES
ALTO NÍVEL ALGORITMO CÓDIGO-FONTE EM LINGUAGEM DE PROGRAMAÇÃO COMPILAÇÃO ADAPTAÇÃO TRADUÇÃO BAIXO NÍVEL (EXECUTÁVEL) LINGUAGEM DE MÁQUINA

8 Por que criamos algoritmos?
Linguagem natural não pode ser interpretada por um computador; Porém a linguagem algorítmica é similar a uma linguagem de programação e próxima à linguagem natural; Logo, aprendendo a criar algoritmos, teremos facilidade em aprender uma linguagem de programação.

9 Regras para fazer um algoritmo
Para montar um algoritmo, precisamos primeiro dividir o problema apresentado em três fases fundamentais ENTRADA: São os dados de entrada do algoritmo PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado final SAÍDA: São os dados já processados

10 Analogia com o Homem

11 Representações de um Algoritmo
Fluxograma ou Diagrama de Blocos. Pseudocódigo, Português Estruturado ou Portugol. SUBJETIVIDADE PRECISÃO

12 Fluxograma ou Diagrama de Blocos
Fluxograma é um tipo de diagrama, e pode ser entendido como uma representação esquemática de um processo. Podemos entendê-lo, na prática, como a documentação dos passos necessários para a execução de um processo qualquer.

13 Fluxograma

14 Fluxograma Exemplo

15 Pseudocódigo O pseudocódigo é uma maneira intermediária entre a linguagem natural e uma linguagem de programação de representar um algoritmo. Ela utiliza um conjunto restrito de palavras- chave, em geral na língua nativa do programador.

16 Pseudocódigo Exemplo Algoritmo PROGRAMA_EXEMPLO Variáveis Inicio Fim
A, B, SOMA: Inteiros; Inicio ESCREVA("Digite o primeiro número:"); LEIA(A); ESCREVA("Digite o segundo número:"); LEIA(B); SOMA  A + B; ESCREVA (“A SOMA É: “, SOMA); Fim

17 Instruções Básicas do Pseudocódigo
ESCREVA(); - Responsável por escrever uma mensagem na tela. LEIA(); - Responsável por ler um valor do teclado e armazenar numa variável, ou seja, num espaço em memória. VARIÁVEIS – Responsável por definir todos as variáveis que serão necessárias no programa. Início e Fim – Delimitam o corpo do programa.

18 Operadores Aritméticos
Adição + Ex.: A+B Subtração - Ex.: A-B Multiplicação * Ex.: A*B Divisão / Ex.: A/B Potência 𝑁𝑢𝑚𝑒𝑟𝑜 𝐸𝑥𝑝𝑜𝑒𝑛𝑡𝑒 Ex.: A^B Operador de Atribuição  Ex.: Resultado  Preco * Qtd

19 Variáveis As variáveis do exemplo anterior são A, B e SOMA.
Variáveis são espaços em memória usados para armazenar valores. A, B e SOMA são somente o nome desses espaços. No programa, as variáveis A e B estão, por exemplo, usando um espaço em memória para armazenar os valores lidos do teclado. Assim, sempre que os nomes A e B forem mencionados, estarão fazendo referência a esses valores lidos.

20 Tipos de Variáveis Inteiros (Ex. de uso: armazenar idade)
Ex.: (números sem casa decimal) Reais (Ex. de uso: preço, altura) Ex.: (números com casa decimal) Caracteres (Ex. de uso: nomes, endereços, CPF) Ex.: “IFSULDEMINAS”, “Rua da Casas, nº 25” (valores literais)

21 Nomes de Variáveis Sempre começa com uma letra
Não se pode utilizar o Ç e letras acentuadas Não se mistura letras maiúsculas e minúsculas Podem ser utilizados algarismos de 0 a 9 Dos caracteres especiais, só pode ser utilizado o sublinhado ou underscore ( _ ) Não pode haver espaço em branco Não se pode utilizar palavras reservadas, ou seja, palavras que significam comandos (escreva, leia, inteiro, real).

22 Nomes de Variáveis É boa prática escolher nomes que significam alguma coisa no contexto do programa e indiquem a função da variável; Recomenda-se que os nomes de variáveis sejam em letras minúsculas.

23 Exercícios 1. O que é uma variável?
2. Classifique os conteúdos abaixo em [C] caractere, [I] inteiro ou [R] real: a) b) Yuri c) d) A e) Casa f) g) 10 h) 4.0

24 Exercícios 3. Quais dos seguintes nomes são válidos para uma variável:
a) 3ab b) inteiro c) X**X d) _sim e) _A f) A123 g) N_a_o h) Y_2 i) y-2 j) 00fim k) \meu l) 6y2 m) n_2 n) nota2 o) n4t p) &casa

25 Linearização de Expressões
As linguagens de programação não entendem uma expressão matemática da maneira que nós escrevemos. Portanto é necessário converter uma expressão matemática para uma expressão de computador. Por exemplo, converter: RESULTADO = N1 x N2 Para: RESULTADO  N1 * N2

26 Linearização de expressões
Para construção de algoritmos que realizam cálculos matemáticos, TODAS expressões aritméticas devem ser linearizadas; Linearizadas = Colocadas em uma únicas linha;

27 Linearização de Expressões
Numa expressão para computador, não deve haver {} ou []. Somente parênteses. Exemplos: {80-[(5x4+1)÷3]} expressão matemática (80-((5*4+1)/3)) expressão linearizada 80 + (2 x 3) expressão matemática 40 80/40+(2*3) expressão linearizada

28 Linearização de Expressões
Ordem de precedência dos operadores: 1º () Parênteses 2º ^ Potência 3º */ Multiplicação ou Divisão (o que aparecer primeiro) 4º +- Adição ou Subtração (o que aparecer primeiro)

29 Exercícios Passe as expressões abaixo para forma computacional:
a) {5 + [3x2 – (4+1)]} b) 5 x { [(4 + 2) x 2] – 3 x 2} c) 80 – 7 x 3 + [(5 – 1) + 8] x 3 d) [5 + (8+4 – 4x2)] 2

30 Condições Luis Antonio Tavares
Algoritmo Condições Luis Antonio Tavares

31 Condições Condições serão usadas sempre que precisarmos testar o valor de uma variável. Desta forma podemos definir instruções que serão executadas caso uma condição seja verdadeira e instruções alternativas, caso a condição não seja verdadeira.

32

33 Formas Usadas no Fluxograma

34 Fluxograma Maior Número
Início A > B Verdadeiro A Escreva o 1º número: A Falso B Escreva o 2º número: B Fim

35 Algoritmo MAIOR_NUMERO Variaveis Inicio
A, B: REAIS; Inicio ESCREVA ("Digite o primeiro numero: "); LEIA ( A ); ESCREVA ("Digite o segundo numero: "); LEIA ( B ); SE ( A > B ) ENTAO ESCREVA (“O maior numero eh: ”, A); SENAO ESCREVA (“O maior numero eh: ”, B); FIM_SE Fim

36 Fluxograma Média Início A Verdadeiro Falso B MEDIA  (A+B) / 2 Fim
Escreva o 1º número: MEDIA >= 60 A Verdadeiro Aprovado Escreva o 2º número: Falso B Reprovado MEDIA  (A+B) / 2 Fim

37 Pseudocódigo Exemplo Algoritmo PROGRAMA_EXEMPLO Variaveis Inicio Fim
A, B, MEDIA: REAIS; Inicio ESCREVA ("Digite a nota da primeira prova:"); LEIA ( A ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( B ); MEDIA  (A + B) / 2; ESCREVA (“A MEDIA EH: “, MEDIA); SE (MEDIA >= 60) ENTAO ESCREVA (“APROVADO!”); SENAO ESCREVA (“REPROVADO!”); FIM_SE Fim

38 Operadores Relacionais
Maior > Ex.: A > B Maior Igual >= Ex.: A >= B Menor < Ex.: A < B Menor Igual <= Ex.: A <= B Diferente != Ex.: A != B Igual == Ex.: A == B Exemplo: SE ( NUM == 20 ) ENTAO ESCREVA (“O NUMERO INFORMADO EH O NUMERO 20!”); FIM_SE

39 Operadores Lógicos Operador E Ex.: A > 60 && B < 40
Operador OU Ex.: A > 60 || B < 40 Operador NÃO Ex.: ! (A > 60)

40 Operadores Lógicos Exemplo Operador E:
SE ( NUM > 20 && NUM < 30 ) ENTAO ESCREVA (“O NUMERO EH MAIOR QUE 20 E MENOR QUE 30!”); FIM_SE Exemplo Operador OU: SE ( NUM > 20 || NUM < 30 ) ENTAO ESCREVA (“O NUMERO EH MAIOR QUE 20 OU MENOR QUE 30!”);

41 Algoritmo PROGRAMA_EXEMPLO Variaveis Inicio
A, B, MEDIA: REAIS; Inicio ESCREVA ("Digite a nota da primeira prova:"); LEIA ( A ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( B ); MEDIA  (A + B) / 2; ESCREVA (“A MEDIA EH: “, MEDIA); SE ( MEDIA >= 60 ) ENTAO ESCREVA (“Aprovado!”); SENAO SE ( MEDIA >= 30 ) ENTAO ESCREVA (“Recuperação!”); SENAO ESCREVA (“Reprovado!”); FIM_SE Fim

42 Exercícios 1. Sabendo que A = 3, B = 7 e C = 4, informe se as expressões abaixo são verdadeiras ou falsas: (A + C) > B _______________ B >= (A + 2) _______________ C == (B – A) _______________ (B + A) <= C _______________ (C + A) > B _______________

43 Exercícios 2. Sabendo que A = 5, B = 4, C = 3 e D = 6, informe se as expressões abaixo são verdadeiras ou falsas: (A > C) && (C <= D) _______________ (A + B) == (C + D) _______________ (A < B) || (D <= C) _______________ (A < B) || (D >= C) _______________ (C < 10) && (D > A) _______________ (B > C) && (C >= A) _______________ (B > C) || (C >= A) _______________

44 Laços de Repetição Luis Antonio Tavares
Algoritmo Laços de Repetição Luis Antonio Tavares

45 Laços de Repetição Os laços de repetição se encarregam de repetir determinado bloco de instruções enquanto uma condição for verdadeira. Esses laços também podem ser chamados de loops. Temos basicamente dois tipos de loops: O para e o enquanto.

46 Laço de Repetição ENQUANTO
O primeiro loop que vamos conhecer é o enquanto. Pois se trata do loop mais simples. Funcionamento: O bloco de código definido no loop enquanto fica em execução enquanto uma determinada condição for verdadeira. Cada vez que o bloco é iniciado, a condição é novamente testada, quando não for mais verdadeira, o loop é encerrado.

47 A sintaxe do loop ENQUANTO
ALGORITMO LOOP_ENQUANTO VARIAVEIS CONT : INTEIRO; INICIO CONT  1; ENQUANTO ( CONT < 5 ) FAÇA ESCREVA (“Numero: ”, CONT); CONT  CONT + 1; FIM_ENQUANTO FIM

48 Loop ENQUANTO Exemplo ALGORITMO PROGRAMA_MEDIA_COM_LOOP VARIAVEIS
MEDIA, N1, N2: REAIS; NUM: INTEIRO; INICIO NUM  1; ENQUANTO ( NUM == 1 ) FAÇA ESCREVA (“Informe a primeira nota: ”); LEIA ( N1 ); ESCREVA (“Informe a segunda nota: ”); LEIA ( N2 ); MEDIA  ( N1 + N2 ) / 2; ESCREVA (“Sua media eh: ”, MEDIA); ESCREVA (“Digite 1 se deseja continuar no programa”); LEIA ( NUM ); FIM_ENQUANTO FIM

49 Laço de Repetição PARA O loop para trabalha de uma forma um pouco diferente do loop enquanto. Funcionamento: No loop para, uma variável pode ser inicializada com um valor qualquer, e o bloco de código definido neste loop vai ser executado até que a variável atinja um determinado valor. No loop também definidos um passo, ou seja, um valor que será incrementado na variável cada vez que o loop rodar.

50 A sintaxe do loop PARA ALGORITMO LOOP_PARA VARIAVEIS CONT : INTEIRO; INICIO PARA CONT  1 ATÉ 5, PASSO 1, FAÇA ESCREVA (“IF Sul de Minas”); FIM_PARA FIM A cada execução do loop dá-se o nome de iteração (iteração sem o N mesmo, não confunda com interação.)

51 Loop PARA Exemplo 1 ALGORITMO ESCREVE_ATE_5 VARIAVEIS CONT: INTEIRO;
INICIO PARA CONT  1 ATÉ 5, PASSO 1, FAÇA ESCREVA (“Numero: ”, CONT); FIM_PARA FIM

52 Loop PARA Exemplo 2 ALGORITMO EXIBE_PARES VARIAVEIS CONT: INTEIRO;
INICIO PARA CONT  2 ATÉ 10, PASSO 2, FAÇA ESCREVA (“Numero: ”, CONT); FIM_PARA FIM

53 Loop PARA Exemplo 3 ALGORITMO SOMA_NUMEROS_ATE_DEZ VARIAVEIS
CONT, SOMA: INTEIRO; INICIO SOMA  0; PARA CONT  1 ATÉ 10, PASSO 1, FAÇA SOMA  SOMA + CONT; FIM_PARA ESCREVA (“A soma dos numeros eh: ”, SOMA); FIM

54 Laço de Repetição FAÇA ENQUANTO
O loop faça... enquanto é uma derivação do loop enquanto. A diferença é que com esse loop o bloco de código é executado uma vez antes da condição ser verificada.

55 A sintaxe do loop FAÇA... ENQUANTO
ALGORITMO LOOP_FACA_ENQUANTO VARIAVEIS CONT: INTEIRO; INICIO CONT  0; FAÇA ESCREVA (“Numero: ”, CONT); CONT  CONT + 1; ENQUANTO ( CONT < 5 ) FIM

56 Algoritmo MAIOR_NUMERO Variaveis Inicio FAÇA
A, B, NUM: REAIS; Inicio FAÇA ESCREVA ("Digite o primeiro numero: "); LEIA ( A ); ESCREVA ("Digite o segundo numero: "); LEIA ( B ); SE ( A > B ) ENTAO ESCREVA (“O maior numero eh: ”, A); SENAO ESCREVA (“O maior numero eh: ”, B); FIM_SE ESCREVA (“Para continuar digite o numero 1: "); LEIA (NUM); ENQUANTO(NUM == 1) Fim

57 Algoritmo PROGRAMA_MEDIA Variaveis Inicio FAÇA
A, B, MEDIA, NUM: REAIS; Inicio FAÇA ESCREVA ("Digite a nota da primeira prova:"); LEIA ( A ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( B ); MEDIA  (A + B) / 2; ESCREVA (“A MEDIA EH: “, MEDIA); SE (MEDIA >= 60) ENTAO ESCREVA (“APROVADO!”); SENAO ESCREVA (“REPROVADO!”); FIM_SE ESCREVA("Digite o numero 1 para continuar:"); LEIA (NUM); ENQUANTO (NUM == 1) Fim

58 Operadores Relacionais
Maior > Ex.: A > B Maior Igual >= Ex.: A >= B Menor < Ex.: A < B Menor Igual <= Ex.: A <= B Diferente != Ex.: A != B Igual == Ex.: A == B Exemplo: ENQUANTO ( NUM < 20 ) FAÇA ESCREVA (“O NUMERO INFORMADO EH MENOR QUE 20!”); ESCREVA (“INFORME NOVAMENTE UM NUMERO: ”); LEIA ( NUM ); FIM_ENQUANTO

59 Operadores Lógicos Exemplo Operador E:
ENQUANTO ( NUM > 20 && NUM < 30 ) FAÇA ESCREVA (“O NUMERO EH MAIOR QUE 20 E MENOR QUE 30!”); ESCREVA (“INFORME NOVAMENTE UM NUMERO: ”); LEIA ( NUM ); FIM_ENQUANTO Exemplo Operador OU: ENQUANTO ( NUM > 20 || NUM < 30 ) FAÇA ESCREVA (“O NUMERO EH MAIOR QUE 20 OU MENOR QUE 30!”);

60 Algoritmo PROGRAMA_MEDIA Variaveis Inicio
A, B, MEDIA, CONT : REAIS; Inicio PARA CONT  1 ATÉ 5, PASSO 1, FAÇA ESCREVA ("Digite a nota da primeira prova:"); LEIA ( A ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( B ); MEDIA  (A + B) / 2; ESCREVA (“A MEDIA EH: “, MEDIA); SE ( MEDIA >= 60 ) ENTAO ESCREVA (“Aprovado!”); SENAO SE ( MEDIA >= 30 ) ENTAO ESCREVA (“Recuperação!”); SENAO ESCREVA (“Reprovado!”); FIM_SE FIM_PARA Fim Programa que calcula a média de 5 pessoas usando o loop para.

61 Exercícios

62 Funções Luis Antonio Tavares
Algoritmo Funções Luis Antonio Tavares

63 Funções São utilizadas para dividir um algoritmo maior (mais complexo) em partes menores (mais simples). Quando uma mesma tarefa é realizada várias vezes em um programa, não é necessário duplicar o código, apenas faz-se a chamada da função que contém o código da tarefa. Este processo é conhecido como modularização.

64 Vantagens Reduzem o tamanho do algoritmo.
Melhoram a legibilidade do algoritmo. Reaproveitamento de código. Facilitam a manutenção. Facilitam a divisão de trabalho.

65 Sintaxe de uma função FUNÇÃO ANALISA_NUMERO (NUM : INTEIRO) INICIO SE (NUM > 0) ENTAO ESCREVA (“Numero Positivo”); SENAO SE (NUM < 0) ENTAO ESCREVA (“Numero Negativo”); SENAO ESCREVA (“Numero Zero”); FIM_SE FIM_FUNÇÃO

66 Chamada de função ALGORITMO PROGRAMA_EXEMPLO VARIAVEIS NUM: INTEIRO; INICIO ESCREVA (“Informe um numero: ”); LEIA ( NUM ); ANALISA_NUMERO ( NUM ); FIM

67 Sintaxe de função com retorno
FUNÇÃO SOMA (A, B : REAIS) VARIAVEIS RESULT : REAIS; INICIO RESULT  A + B; RETORNE RESULT; FIM_FUNÇÃO

68 Chamada de função ALGORITMO PROGRAMA_SOMA VARIAVEIS RESULT, A, B: REAIS; INICIO ESCREVA (“Informe o primeiro numero: ”); LEIA ( A ); ESCREVA (“Informe o segundo numero: ”); LEIA ( B ); RESULT  SOMA ( A, B ); ESCREVA (“A soma eh: ”, RESULT); FIM

69 Alguns pontos importantes
Na chamada de uma função, os valores que são passados para esta função devem vir entre parênteses após o nome da mesma. Exemplo: ANALISA_NUMERO ( NUM ); Esses valores passados para a função são chamados de argumentos ou parâmetros.

70 Alguns pontos importantes
A linha de definição da função deve declarar os valores recebidos e o tipo dos mesmos. Exemplo: FUNÇÃO SOMA (A, B : REAIS) Não há a necessidade das variáveis passadas para uma função terem os mesmos nomes dos argumentos declarados na função. Exemplo de chamada para a função do exemplo anterior: RESULT  SOMA (N1, N2); Mas os parâmetros devem ser do mesmo tipo e estar em mesma quantidade que os valores passados.

71 Alguns pontos importantes
Analisando os exemplos, podemos observar que uma função pode retornar um valor ou não retornar nenhum valor. Mas uma função nunca retorna mais de um valor. Quando um função retorna um valor, em sua chamada deve haver uma variável recebendo esse valor, por exemplo: RESULT  SOMA ( A, B );

72 Alguns pontos importantes
Quando necessário, é possível criar variáveis internas à função, ou seja, que serão acessadas somente internamente no escopo da função. Como é o caso da variável RESULT no exemplo abaixo: FUNÇÃO SOMA (A, B : REAIS) VARIAVEIS RESULT : REAIS; INICIO RESULT  A + B; RETORNE RESULT; FIM_FUNÇÃO

73 Programa que calcula a média de 5 pessoas usando o loop para e função.
ALGORITMO PROGRAMA_MEDIA VARIAVEIS A, B, RESULT, CONT : REAIS; INICIO PARA CONT  1 ATÉ 5, PASSO 1, FAÇA ESCREVA ("Digite a nota da primeira prova:"); LEIA ( A ); ESCREVA ("Digite a nota da segunda prova:"); LEIA ( B ); RESULT  CALCULA_MEDIA ( A, B ); ESCREVA (“A MEDIA EH: “, RESULT); FIM_PARA FIM FUNÇÃO CALCULA_MEDIA ( A, B : REAIS) RESULT, SOMA : REAIS; SOMA  A + B; RESULT  SOMA / 2; RETORNE RESULT; FIM_FUNÇÃO Programa que calcula a média de 5 pessoas usando o loop para e função.

74 Exercícios


Carregar ppt "Conceitos Básicos Luis Antonio Tavares"

Apresentações semelhantes


Anúncios Google