Índice - ?ão Continuada... · 11.1 Variáveis Indexadas Uni Dimensionais(Vetores) ... (Matrizes)

  • View
    212

  • Download
    0

Embed Size (px)

Text of Índice - ?ão Continuada... · 11.1 Variáveis Indexadas Uni Dimensionais(Vetores) ... (Matrizes)

  • ndice

    1. Algoritmos _______________________________________________________________________ 3

    2. Fases de um Algoritmos ____________________________________________________________ 4

    3. Estrutura de Algoritmos____________________________________________________________ 5

    4. Variveis_________________________________________________________________________ 6

    4.1 Formao de Variveis ___________________________________________________________ 7

    4.2 Contedo de uma Varivel ________________________________________________________ 7

    4.3 Tipos de Variveis_______________________________________________________________ 7

    5. Tipos de Dados____________________________________________________________________ 8

    6. Definio de Variveis _____________________________________________________________ 9

    6.1 Comando de atribuio___________________________________________________________ 9

    6.2 Variveis do tipo CHAR(Caracter) e STRING(Cadeia)_________________________________ 10

    7. Operadores______________________________________________________________________ 13

    7.1 Operadores matemticos_________________________________________________________ 13

    7.2 Operadores Lgicos ____________________________________________________________ 13

    8. Comandos de Entrada e Sada ______________________________________________________ 16

    9. Processos de Repetio e Seleo ____________________________________________________ 18

    9.1 Estrutura de Repetio ENQUANTO-FAA (WHILE DO) ______________________________ 18

    9.2 Estrutura de repetio REPITA-AT ( Repeat Until) ___________________________________ 20

    9.3 Estrutura de repetio PARA-FAA (FOR ... TO... DO) ________________________________ 21

    10. Estrutura de seleo _____________________________________________________________ 24

    10.1 Estrutura SEENTOSENO (IFTHENELSE) ________________________________ 24

    10.2 Estrutura CASE _______________________________________________________________ 28

    11. Variveis Compostas Homogneas _________________________________________________ 31

    11.1 Variveis Indexadas Uni Dimensionais(Vetores) _____________________________________ 31

    11.2 Variveis Indexadas Bidimensionais(Matrizes) ______________________________________ 36

    12. Funes pr-definidas do Pascal ___________________________________________________ 39

    12.1 Descrio das Funes/Rotinas:__________________________________________________ 39

    13. Problemas Resolvidos em Algoritmos, Pascal e C _____________________________________ 48

    13.1 Algoritmo do Triangulo_________________________________________________________ 48

    13.2 Algoritmo Preco Automvel _____________________________________________________ 49

    13.3 Algoritmo Media Valor _________________________________________________________ 50

    13.4 Algoritmo 3 Menores___________________________________________________________ 51

    13.5 Algoritmo Media Maior que 4____________________________________________________ 52

    13.6 Algoritmo Salrio _____________________________________________________________ 54

    13.7 Algoritmo 50 Triangulos ________________________________________________________ 55

    1

  • 13.8 Algoritmo Media Menores_______________________________________________________ 56

    2

  • 1. Algoritmos

    Algoritmo no a soluo de um problema, pois, se assim fosse, cada problema teria um nico algoritmo. Algoritmo um caminho para a soluo de um problema, e em geral, os caminhos que levam a uma soluo so muitas. O aprendizado de algoritmos no se consegue a no ser atravs de muitos exerccios. Algoritmos no se aprende: - Copiando Algoritmos - Estudando Algoritmos Algoritmos s se aprendem: - Construindo Algoritmos - Testando Algoritmos

    3

  • 2. Fases de um Algoritmos

    Quando temos um problema e vamos utilizar um computador para resolve-lo inevitavelmente temos que passar pelas seguintes etapas: a) Definir o problema. b) Realizar um estudo da situao atual e verificar quais a(s) forma(s) de resolver o problema.

    c) Terminada a fase de estudo, utilizar uma linguagem de programao para escrever o programa que dever a princpio, resolver o problema. d) Analisar junto aos usurios se o problema foi resolvido. Se a soluo no foi encontrada, dever ser retornado para a fase de estudo para descobrir onde est a falha.

    Estas so de forma bem geral, as etapas que um analista passa, desde a apresentao do problema at a sua efetiva soluo. Iremos, neste curso, nos ater as etapas de estudo, tambm chamada de anlise, e a etapa de programao. Mas antes vamos definir o seguinte conceito: Programar um computador consiste em elaborar um conjunto finito de instrues, reconhecidas pela mquina, de forma que o computador execute estas instrues. Estas instrues possuem regras e uma Sintaxe prpria, como uma linguagem tipo portugus ou ingls, sendo isto chamadas de linguagem de computador. No mundo computacional existe uma grande variedade de linguagens Pascal, C, C++, Cobol, Fortran, etc . Ns iremos enfocar uma delas, o Pascal.

    4

  • 3. Estrutura de Algoritmos

    Antes de utilizarmos uma linguagem de computador, necessrio organizar as aes a serem tomadas pela mquina de forma organizada e lgica, sem nos atermos as regras rgidas da Sintaxe de uma linguagem. Para isto utilizaremos uma forma de escrever tais aes, conhecida como algoritmo, ou pseudo-cdigo. Conceituando: Algoritmo consiste em um conjunto lgico e finito de aes ( instrues ) que resolvem um determinado problema. Os algoritmos tero a seguinte estrutura:

    ALGORITMO INCIO FIM

    Em Pascal ficaria da seguinte forma:

    PROGRAM ; BEGIN ; END.

    5

  • 4. Variveis

    O computador possui uma rea de armazenamento conhecida como memria. Todas as informaes existentes no computador esto ou na memria primria ( memria RAM ), ou na memria secundria ( discos, fitas, CD-ROM etc ). Ns iremos trabalhar, neste curso, somente com a memria primria, especificamente com as informaes armazenadas na RAM ( memria de acesso aleatrio ). A memria do computador pode ser entendida como uma seqncia finita de caixas, que num dado momento, guardam algum tipo de informao, como nmero, uma letra, uma palavra, uma frase etc, no importa, basta saber que l sempre existe alguma informao. O computador, para poder trabalhar como alguma destas informaes, precisa saber onde, na memria, o dado est localizado. Fisicamente, cada caixa, ou cada posio de memria, possui um endereo, ou seja, um nmero, que indica onde cada informao est localizada. este nmero representado atravs da notao hexadecimal, tendo o tamanho de quatro, ou mais bytes. Abaixo segue alguns exemplos:

    Endereo Fsico Informao 3000: B712 Joo 2000: 12EC 12345 3000: 0004 H

    Como pode ser observado, o endereamento das posies de memria atravs de nmeros hexadecimais perfeitamente compreendido pela mquina, mas para ns humanos torna-se uma tarefa complicada. Pensando nisto, as linguagens de computador facilitaram o manuseio, por parte dos usurios, das posies de memria da mquina, permitindo que, ao invs de trabalhar diretamente com os nmeros hexadecimais, fosse possvel dar nomes diferentes a cada posio de memria. Tais nomes seriam de livre escolha do usurio. Com este recurso, os usurios ficaram livres dos endereos fsicos ( nmeros hexadecimais ) e passaram a trabalhar com endereos lgicos ( nomes dados pelos prprios usurios ). Desta forma, o Exemplo acima, poderia ser alterado para ter o seguinte aspecto:

    Endereo Fsico Informao Nome Joo

    nmero 12345 letra H

    Como tnhamos falado, os endereos lgicos so como caixas, que num dado instante guardam algum tipo de informao. Mas importante saber que o contedo desta caixa no algo fixo, permanente, na verdade, uma caixa pode conter diversas informaes, ou seja, como no Exemplo acima, a caixa ( Endereo Lgico ) rotulada de Nome num dado momento contm a informao Joo, mas em um outro momento, poder conter uma outra informao, por Exemplo Pedro. Com isto queremos dizer que o contedo de uma destas caixas ( endereo lgico ) podem variar, isto podem sofrer alteraes em seu contedo. Tendo este conceito em mente, a partir de agora iremos chamar de forma genrica, as caixas ou endereos lgicos, de variveis. Desta forma podemos dizer que uma varivel uma posio de memria, representada por um Nome simblico ( atribudo pelo usurio ), a qual contm, num dado instante, uma informao.

    6

  • 4.1 Formao de Variveis

    Uma varivel formado por uma letra ou ento por uma letra seguida de letras ou dgitos, em qualquer nmero. No permitido o uso de espaos em branco ou de qualquer outro caractere, que no seja letra ou dgito, na formao de um identificador. Na formao do nome da varivel de um nome significativo, para que se possa ter idia do seu contedo sem abri-l. Se utilizar palavras para compor o nome da varivel utilize o _ underline para separar as palavras.

    4.2 Contedo de uma Varivel

    Dados - Elementos conhecidos de um problema Informao - Um conjunto estruturado de dados, transmitido conhecimento

    4.3 Tipos de Variveis

    Considere a frmula matemtica simples do calculo do volume de uma esfera:

    V R=43

    3 onde se encontram: 1- valores que podem ser classificados como:

    a) valores constantes, invariantes em todas as aplicaes da frmula, no caso dos valores 4, 3 e aos denomina-se constantes; b) valores a serem substitudos na frmula, em cada aplicao; a representao destes valores, usualmente feita atravs de letras, que recebem o nome de variveis e tornam a frmula genrica, possvel de ser aplicada para resolver uma certa classe de problemas e no apenas um problema especfico.

    2 - Operaes a serem feitas sobre det