Algoritmos e Estrutura de Dados I Estrutura Sequencial e Condicionais Prof. Elyssandro Piffer CONCEITO DE ESTRUTURA SEQUENCIAL • Em uma estrutura sequencial, os passos são executados em uma seqüência pré-definida. Exemplo: As ações deverão ser executadas numa sequência linear, de cima para baixo, da esquerda para direita ESTRUTURA SEQUENCIAL FORMAS DE REPRESENTAÇÃO NO ALGORITMO Fluxograma comando 1 comando 2 ... comando n Linguagem Algorítmica comando 1 comando 2 … comando n ESTRUTURA SEQUENCIAL Exemplo (em pseudocódigo): ... inicio Leia o raio; calcule a área do circulo; escreva o cálculo da área do circulo ; fim CONCEITO DE ESTRUTURAS CONDICIONAIS • As estruturas condicionais são divididas em: Simples. Compostas. Múltipla escolha. ESTRUTURA CONDICIONAL SIMPLES ESCOPO EM ALGORITMO: SE condição ENTÃO INICIO comando1 comando2 comando3 FIM Os comandos só serão executados se a condição for verdadeira. O QUE É UMA CONDIÇÃO ? • É uma expressão utilizando os operadores aritméticos, relacionais e/ou lógicos Exemplos: A=B 10 > ( 50 / 5 ) x OU y Verdadeiro E falso OPERADORES RELACIONAIS EM ALGORITMO = igual ≠ ou <> diferente ≤ ou <= menor igual ≥ ou >= maior igual < menor > maior Prioridade: NÃO possuem OPERADORES LÓGICOS • EM ALGORITMO NÃO E OU Obs.: são usados para conjunção, disjunção e negação respectivamente. Prioridade: 1.º NÃO 2º E 3º OU Obs.: é apropriado quando existir mais de um tipo de operador, utilizar os parênteses que indiquem a prioridade de execução TABELA VERDADE TABELA E TABELA OU TABELA NÃO V E V=V V OU V = V NÃO V = F V E F=F V OU F = V NÃO F = V F E V=F F OU V = V F E F=F F OU F = F EXEMPLO TODOS OS OPERADORES LÓGICOS SE ( ( (local=‘Atlanta’) OU (local=‘Miami’) ) E ( NÃO(custo > 120.000) ) E condicao_Pagamento = 360 ) Entao inicio compre a casa fim Senao inicio junte mais grana fim EXEMPLO ESTRUTURA CONDICIONAL SIMPLES ... SE x = 2 ENTÃO INICIO ESCREVA “X É IGUAL A 2” ESCREVA “2 É UM NÚMERO PAR” FIM ESTRUTURA CONDICIONAL SIMPLES FORMAS DE REPRESENTAÇÃO NO ALGORITMO Fluxograma falso condição verdade Linguagem Algorítmica se condição então inicio comandos comandos Fim EXEMPLO 2: ESTRUTURA CONDICIONAL SIMPLES ALGORITMO num_guais VAR num1, num2 inteiro INICIO LEIA num1, num2 SE num1 = num2 ENTÃO inicio ESCREVA “Números Iguais” fim FIM ESCOPO DA ESTRUTURA CONDICIONAL COMPOSTA SE condição ENTÃO INICIO comando1 comando2 comando3 FIM SENÃO INICIO comando4 comando5 FIM Se a condição for verdadeira os comandos 1, 2 e 3 serão executados. Se a condição for falsa os comandos 4 e 5 serão executados. EXEMPLO CONDICIONAL COMPOSTA SE x = 2 ENTÃO INÍCIO ESCREVA “X É IGUAL A 2” ESCREVA “2 É UM NÚMERO PAR” FIM SENÃO INÍCIO ESCREVA “X É MAIOR OU MENOR QUE 2” FIM ESTRUTURA CONDICIONAL COMPOSTA FORMAS DE REPRESENTAÇÃO NO ALGORITMO Fluxograma Linguagem Algorítmica se condição falso condição comando 2 verdade comando 1 então inicio comando1 Fim senão inicio comando2 Fim EXEMPLO 2: ESTRUTURA CONDICIONAL COMPOSTA ALGORITMO media4 VAR nota1, nota2, nota3, media real INICIO Leia (nota1, nota2, nota3) media <- (nota1 + nota2 + nota3 ) /3 SE media >= 6.0 ENTÃO inicio Escreva “Aluno Aprovado “ Escreva “ Média = “, media fim SENÃO inicio Escreva “ Aluno Reprovado “ Escreva “ Média = “, media fim Escreva “Fim de execução” FIM SE (você tem dinheiro suficiente para encher o tanque) Então inicio encha o tanque pague em dinheiro fim Senão inicio se (você tem cartão de crédito) então inicio SELEÇÃO encha o tanque ENCADEADA pague com o cartão fim OU ANINHADA Fim EXEMPLO DE UMA CALCULADORA SIMPLES Algoritmo calculadora Var operador char; operando1, operando2, resultado real INÍCIO Leia operando1, operador, operando2 se operador = ‘ +’ então inicio resultado <- operando1 + operando2 fim se operador = “ - ” então inicio resultado <- operando1 - operando2 fim se operador = “ * ” então inicio resultado <- operando1 * operando2 fim se operador = “ / ” então inicio resultado <- operando1 / operando2 fim Escreva resultado FIM INICIO Leia operando1, operador, operando2 Se operador = “ + ” então Inicio resultado <- operando1 + operando2 Fim senão inicio se operador = “ - ” então inicio resultado <- operando1 - operando2 fim senão inicio se (operador = “ * ”) então inicio resultado <- operando1 * operando2 fim senão inicio se (operador = “ / ”) então inicio resultado <- operando1 / operando2 fim fim fim fim escreva resultado EXEMPLO DE ENCADEAMENTO OU ANINHAMENTO FIM ESCOPO DA CONDICIONAL MÚLTIPLA ESCOLHA Caso variável for valor 1 : inicio comando_1 comando_2 fim valor n : inicio comando_1 fim SENÃO inicio comando_1 comando_2 fim Fim_Caso ESCOPO DA CONDICIONAL MÚLTIPLA ESCOLHA Caso variável for valor 1 : inicio comando_1 comando_2 fim valor n : inicio comando_1 fim Fim_Caso O comando (SENÃO) não é parte obrigatória EXEMPLO CONDICIONAL MÚLTIPLA ESCOLHA ... LEIA x Caso x for 1 : inicio ESCREVA “Foi digitado o valor 1” fim 2 : inicio ESCREVA “Foi digitado o valor 2” fim 5 : inicio ESCREVA “Foi digitado o valor 5” fim SENÃO ESCREVA “Valor diferente de 1, 2 e 5” Fim_Caso ... ... Escreva “1 – Exercicio 1” Escreva “2 – Exercicio 2” Escreva “3 – Sair” LEIA x Caso x for 1 : inicio ESCREVA “estou no exerc 1” fim 2 : inicio ESCREVA “estou no exerc 2” fim 3 : inicio ESCREVA “Final de execução” fim SENÃO ESCREVA “Opção inválida” Fim_Caso ...