Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Algoritmos aplicados à Engenharia, Notas de estudo de Algoritmos

Algoritmos aplicados à Engenharia

Tipologia: Notas de estudo

2011

Compartilhado em 09/02/2011

luana-bimbato-4
luana-bimbato-4 🇧🇷

4.7

(35)

6 documentos

1 / 67

Documentos relacionados


Pré-visualização parcial do texto

Baixe Algoritmos aplicados à Engenharia e outras Notas de estudo em PDF para Algoritmos, somente na Docsity! Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Material de apoio ao estudo Introdução Notas de aulas Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Professora Vânia Cristina de Souza Pereira Introdução o Ementa: a Conceito de Lógica. Lógica aplicada à programação. Tipos de algoritmos. Conceitos de variáveis e constantes. Tipos primitivos de dados. Operadores: aritméticos, relacionais e lógicos. Estruturas de seleção. Estruturas de controle e repetição. a Objetivos: a Preparar o aluno para o desenvolvimento de soluções computacionais eficientes. Capacitar o aluno ao desenvolvimento de algoritmos capazes de resolver problemas simples. a Metodologia: a Utilização de quadro negro, retroprojetor e aulas práticas em laboratório. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Bibliografia a Bibliografia Básica . MANZANO, J. A. N. G., Algoritmos, Érica. a Bibliografia Complementar FORBELLONE, A. L.V. & EBERSPÂCHER, H. F., Lógica de Programação. Makron. SALIBA, W. L. C., Técnicas de Programação, Makron ASCENCIO, A. F. G., Lógica de Programação com Pascal, Makron. FARRER, H. et. al. Algoritmos Estruturados, LTC. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Datas importantes o Avaliações n1ºGO: a Avaliação integrada no dia / / a Avaliação escrita e individual no dia / / a Avaliação escrita e individual no dia / / a 2º GQ: envolvendo todo conteúdo programático ministrado no semestre corrente e os exercícios do trabalho prático em grupo. a Avaliação escrita e individual no dia / / a 2.a chamada: A avaliação escrita e individual no dia / / a Exame: envolvendo todo conteúdo programático ministrado no semestre corrente. a Avaliação escrita individual no dia / / Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Material de apoio ao estudo Algoritmos Notas de aulas Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Professora Vânia Cristina de Souza Pereira 9 Algoritmos - Introdução a Lógica de Programação a E a técnica de encadear pensamentos para atingir determinado objetivo. a Sequência Lógica a São passos executados até atingir um objetivo ou solução de um problema. a Instruções a Um conjunto de regras ou normas definidas para a realização de algo. a Exemplo aOIOCOMB a são dados mas não constituem informação perceptível a Depois do processamento temos: COMBOIO a informação a Processamento de dados consiste em transformar os dados em informação útil e o algoritmo é o começo de tudo! Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Algoritmos - Introdução a Algoritmo a É uma segiiência finita de passos que levam a execução de uma tarefa. a Ou seja, uma receita, uma segiiência de instruções para uma meta específica. a Exemplos: a chupar bala a pegar uma bala a retirar o papel a colocar bala na boca a jogar papel no lixo a Programas a São algoritmos escritos em uma linguagem de programação (C, Pascal, Java, etc.) e que são interpretados e executados por uma máquina. a Cuidados devem ser tomados no desenvolvimento de algoritmos: algoritmo errado -—=» | resultado errado Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Representação de Algoritmos a Duas principais formas de representação a Pseudocódigo a Fluxograma a Pseudocódigo a Utiliza-se de uma linguagem intermediária entre a linguagem falada e a linguagem de programação a Devem ser independentes da linguagem de programação a ser posteriormente utilizada na codificação a Fluxograma a Temo objetivo de descrever graficamente a solução lógica do problema, possibilitando o planejamento da estrutura do programa e facilitando a validação da estrutura planejada. a Cada operação a ser executada é representada por um símbolo cuja forma identifica o tipo de processo envolvido. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Pseudocódigo a Tem a seguinte estrutura programa <identificador-do-programa> <declarações> Início <instruções> Fim. Onde: a <identificador-do-programa> a é o nome dado ao algoritmo pelo programador a <declarações> a onde são informados os tipos de dados e informações que serão manipulados a <instruções> a onde ocorreram as entradas de dados, os processamentos necessários e a saídas das informações desejadas. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Fluxograma — símbolos básicos CN — . ( ) | ou N / Indica o início ou Entrada de dados Procedimento interno término de um e/ou fluxograma mudança de conteúdo A A x, ad na ) < > ou (« ) o ad o — , , Tomada de decisão Repetição Saída de dados Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Tipos de Dados a Os tipos de dados podem variar de uma linguagem para outra. No entanto, existem dois tipos básicos: a Tipos simples; a Tipos estruturados (vetor, registro, etc., estudados mais adiante) Tipos de Dados Simples Numérico Caractere Lógico Inteiro Real /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Dado Numérico a São valores que representam números; a Os Dados Numéricos são divididos basicamente em dois grandes conjuntos: Inteiros e Reais; Tipo de Dado Numérico Inteiro a Os inteiros podem ser positivos, negativos ou nulos, mas não possuem um componente decimal; Exemplos: 1 -3 0 234 a Representam números entre -32768 e 32767 e ocupam 2 bytes de memória. Tipo de Dado Numérico Real a Os reais podem ser positivos, negativos ou nulos, e possuem sempre um componente decimal Exemplos: 1 1,45 -0,56 23,98 a Representam números reais de 11 algarismos significativos, entre 2,9 * 10:39 até 1,7 * 1038 e ocupam 6 bytes de memória. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP do Numérico a Observações a Os números inteiros consomem menos espaço de armazenamento em memória; a Os inteiros são compatíveis com os reais, mas os reais não são compatíveis com os inteiros; assim, um objeto real pode receber um valor inteiro, mas um objeto inteiro não pode receber um valor real. Dm C E > a Situações de dúvida a Exemplos: raiz quadrada de um número; divisão entre dois números inteiros. a Quando houver alguma possibilidade de um identificador numérico receber um valor não inteiro, deve ser declarado como real. 'a. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Dado Caractere a São tipos de dados não numéricos. a Também chamados strings ou literal. a É uma sequência de alfanuméricos. a São representados por letras (de A a Z, e de a a z), dígitos (de 0 a 9), espaço em branco ( ) e símbolos especiais (-,., ?,>, <, etc.) e ocupam de 1 a 255 bytes de memória. RE) a Devem sempre estar entre aspas a Exemplos: “a” “ave” “7,89” “Atenas 2004” /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP a À diferença entre dados caracteres e dados numéricos estão na forma de armazenamento, e nas operações legais permitidas sobre os mesmos. a Exemplo: operações aritméticas sobre os dados numéricos. a Para diferenciarmos um caractere de um nome de célula de memória ou de um dado numérico, utilizaremos aspas (“ ”). Assim: a 8 é um dado numérico; “8” é um caractere; a “A” é um caractere; A é um nome de célula de memória /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Dado Lógico a Também chamado de valores verdade ou booleanos. a São os valores que representam o conceito lógico de verdade e falsidade. a Os dados lógicos só podem assumir uma entre duas possibilidades (verdadeiro ou falso) e ocupam 1 byte de memória. a Só poderá armazenar um destes dois valores. a Muito utilizados em controle do fluxo lógico do algoritmo. a Outras formas de representação: a Exemplos: 0e1 VeF true e false sim e não /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP riáveis a Em princípio os objetos abaixo devem armazenar somente um tipo de dado, porém o conteúdo em si pode variar. a Exemplos a Um vaso armazena dados do tipo flor, entretanto, esta flor pode ser uma rosa, um cravo, uma orquídea, etc. a Uma máquina fotográfica armazena filme, mas pode ser colorido ou preto e branco. a O carrinho de carrega um bebê que pode ser o Joãozinho, o Marquinhos, a Aninha, etc. a O cofrinho armazena dinheiro (notas em papel, moeda ou então doláres, reais, euros, etc.) a A bomba de combustível pode conter álcool, gasolina, diesel, gás, etc. Flor Filme Bebê Dinheiro Combustível /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP riáveis a Em geral, as linguagens de programação exigem nomes de identificadores com as seguintes característica: a Use somente letras e números; a O primeiro caractere do nome deve ser uma letra; a Não é permitido o uso de caracteres especiais, exceto o caractere“. *. a Exemplos válidos: a Imposto de Renda, F1, soma, desconto, SalarioHora. a Exemplos inválidos: a 1f, Imposto-de-renda, salario hora. a O identificador de uma variável e o tipo de dado que irá armazenar não se alteram, enquanto o valor a ela associado pode mudar. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Variáveis Atributos (características) de uma variável: Nome, Tipo, Valor associado Célula de memória Nome do identificador (variável) Tipo de dado que será armazenado (inteiro, real, caractere ou lógico) = — ——» Valor associado (valor armazenado na célula de memória) Endereço Físico Identificador Tipo de dado Valor Associado 3000: B712 nome caractere “João” 2000: 12EC numero inteiro 12345 3000: 0004 letra caractere “Hº 3000: C223 medida real 0,35 2000: 11DA resposta lógico verdadeiro Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Variáveis a Os dados são valores que são armazenados em células de memória e que são acessados (ao longo do algoritmo) por referência às variáveis; a Assim, se tivermos os identificadores i, r, c, h, para objetos do tipo inteiro, real, caractere e lógico respectivamente, e atribuirmos os valores 100; 3,14; 'Z' e falso, teríamos a seguinte configuração: i r c h 100 3,14 Z “falso Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Variáveis ao Para a escolha do tipo de um identificador: deve-se conhecer bem a solução do problema. Exemplos de inteiros: Exemplos de caracteres: a Número de pessoas; a Um nome de pessoa; a Um número par ou ímpar; o Um endereço; a Idade de uma pessoa; a Um número de CEP; a Quantidade de objetos; a Um número de telefone; Exemplos de reais: a O peso de uma pessoa; a Um percentual; a Nota de uma avaliação; . . a Média: nSe a pessoa é maior de Exemplo de lógicos: nSe o sexo é feminino; a Preço de um produto; idade; Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Material de apoio ao estudo Constantes Notas de aulas Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Professora Vânia Cristina de Souza Pereira 34 tribuição a As variáveis podem ter seus valores modificados durante um algoritmo. a Esse processo é chamado de atribuição. a Dois elementos estão envolvidos: a elemento para o qual realizamos a atribuição => variável a elemento que fornece o valor a ser atribuído => expressão a CUIDADO! a O valor a ser atribuído deve ser do mesmo tipo de dado da variável. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP a Sintaxe variável — <valor> variável — <expressão> a Exemplos: axe 34 sexo < “FEMININO” ayex*3 salário <- 128,00 a considere as atribuições na<s be2 c+<10 o sefizermosa<-beb<-c,teremosa=2,b=10ec=10 /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Material de apoio ao estudo Entrada e Saída de dados Notas de aulas Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Professora Vânia Cristina de Souza Pereira 41 Entrada e Saída de Dados a Um algoritmo tem 3 passos principais: a receber informações a processar as informações a gerar uma saída com os resultados: a para o usuário a para um outro algoritmo (ex.: funções) entrada, ALGORITMO saída , Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Entrada e Saída de Dados a Entrada de Dados o Sintaxe Pseudocódigo Leia <lista de variáveis> Fluxograma a As informações recebidas por um algoritmo são armazenadas em variáveis. Linguagem de Programação readin(<lista de variáveis>); Exemplos Leiax,y Leia nome aluno a Saída de Dados expressões ou constantes. a Sintaxe Pseudocódigo Escrevaslista de variáveis> nome aluno Fluxograma <lista de variáveis> — ou . N <lista de 1 variáveis> / readIn(x, y); readin(nome aluno); Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Entrada e Saída de Dados a As informações de saída geradas pelo algoritmo podem vir de variáveis, Linguagem de Programação writeIn(<lista de variáveis>); Exemplos Escreva x Escreva “ Você pesa ", x *2,º quilos” x “ Você pesa *, N x *2; quilos V writeln(x); Writeln( ' Você pesa *, x *2,' quilos '); Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Operadores e Expressões Aritméticas a Expressões Aritméticas a Aquelas cujos operadores são aritméticos e cujos operandos são constantes e/ou variáveis do tipo numérico (inteiro e/ou real); a O resultado da avaliação é um valor do tipo de dado numérico. Expressão Matemática Expressão Algorítmica 2.a+b 2*a+b a.x? a*xt2 — +b a/2+b “Qual o resultado da avaliação da expressão 10-4*2 +12 Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Prioridades de Operadores Depende da prioridade da avaliação dos operadores! a As operações são realizadas em uma expressão de acordo com a ordem de prioridade. Quando houver empate entre operações, elas serão realizadas da esquerda para a direita Operador Operação Prioridade Matemática + Manutenção de sinal 1 Inversão de sinal 1 1 Exponenciação 2 ! Divisão 3 + Multiplicação 3 + Soma 4 Subtração 4 a Os parênteses quebram o ordem de prioridade natural. a | a/2+b errado mb. » a/(2+b) certo Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Observações a O resultado da expressão do lado direito de um comando de atribuição deve ser coerente com o tipo declarado para a variável do lado esquerdo na<b+c; se be c são do tipo real então a também deve ser real a Quando houver parênteses aninhados, a prioridade será do mais interno. a/(a+b)-Q*(b+c)) | [2 | 1] | A Ls a Qual o resultado da avaliação da expressão 10 -4*2 +19? Resp. 3. a Qual o resultado da avaliação da expressão (10 — 4) *(2 + 1) ? Resp. 18. a Qual o resultado da avaliação da expressão (10 —- 4)*2+1? Resp. 13. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Operadores Relacionais a Operadores Relacionais a Comparação entre objetos (ou entre um objeto e um valor) do mesmo tipo. a O resultado será sempre do tipo lógico (V ou F). Operador Significado Exemplo de uso > Maior que A>B,4>3,C>3 < Menor que 2A<B1T2 <> Diferente de A+B<>C = Igual a A=0 <= Menor ou igual a B*A<=0 >= Maior ou igual a 'a >='p' a O operador relacional perde em prioridade para os operadores aritméticos. a O operador relacional é binário, isto é, ele deve envolver um operando a sua esquerda e um a sua direita. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Operadores Lógicos a Utilizados no processo de tomada de decisão e em controles de repetição. a O resultado da operação é sempre um valor lógico (verdadeiro/falso). Operador | Significado | Exemplo de uso Prioridade E Conjunção AeB H OU Disjunção A ou B HI Não Negação Não A I a Os operadores E e OU são binários e o operador NÃO é unário. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Expressões Lógicas a São expressões que resultam em valores lógicos. a À expressão A e B será verdadeira quando o operando A e o operando B produzirem resultados verdadeiros simultaneamente. Qualquer outra combinação de valores destes operandos produzirá resultado falso. a À expressão A ou B será verdadeira quando uma das proposições (operando A ou operando B) produzir resultado verdadeiro. a Combinações de operandos relacionais e lógicos. a Exemplos: x>=0 E x<=1 carro = “gol” OU carro = “corsa” /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Seleção Composta a Quando temos situações em que duas alternativas dependem de uma mesma condição, uma alternativa se a condição for verdadeira e outra se a condição for falsa, usamos a estrutura de seleção composta, que tem a seguinte estrutura: Fluxograma -N Pseudocódigo Linguagem de < <condição> Falso Programação O se <condição> então if <condição> then Verdadeiro <instruções> <instruções> senão else <instruções> <instruções> <instruções>; fim se | a Onde se a <condição> for verdadeira então executará um determinado grupo de instruções, caso contrário executará as instruções que seguem a cláusula senão. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP a Idade para emissão da carteira de motorista Pseudocódigo programa idade var idade, x : inteiro inicio leia idade se idade >= 18 então escreva “ Você pode tirar a carteira ” senão escreva “Você não pode tirar a carteira” x< 18- idade escreva “ Ainda faltam”, x, “anos” fim se fim Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Fluxograma ( início |) Ro Linguagem de Programação idade program idade; TT F / “Você não 5 var idade, x : integer; idade >= 18 X podetirar | begin y , acarteira” J readin(idade); fan if (idade >= 18) then “Você pode | xe writeln( ' Você pode tirar a carteira ') (o tirara |) 18 - idade else N carteira J begin / “Ainda N writeln(* Você não pode tirar a carteira '); faltam “, x, x := 18 idade; N “anos” J writeIn(' Ainda faltam, x, “anos '); CT Cc end. Seleção encadeada a Em algumas situações temos necessidade de agruparmos várias seleções que recebe o nome de seleção encadeada ou seleção aninhada. a Exemplo: Verificar qual é o maior de três números digitados Pseudocódigo Linguagem de Programação Programa maior Program maior; vara,b,c: real vara, b,c: real; inicio begin leia a, b, c readin(a, b, c); se (a >= b) e (a >=c) então if (a >= b) and (a >= c) then escreva a,“ é o maior” writeln (a, é o maior) senão else se (b >= a) e (b >= c) então if (b >= a) and (b >= c) then escreva b,” é o maior” writeln (b,' é o maior *) senão else escreva c, “é o maior ” writeln (c, 'é o maior '); fim end. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Seleção encadeada Fluxograma O início ) N — 2F — bae — F — 2". o p>=c — V | S c, “é o maior ) JJ Y a a, “é o maior” ) A b,“ é o maior” NA /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estrutura de Seleção Múltipla a Esta é uma estrutura que permite que seja executado um único conjunto de instruções, entre vários, de acordo com o valor de um objeto; a Esta estrutura pode substituir a ocorrência de várias estruturas SE- ENTAO ou SE-ENTAO-SENAO; a À desvantagem em relação ao comando SE é que esta estrutura não analisa condição composta (com mais de um operador) /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Repetições a São necessárias quando se tem que repetir uma determinada instrução, que represente um comportamento padrão, várias vezes. a Com estas estruturas, escreve-se a instrução uma única vez, e ela pode ser executada várias vezes. a Repetições podem ser controladas por: a Condição; a Contador. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP ruturas de Repetições a Quando o controle é por contador, a interrupção é prevista no instante em que é iniciada a execução da estrutura de controle de repetições; a Quando o controle é por condição, deverá haver uma expressão lógica, e a interrupção será controlada por meio do resultado desta expressão. a É imprescindível que haja uma instrução dentro do bloco de instruções que permita a alteração do valor lógico da condição; /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Permite executar diversas vezes um trecho do algoritmo, porém, sempre verificando antes de cada execução se é “permitido” executar o trecho. Pseudocódigo a Fluxograma enquanto <condição> faça j <instruções> fim enquanto Falso <condição> Verdadeiro v Linguagem de Programação <instruções> while <condição> do <instruções>; Y Lembramos que em uma <condição> o resultado deve ser verdadeiro ou falso. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP enquanto (<condição>) faça <instruções> Fim enquanto a O bloco será executado enquanto o resultado da <expressão lógica> for verdadeiro. a Se já da primeira vez o resultado for falso, os comandos não são executados nem uma vez. a O fluxo neste comando é o seguinte: a primeira vez que se chega ao comando de repetição, é feito o teste da <expressão lógica>, que determina se deve ou não entrar no bloco. a Se entrar, ao final do bloco volta-se para a primeira linha do bloco e então testa-se novamente a <expressão lógica>. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Calcular a média aritmética de 3 notas de 30 alunos. Pseudocódigo Linguagem de Programação Algoritmo Media 30 Program Media 30; var cont : inteiro var cont : integer; n1,n2,n3,media: real n1,n2,n3,media : real; início begin cont < O cont := 0; enquanto cont < 30 faça while cont < 30 do leia n1,n2,n3 begin media «< (n1+n2+n3)/3 read (n1,n2,n3); cont <- cont + 1 media := (n1+n2+n3)/3; escreva media cont := cont + 1; fim enquanto write(media); fim end; end. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP 5 Fluxograma início . conte O a y V nt “n2,n3 media <— (n1+n2+n3)/3 y cont — cont +1 media / (fim ) /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP rutura de Repetição Repita Esta estrutura permite que uma sequência de comandos sejam executada até que uma determinada condição seja satisfeita. Esse tipo de repetição garante que o comando seja executado pelo menos uma vez antes que a repetição termine. Pseudocódigo Fluxograma Y repita <instruções> até que <condição> r—> <instruções> Linguagem de Programação <condição> repeat <instruções> until <condição> <condição> é uma expressão lógica, ou seja, o resultado deve ser verdadeiro ou falso. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP de Repetição Repita repita <seqiência de comandos> Até que <condição> a O bloco será executado sempre que o resultado da expressão for falso, no momento em que se tornar verdadeiro a ação subsequente ao comando “até que” será executada. a O fluxo neste comando é o seguinte : a primeira vez que se chega ao comando de repetição, entra-se no bloco. a Ao final do bloco testa-se a condição e volta para a primeira linha do bloco se a condição for falsa. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Calcular a média aritmética de 3 notas de 30 alunos. Linguagem de Programação Pseudocódigo Program Media 30; uses crt; var cont : integer; n1,n2,n3,media: real; Algoritmo Media 30 var cont : inteiro n1,n2,n3,media : real .. begin Início 9 cont := 1; cont < 1 . repeat repita Irscr leia (n1,n2, n3) CISer, media <— (n1 +n2+n3)/3 cont < cont + 1 escreva (media) até que cont > 30 fim writeln( * Digite as 3 notas =>); read (n1,n2,n3); media := (n1+n2+n3)/3; write(media:0:2); cont := cont + 1; until cont > 30; end. 'a. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP O início Fluxograma ( início ) conte 1 » “mn2, n3 media <— (n1+n2+n3)/3 cont — cont +1 eo, /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Resumo Notas de aulas Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Professora Vânia Cristina de Souza Pereira 83 CONCEITOS BÁSICOS a ALGORITMOS a São formas de resolução de um problema, através da especificação passo-a- passo de como resolvê-lo. a À noção de algoritmo é básica em Computação. Resolução de Problemas por Computador Dar uma solução para um problema computacional significa elaborar um ALGORITMO em PSEUDO-CÓDIGO (linguagem intermediária entre a linguagem natural e a linguagem de programação) e implementá-lo numa linguagem de programação, gerando um PROGRAMA. Um algoritmo é uma sequência de passos bem definida que resolve determinado problema, através da transformação de dados iniciais na resposta desejada, tendo cinco importantes características: Deve ser finito; Os passos devem ser bem definidos, sem ambigúidades,; Deve ser eficaz; Deve possuir uma entrada; Deve produzir uma saída ou resultado. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Controle de Fluxo a Sequência a Seleção a simples a composta a múltipla a Repetição a Teste condicional no início a Número de repetições conhecido a Número de repetições desconhecido a Teste condicional no fim a Número de repetições desconhecido Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Controle de Fluxo Sequência Seleção simples início início <comando 1> o <comando 2> se <condição 1> então no inicio <comando n> <comando 1> Fim. <comando 2> <comando n> fim Fim se fim. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Controle de Fluxo Seleção composta início n Seleção múltipla se <condição> então início <comando 1> a <comando 2> Bloco caso <variável> nn Verdade seja <valor1> faça <comando 1> <comando n> seja <valor2> faça <comando 2> senão seja <valorN> faça <comando N> <comando 1> senão <comando> <comando 2> Bloco fim caso <comando n> fim. Fim se fim. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Controle de Fluxo Repetição = Usada em trechos do algoritmo em que há a necessidade de se realizar um bloco de comando um número determinado de vezes. Repetição com teste no início => ENQUANTO Permite executar diversas vezes um trecho do algoritmo, porém, sempre verificando antes de cada execução se é “permitido” executar o trecho. enquanto <condição> faça <comando 1> <comando 2> <comando n> fim enquanto Quando o resultado da <expressão lógica> for falso, o comando é abandonado. Se já da primeira vez o resultado for falso, os comandos não são executados nem uma vez. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Controle de Fluxo o Repetição com teste no final > REPITA repita <comando 1> <comando 2> <comando n> até que <condição> a O bloco de comandos é executado pelo menos uma vez, independente da validade da <expressão lógica>. Isto ocorre porque a inspeção da <expressão lógica> é feita após a execução do bloco. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Estruturas de Controle de Fluxo Repetição com variável de controle (PARA) para <variável> de <início> até <fim> faça <comandos> fim para onde: * <variável> é uma variável de controle do tipo inteiro; * <início> é o valor inicial da variável de controle; * <fim> é o valor final da variável de controle, ou seja, o valor até o qual ela pode chegar. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP o Equivalência de termos entre pseudocódigo e Pascal: PSEUDOCÓDIGO PASCAL Se If Então Then Senão Else Enquanto While Faça Do Repita Repeat Até Until /To Para For Caso Case... of Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Fi: Free Pascal IDE =Jo/x| Fil= Edit Fun Compile Debua Tools Gprions o Windoyu Helo lizr: Free Pascal IDE Eb Sorado Lsnur. pas program somado isnum EE Ê ETR PR PA DE A = begin clrscrs , writelni'Digite o lo, numero"); Esso (= DO CEA AURA TOR E : + nes E Pta Pia da =oma & igual ar"ls File Edit Search MBM Compile Detua Tools dptions Window 1] Fun Ctrl+a Step quer Ea Trace into Er Goto Cursor Fa Fis Free Pascal IDE -|D|x| z E Run Directory... Parameters..a Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Material de apoio ao estudo Exercícios Notas de aulas Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Professora Vânia Cristina de Souza Pereira [= CIA [ATO EH Lógica -5 Ito Ar EN RS) 10. José tem o mesmo número de irmãos e irmãs. Cada irmã, contudo, tem duas vezes mais irmãos que irmãs. Quantos irmãos e irmãs tem a família? 11. Três pessoas que almoçaram em um restaurante, resolveram dividir a conta de R$ 30,00 igualmente, ou seja, cada um colaborou com R$ 10,00. Contudo o dono do restaurante disse ao garçom: — Aqueles são meus conhecidos. Irei cobrar apenas R$ 25,00. Devolva R$ 5,00 a eles. Porém, o garçom pensou: — Como vou dividir R$ 5,00 por 3 pessoas ? Devolverei apenas R$ 3,00 e eles ficarão contentes de qualquer forma! Feito isso, o garçom guardou R$ 2,00 e devolveu os R$ 3,00 restantes. Ou seja, cada um gastou então R$ 9,00 que totalizam R$ 27,00 gastos. Estes R$ 27,00 mais os R$ 2,00 que ficaram com o garçom dão R$ 29,00. O que aconteceu com R$ 1,00 ?! Como se explica isso ? 12. Dois guardas vigiam a porta do Céu e a do Inferno. Um deles só fala a verdade. O outro guarda só fala mentiras, sempre dando respostas contrárias. Você não sabe qual é o mentiroso. Com uma pergunta apenas, a somente um dos guardas, você deve descobrir a porta do Céu. Qual pergunta você faria ? Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Algoritmos - 1 1. Construa um algoritmo em diagrama de blocos (fluxograma) que : a Leia a cotação do dólar a Leia um valor em dólares a Converta esse valor para Real a Mostre o resultado 2. Desenvolva um algoritmo em pseudocódigo que: a Leia 4 (quatro) números a Calcule o quadrado para cada um a Some todos os quadrados a Mostre o resultado 3. Construa um algoritmo em pseudocódigo para pagamento de comissão de vendedores de peças, levando-se em consideração que sua comissão será de 5% do total da venda e que serão fornecidos os seguintes dados: a Identificação do vendedor a Código da peça a Preço unitário da peça a Quantidade vendida E depois construa o diagrama de blocos do algoritmo desenvolvido. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Tipos de Dados - 1 1. Identifique quais os tipos de dados para: a Cotação do dólar a Valor em dólares a Valor em Real a Identificação do vendedor a Código da peça a Preço unitário da peça a Quantidade vendida 2. Para realizar uma pesquisa com um grupo de 50 pessoas, foram obtidos os seguintes dados de cada pessoa: nome, idade, sexo e salário e depois do processamento foi informado pelo computador: a quantidade de mulheres entrevistadas, a quantidade de homens entrevistados e o total de salário de todos os entrevistados. Quais os tipos de dados para: a Nome a Idade a Sexo a Salário a quantidade de mulheres a quantidade de homens a total de salário 1. Escreva a declaração de constantes e variáveis para os exercícios a, b e c. a) receba código da peça receba valor da peça receba quantidade de peças calcule o valor total da peça (quantidade * valor da peça) mostre o código da peça e seu valor total b) A média ponderada corresponde a multiplicação de cada valor fornecido pelo seu peso, a soma de todos os valores dividida pela soma dos pesos. Se fornecermos três valores quaisquer e sendo os pesos 1,2 e 3, respectivamente, qual será a média ponderada. c) Para realizar uma pesquisa com um grupo de 50 pessoas, foram obtidos os seguintes dados de cada pessoa: nome, idade, sexo e salário e depois do processamento foi informado pelo computador: a quantidade de mulheres entrevistadas, a quantidade de homens entrevistados e a soma total do salário de todos os entrevistados. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Atribuição - 1 1. Cada um dos comandos de atribuição abaixo tem um erro. Identifique-os a Ve a+B d) PROD>A+B b)4e-| JA (2+A)*C oOJV-396<-X*1,65 DA<C+D E+F 2. Escreva comandos de atribuição para efetuar as seguintes tarefas: a) Atribuir para a variável X o valor 10, desprezando o antigo valor armazenado na variável X. b) Fazer o valor de | assumir um valor 10 unidades maior que o atual. c) Trocar o sinal do valor da variável A. d) Somar ao valor corrente da variável BETA o valor 2,51, fazer a soma do novo valor de BETA com a variável DELTA e guardar o valor final desta operação numa variável chamada GAMA. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Entrada e Saída de Dados - 1 1. Identifique os dados de entrada e saída para os exercícios a, be c. a) receba código da peça receba valor da peça receba quantidade de peças calcule o valor total da peça (quantidade * valor da peça) mostre o código da peça e seu valor total b) A média ponderada corresponde a multiplicação de cada valor fornecido pelo seu peso, a soma de todos os valores dividida pela soma dos pesos. Se fornecermos três valores quaisquer e sendo os pesos 1,2 e 3, respectivamente, qual será a média ponderada. c) Para realizar uma pesquisa com um grupo de 50 pessoas, foram obtidos os seguintes dados de cada pessoa: nome, idade, sexo e salário e depois do processamento foi informado pelo computador: a quantidade de mulheres entrevistadas, a quantidade de homens entrevistados e a soma total do salário de todos os entrevistados. Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Estruturas de Seleção - 2 2. Escreva um programa que verifique se um número inteiro qualquer digitado é par ou impar. 3. Escrever um programa que que receba duas variáveis reais e atribua a uma terceira variável o maior valor. 4. Codifique um programa que avalie se um aluno está aprovado ou não conforme o critério de aprovação da Uninove, ou seja, média maior ou igual a 7 o alunos está aprovado, média abaixo de 7 exame. Se o aluno estiver em exame, ler sua nota de exame e verificar se está aprovado ou não. O critério para o cálculo da média final para os alunos que estão em exame é a soma da media com a nota do exame dividido por dois. A média final deverá ser maior ou igual a 5. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Estruturas de Seleção - 3 5. Faça um algoritmo para calcular o valor total a pagar por um consumidor que abasteceu seu carro, sabendo que serão informados o tipo de combustível escolhido (G/A/D) e o número de litros consumido. Considere os seguintes preços por litro de combustível: a Gasolina R$ 1,70; a Álcool R$ 1,20; a Diesel R$ 0,90. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Estruturas de Seleção - 4 6. Escrever um algoritmo que leia o código do item pedido, a quantidade e calcule o valor a ser pago por aquele lanche. Considere que a cada execução somente será calculado um item. Código Item Preço 100 cachorro-quente 1,10 101 bauru simples 1,30 102 bauru com ovo 1,50 103 refrigerante 0,70 Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Estruturas de Seleção - 5 7. Uma empresa concederá um aumento de salário aos seus funcionários, variável de acordo com o cargo, conforme a tabela abaixo. Faça um algoritmo que leia o salário e o código do cargo de um funcionário e calcule o novo salário. Se o cargo do funcionário não estiver na tabela, ele deverá, então, receber 40% de aumento. Mostre o salário antigo, o novo salário e a diferença. Código Cargo Aumento 001 gerente 10% 002 engenheiro 20% 003 técnico 30% Profa. Vânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Estruturas de Seleção - 6 8. Faça um algoritmo que calcule e informe o valor total do salário semanal de um vendedor de carros, sabendo que o mesmo ganha um salário fixo de R$ 300,00 e mais comissão. A comissão é igual a 3% se ele vender menos de 3 carros p/ semana; 5% se vender entre 4 e 6 carros; e 7% se vender entre 7 e 10 carros; e 10% se vender além de 10 carros. Suponha que todos os carros vendidos custem R$ 10.000,00 e que será informado o número de carros vendidos p/ semana pelo vendedor. /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Estruturas de Repetição - 1 1. Foi feita uma pesquisa em uma universidade entre os acadêmicos matriculados na instituição. Todos os acadêmicos que estavam presentes no dia da pesquisa, preencheram ao seguinte questionário: Sexo? (M- masculino; F- feminino): Idade? (em anos): Gosta do curso que está fazendo? (S- sim; N- não): O número de pessoas que responderam ao questionário é indeterminado. Faça um algoritmo que seja capaz de calcular e informar: a) o número de homens entrevistados com menos de 23 anos; b) o número de mulheres entrevistadas que estão gostando do curso que estão fazendo; c) o total de alunos entrevistados. 2. Escreva um algoritmo que leia um número inteiro e calcule o seu fatorial. (Dica: 5! = 5x4x3x2x1 = 120) /ânia Cristina de Souza Pereira — Ago/2006 - Material de apoio ao estudo - Notas de aulas - ALP Exercícios: Lógica - 3 (Prof. André Luís P. Santos) 3. Qual o valor da expressão abaixo ? Por quê ? o P=(a-x).(b-x).(c-x).....(z-x) Solução: Nos termos com subtração, verifica-se que o subtraendo é fixo (“x”) e o minuendo evolui em ordem alfabética (de “a” ate “z'). Desse modo, existirá um termo (x — x), que resultará zero e será um dos fatores da multiplicação. Portanto o resultado da expressão será zero. 4. Você tem três caixas e apenas uma delas tem um presente dentro. Cada caixa contém uma inscrição, fornecendo uma pista, mas apenas uma dessas inscrições é verdadeira. o Caixa nº1 ='“O presente está aqui” o Caixa nº2 =“O presente não está aqui” o Caixa nº3 =*“O presente não está na Caixa nº 1º ao Em qual caixa está o presente ? Explique como você chegou a sua conclusão. Solução: O enunciado determina que apenas uma das inscrições é verdadeira Sabendo disso: - Se o presente estivesse na Calxa nº 1, haveria duas Inscrições corretas (a próprianº 1 e anº 2); - Se estivesse na Caixa nº 3, também haveria duas Inscrições verdadelras (a nº 2 e a própria nº 3); - A Unica alternativa coerente com o enunciado é o presente estar na Calxa nº 2, pols assim soments a Inscrição da nº 3 fica verdadeira. 5. Daniela é mais jovem do que Adriano; Carlos é mais velho do que Daniela. a Assinale F para as conclusões falsas e V para as conclusões verdadeiras : (F)- Adriano é mais velho do que Carlos. € não é possível concluir isso. ( F) - Carlos é mais velho do que Adriano e Daniela. € Carlos é mais velho que Daniela, mas não se sabe se é mais velho que Adriano. ( F)-Carlos e Adriano têm a mesma idade. € Também não é possível concluir isso. (V')- Daniela é a mais jovem dos trés. € A partir dos dados fornecidos, pode-se afirmar isso Solução (organização): Daniela < Adriano Daniela <= Carlos. a de Souza Pere Exercícios: Lógica - 4 6. Três senhoras, Dona Branca, Dona Rosa e Dona Violeta, passeavam juntas quando Dona Rosa disse: — Não é curioso que estejamos usando vestidos das cores branca, rosa e violeta, embora nenhuma de nós esteja usando um vestido de cor igual ao seu próprio nome ? — Uma simples coincidência — respondeu a senhora com vestido violeta. Qual a cor do vestido de cada senhora ? Explique como você chegou à sua conclusão. Solução: Dona Rosa poderia estar com vestidos da cor branca ou violeta, porem recebeu uma resposta da senhora com vestido violeta, portanto ela só pode estar com o vestido branco A partir disso, pode-se deduzir que Dona Violeta (que poderia estar de branco ou rosa) está com vestido rosa. Finalmente, Dona Branca está com vestido violeta. (Prof. André Luís P. Santos) 7. Um médico receitou 3 comprimidos para tomar 1 a cada 30 minutos. Solução: Cerca de 60 minutos (muitas pessoas se apressam e respondem 90 minutos, pois multiplicam 30 por 3) 8. Um avião brasileiro embarca em destino aos EUA. O avião sofre um acidente na fronteira do Brasil com o Paraguai. Onde são enterrados os sobreviventes? Solução Os sobreviventes logicamente não foram enterrados, pois estão vivos 9. Pelas leis do Brasil, um homem pode se casar com a irmã de sua viúva? Solução: Não (independente de qualquer lel) Se a mulher é viúva, significa que o homem já morreu. stina de Souza Pereira terial de apoio ao estud: Exercícios g ICa 5 (Prof. André Luís P. Santos) 10. José tem o mesmo número de irmãos e irmãs. Cada irmã, contudo, tem duas vezes mais irmãos que irmãs. Quantos irmãos e irmãs tem a família? Solução: Seja: “h" a quantidade de irmão “m” a quantidade de irmãs. 1º equação (quantidade de irmãos e irmãs, de um irmão): m=h-1=>h=m+1 2º equação (quantidade de irmãos e irmãs, de uma irmã): m-1=h/2=m=(h/2)+1 Resolvendo o sistema de equações, passo-a-passo: ( m=h-1 m=4-1 h=->+2 2 p-2=2 2 . Santos) 11. Três pessoas que almoçaram em um restaurante, resolveram di: igualmente, ou seja, cada um colaborou com R$ 10,00. Contudo o dono do restaurante disse ao garçom: — Aqueles são meus conhecidos. Irei cobrar apenas R$ 25,00. Devolva R$ 5,00 a eles. Porém, o garçom pensou: — Como vou dividir R$ 5,00 por 3 pessoas ? Devolverei apenas R$ 3,00 e eles ficarão contentes de qualquer forma! Feito isso, o garçom guardou R$ 2,00 e devolveu os R$ 3,00 restantes. Ou seja, cada um gastou então R$ 9,00 que totalizam R$ 27,00 gastos. Estes R$ 27,00 mais os R$ 2,00 que ficaram com o garçom dão R$ 29,00. O que aconteceu com R$ 1,00 ?! Como se explica isso ? Solução: Sofisma; Falácia (induzindo ao erro). Do Dicionário | louaiss sofisma = substantivo masculino 1. argumento ou raciocínio concebido com o objetivo de produzir a ilusão da verdade, que, embora simule um acordo com as regras da lógica, apresenta, na realidade, uma estrutura interna inconsistente, incorreta e deliberadamente enganosa 2 argumentação que aparenta verossimilhança ou veridicidade, mas que comete involuntariamente incorreções lógicas; paralogismo 3 qualquer argumentação capciosa. concebida com a Intenção de Induzir em erro. o que supõe má-fé por parte daquele que a apresenta cavilação 4 mentira ou ato praticado de má-fé para enganar (outrem); enganação, logro, embuste Na realidade foram realmente gastos, no final, R$ 27,00 (R$ 25,00 cobrados pelo dono, mais R$ 2,00 que ficaram com o garçom) que somados aos ES 3,00 de troco totalizam os R$ 30,00 reais entregues inicialmente. 12. Dois guardas vigiam a porta do Céu e a do Inferno. Um deles só fala a verdade. O outro guarda só fala mentiras, sempre dando respostas contrárias. Você não sabe qual é o mentiroso. Com uma pergunta apenas, a somente um dos guardas, você deve descobrir a porta do Céu. Qual pergunta você faria ? Solução: Pergunta-se para um dos guardas: “Segundo o que diz o outro guarda, qual a porta do Céu?” A resposta sempre será o contrário, ou seja, sempre será indicada a porta contrária à solicitada | fazer analogia a um circuito lógico booleano, com uma entrada e uma porta “NOT".) PATA RR A A RT: RENT RE TATO Centro Universitário Nove de Julho - UNINOVE Algoritmos e Lógica de Programação Material de apoio ao estudo Em caso de dúvidas escreva para: vcspereiraDuninove.br Material disponível para download em: http://prof.vania.cristina.sites.uol.com.br Notas de aulas Professora Vânia Cristina de Souza Pereira
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved