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

Apostila 01, Notas de estudo de Informática

Nessa apostila vc vai aprender um pouco mais sobre o pascal não é nada dificil so que é necessario material de estudo para aprender mais . Espero que gostem!!!!

Tipologia: Notas de estudo

2011

Compartilhado em 02/03/2011

viviane-santos-almeida-4
viviane-santos-almeida-4 🇧🇷

3 documentos

1 / 59

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Tubarão / Santa Catarina / BRAZIL
E-Mail : osmarjr@unisul.rct-sc.br
http://tec1.unisul.rct-sc.br/osmarjr/
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b

Pré-visualização parcial do texto

Baixe Apostila 01 e outras Notas de estudo em PDF para Informática, somente na Docsity!

Tubarão / Santa Catarina / BRAZIL E-Mail : osmarjr@unisul.rct-sc.br http://tec1.unisul.rct-sc.br/osmarjr/

Índice

1. Algoritmos 2. Fases de um Algoritmos 3. Estrutura de Algoritmos 4.

Variáveis 4.1 Formação de Variáveis 4.2 Conteúdo de uma Variável 4.3 Tipos

de Variáveis 5. Tipos de Dados 6. Definição de Variáveis 6.1 Comando de

Algoritmos

Algoritmo não é a solução de um problema, pois, se assim fosse, cada problema teria um único algoritmo. Algoritmo é um caminho para a solução de um problema, e em geral, os caminhos que levam a uma solução são muitas. O aprendizado de algoritmos não se consegue a não ser através de muitos exercícios.

Algoritmos não se aprende:

  • Copiando Algoritmos
  • Estudando Algoritmos

Algoritmos só se aprendem:

  • Construindo Algoritmos
  • Testando Algoritmos

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 situação atual e verificar quais a(s) forma(s) de resolver o problema. c) Terminada a fase de estudo, utilizar uma linguagem de programação para escrever o programa que deverá a princípio, resolver o problema. d) Analisar junto aos usuários se o problema foi resolvido. Se a solução não foi encontrada, deverá ser retornado para a fase de estudo para descobrir onde está a falha.

Estas são de forma bem geral, as etapas que um analista passa, desde a apresentação do problema até a sua efetiva solução. Iremos, neste curso, nos ater as etapas de estudo, também chamada de análise, e a etapa de programação. Mas antes vamos definir o seguinte conceito: Programar um computador consiste em elaborar um conjunto finito de instruções, reconhecidas pela máquina, de forma que o computador execute estas instruções. Estas instruções possuem regras e uma Sintaxe própria, como uma linguagem tipo português ou inglês, sendo isto chamadas de linguagem de computador. No mundo computacional existe uma grande variedade de linguagens Pascal, C, C++, Cobol, Fortran, etc…. Nós iremos enfocar uma delas, o Pascal.

Variáveis

O computador possui uma área de armazenamento conhecida como memória. Todas as

informações existentes no computador estão ou na memória primária ( memória RAM ), ou na

memória secundária ( discos, fitas, CD - ROM etc ). N ós iremos trabalhar, neste curso , somente com a

memória primária , especificamente com as informações armazenadas na RAM ( memória de acesso

aleatório ).

A memória do computador pode ser entendida como uma seqüência finita de caixas , que num

dado momento , guardam algum tipo de informação , como número, uma letra , uma palavra , uma frase

etc, não importa, basta saber que lá sempre existe alguma informação.

O computador , para poder trabalhar como alguma destas informações , precisa saber onde, na

memória, o dado está localizado. Fisicamente, cada caixa, ou cada posição de memória , possui um

endereço, ou seja , um número, que indica onde cada informação está localizada. este número é

representado através da notação hexadecimal , tendo o tamanho de quatro , ou mais bytes. Abaixo

segue alguns exemplos :

Endereço Físico Informação

3000: B712 ‘João’

2000: 12EC 12345

3000: 0004 ‘ H’

Como pode ser observado, o endereçamento das posições de memória através de números

hexadecimais é perfeitamente compreendido pela máquina, mas para nós humanos torna - se uma tarefa

complicada. Pensando nisto, as linguagens de computador facilitaram o manuseio, por parte dos

usuários, das posições de memória da máquina, permitindo que, ao invés de trabalhar diretamente

com os números hexadecimais, fosse possível dar nomes diferentes a cada posição de memória. Tais

nomes seriam de livre escolha do usuário. Com este recurso, os usuários ficaram livres dos endereços

físicos ( números hexadecimais ) e passaram a trabalhar com endereços lógicos ( nomes dados pelos

próprios usuários ). Desta forma , o Exemplo acima , poderia ser alterado para ter o seguinte aspecto:

Endereço Físico Informação

Nome ‘João’

número 12345

letra ‘ H’

Como tínhamos falado, os endereços lógicos são como caixas , que num dado instante

guardam algum tipo de informação. Mas é importante saber que o conteúdo desta caixa não é algo

fixo, permanente , na verdade , uma caixa pode conter diversas informações, ou seja , como no

Exemplo acima , a caixa ( E ndereço Lógico ) rotulada de “ Nome” num dado momento contém a

informação “ João”, mas em um outro momento , poderá conter uma outra informação, por Exemplo

“ Pedro”. Com isto queremos dizer que o conteúdo de uma destas caixas ( endereço lógico ) podem

variar, isto é podem sofrer alterações em seu conteúdo. Tendo este conceito em m ente, a partir de

agora iremos chamar de forma genérica , as caixas ou endereços lógicos , de variáveis.

Desta forma podemos dizer que uma variável é uma posição de memória , representada por

um Nome simbólico ( atribuído pelo usuário ), a qual contém, num dado instante , uma informação.

Formação de Variáveis

Uma variável é formado por uma letra ou então por uma letra seguida de letras ou dígitos, em qualquer número. Não é permitido o uso de espaços em branco ou de qualquer outro caractere, que não seja letra ou dígito, na formação de um identificador.

Na formação do nome da variável de um nome significativo, para que se possa ter idéia do seu conteúdo sem abri-lá. Se utilizar palavras para compor o nome da variável utilize o “_ “ underline para separar as palavras.

Conteúdo de uma Variável

Dados - Elementos conhecidos de um problema Informação - Um conjunto estruturado de dados, transmitido conhecimento

Tipos de Variáveis

Considere a fórmula matemática simples do calculo do volume de uma esfera:

onde se encontram:

1- valores que podem ser classificados como: a) valores constantes, invariantes em todas as aplicações da fórmula, no caso dos valores 4, 3 eF 0 7 0aos denomina-se constantes; b) valores a serem substituídos na fórmula, em cada aplicação; a representação destes valores, usualmente é feita através de letras, que recebem o nome de variáveis e tornam a fórmula genérica, possível de ser aplicada para resolver uma certa classe de problemas e não apenas um problema específico.

2 - Operações a serem feitas sobre determinados operandos (Valores), para a obtenção da solução do problema.

Definição de Variáveis

Para definir uma ou mais variáveis, devemos utilizar , em Pascal , a palavra VAR. Para manter

uma compatibilidade, utilizaremos a mesma nomenclatura em nossos algoritmos. Abaixo segue

Exemplo de algumas definições de variáveis:

a ) ALGORITMO Teste PROGRAM Teste ;

VARIÁVEIS VAR

Palavra : CADEIA Palavra: String;

INICIO BEGIN

< comandos>;

FIM END.

b) ALGORITMO Teste PROGRAM Teste ;

VARIÁVEIS VAR

Letra, Caracter : CARACTER Letra, Caracter : CHAR;

INICIO BEGIN

< comandos>;

FIM END.

c ) ALGORITMO Teste PROGRAM Teste ;

VARIÁVEIS VAR

Letra, Caracter : CARACTER Letra, Caracter : CHAR;

Número: INTEIRO Número : INTEGER;

INICIO BEGIN

< comandos>;

FIM END.

Obs.: Os nomes dados as variáveis não podem ser os mesmos nomes de palavras reservadas do

Pascal, tais como PROGRAM, BEGIN , END , VER, etc…

Comando de atribuição

Quando definimos uma variável é natural atribuirmos a ela uma informação. Uma das formas

de colocar um valor dentro de uma variável, consequentemente colocado este dado na memória do

computador , é através da atribuição direta , do valor desejado que a variável armazena. Para isto

utilizaremos o símbolo ( : = (Pascal) ,F 0 A C(Algoritmo) ), que significa : recebe, ou seja, a posição , de

memória que uma variável representa , receberá uma informação, a qual será armazenada no interior

desta variável.

Exemplo :

ALGORITMO Teste PROGRAM Teste ;

VARIÁVEIS VAR

Número: INTEIRO Número : INTEGER;

INICIO BEGIN

NúmeroF 0 A C 10 Nú mero: = 10;

FIM END.

O Exemplo acima nos informa que :

a) Foi definido uma variável, a qual demos o Nome de “ Número ”, e informamos que esta variável, ou

posição de memória , só poderá aceitar dados, que sejam numéricos e que estejam entre - 32768 a

+ 32767 ( tipo INTEGER ).

b) Atribuímos à variável “ Número” o valor 10

A memória se comportaria da seguinte forma , de acordo com os itens acima :

a ) Variável^ Conteúdo

Número indefinido

b) Variável^ Conteúdo Número 10

Variáveis do tipo CHAR(Caracter) e STRING(Cadeia)

As definições de variáveis como sendo do tipo CHAR e STRING, possuem algumas

curiosidades que merecem um cuidado especial por parte do usuário.

Uso das aspas ( ‘ ) Quando estivermos fazendo a atribuição de um valor para uma variável do tipo CHAR

(Caracter) ou STRING (Cadeia) , temos que ter o cuidado de colocar o valor ( dado ) entre aspas ( ‘ ),

pois esta é a forma de informar que a informação é caracter.

Exemplo :

ALGORITMO Teste VARIÁVEIS Letra : CARACTER Nome : CADEIA INICIO Letra F 0 A C‘A’ Nome F 0 A C‘João’ FIM

Manipulação de caracteres individuais em STRING’s (Cadeias) Muitas vezes é necessário manipular caracteres individuais em uma STRING (Cadeia). O Pascal possui uma forma toda especial de permitir tal operação, através do uso de colchetes( [ ] ) logo após o Nome da variável do tipo STRING (Cadeia) , e o número do caracter que se deseja manipular entre os colchetes.

Exemplo : Atribuir o primeiro caracter de uma STRING a uma variável do tipo CHAR.

Algoritmo AtribuiString; VARIÁVEIS letra : CARACTER Nome : CADEIA INICIO Nome F 0 A C‘Joao’

letra F 0 A CNome[ 1]

FIM

Quando definimos uma variável como sendo do tipo STRING não estamos alocando 1 posição de

memória apenas ( uma caixa, pela analogia inicial ), mas na verdade , estamos alocando até 255

caixas , uma para cada caracter da STRING ( lembre - se que uma STRING pode ter no máximo 255

Exercícios 0:

  1. Dar o tipo de cada uma das constantes a) 613 b) 613, c) - d) “613” e) -3,012 * 10^15 f) 17*10^12 g) -28,3 * 10 - h) “Fim de Questão”

2) Faça um PROGRAMA para atribuir a variáveis as seguintes informações :

a ) 12345

b) 123456

c ) - 1122

d) 10

e ) VERDADE

f) 12345605

3) No seguinte PROGRAMA existe algum erro? Onde?

ALGORITMO Teste

VARIÁVEIS

Maria : CADEIA

idade : INTEIRO

letra : CARACTER

Maria : REAL

INICIO

idade F 0 A C 23 idade F 0 A C 678 idade F 0 A Cletra letra F 0 A CABC letra F 0 A CA letra F 0 A C 2 FIM

4) Qual a diferença existente nas seguintes atribuições?

a) Letra F 0 A C‘ A’

Nome F 0 A C‘ João’

b) Letra F 0 A CA Nome F 0 A CJoão

5) É correto definir uma variável como sendo Caracter e atribuirmos a ela o valor : ‘PEDRO’? E se a

variável fosse definida como CADEIA, a mesma poderia receber um valor do tipo CARACTER?

Operadores

Operadores matemáticos

Os operadores matemáticos são os seguintes :

Adição : +

Subtração : -

Multiplicação : *

Divisão : /

Divisão inteira : DIV (QUOCIENTE)

Resto da divisão : MOD (RESTO)

Exponenciação : ** Diferença : <> Menor Igual : <= Maior Igual : >=

Operadores Lógicos

Os operadores lógicos , realizam as operações da álgebra booleana. Os operadores são os

seguintes:

AND (E)

OR (OU)

NOT (NÃO)

XOR (NÃO OU)

Exemplo :

a) Operador AND :

TRUE AND TRUE => TRUE

TRUE AND FALSE => FALSE

FALSE AND TRUE => FALSE

FALSE AND FALSE => FALSE

b) Operador OR :

TRUE OR TRUE => TRUE

TRUE OR FALSE => TRUE

FALSE OR TRUE => TRUE

FALSE OR FALSE => FALSE

c) Operador NOT :

NOT TRUE => FALSE

NOT FALSE => TRUE

d) Operador XOR:

TRUE XOR TRUE => FALSE

TRUE XOR FALSE => TRUE

FALSE XOR TRUE => TRUE

FALSE XOR FALSE => FALSE

As instruções acima resultarão no armazenamento do Nome ‘ João Da Silva ” na variável rotulada de

“ Nome”.

Comandos de Entrada e Saída

O computador não é uma máquina isolada, pois ele precisa se comunicar com o mundo

exterior com vídeo, impressora , teclado , discos, fitas etc. Para realizar esta comunicação existem

comandos que permitem que informações sejam exibidas , por Exemplo, no vídeo, como também

existem comandos que permitem que informações sejam colocadas na memória do computador

através do teclado do PC.

Os comandos que iremos ver são os comandos LEIA e ESCREVA, respectivamente,

comando de entrada e de Saída ( em Pascal escreve - se READ e WRITE ).

Exemplo 1: Escrever um algoritmo para ler um valor numérico do teclado e atribuí- lo a uma

variável do tipo numérica.

ALGORITMO LeNúmero

VARIÁVEIS

Num : INTEIRO

INICIO

LEIA(Num )

FIM

O algoritmo acima , executará os seguintes comandos :

Define uma variável rotulada “ Num ”, a qual só poderá armazenar dados numéricos, que

estejam compreendidos entre - 32768 a + 32767 ( INTEIRO ), sendo que inicialmente o

conteúdo desta variável está indefinido.

interrompe o processamento até que uma informação seja digitada , seguida do

pressionamento da tecla ENTER. Caso a informação seja digitada seja compatível com o

tipo INTEGER (INTEIRO) , este valor será armazenado dentro da variável “Num ”.

Exemplo 2: Fazer um algoritmo para escrever no vídeo do PC uma mensagem qualquer.

ALGORITMO EscreveMsg

INICIO

ESCREVA (‘Alo Mundo’)

FIM

Obs.: A mensagem está entre aspas porque representa uma cadeia de caracteres.

É perfeitamente possível mandar escrever o conteúdo de variáveis no vídeo. Desta forma , o

Exemplo acima poderia ser escrito do seguinte modo :

ALGORITMO EscreveMsg

VARIÁVEIS

Msg : : CADEIA

INICIO

Msg F 0 A C‘Alo Mundo’

ESCREVA (Msg )

FIM

Obs.: Em Pascal, o Exemplo ficaria como é mostrado abaixo

PROGRAM EscreveMsg;

VAR

Msg : STRING;

BEGIN

Msg : = ‘Alo Mundo’;

Processos de Repetição e Seleção

Estrutura de Repetição ENQUANTO-FAÇA (WHILE DO)

a) ALGORITMO

ALGORITMO ExEnquanto

ENQUANTO < Condição for verdadeira > FAÇA

FIM ENQUANTO

b) PASCAL

PROGRAM ExEnquanto;

WHILE < Condição for verdadeira > DO

BEGIN

;

END.

Exemplo : Faça um algoritmo para ler e escrever o Nome de 20 pessoas.

ALGORITMO LeEscreve VARIÁVEIS

Nome : CADEIA

Total : INTEIRO

INICIO

TotalF 0 A C 0

ENQUANTO Total < 20 FACA

LEIA(Nome )

ESCREVA (‘Nome=‘, Nome)

Total F 0 A CTotal + 1

FIM ENQUANTO

END.

Em pascal:

PROGRAM LeEscreve;

VAR

Nome : STRING;

Total : INTEGER;

BEGIN

Total: = 0;

WHILE Total< 20 DO

BEGIN

READ( Nome);

WRITE (‘Nome =‘, Nome );

Total : = Total + 1;

END;

END.

Exercícios 3:

  1. Faça um algoritmo para ler base e altura de 50 triângulos e imprimir a sua área.

  2. Faça um algoritmo para calcular N!.

  1. Faça um algoritmo para calcular um valor A elevado a um expoente B. Os valores A e B deverão ser lidos. Não usar A** B.

  2. Faça um algoritmo para: a) Ler um valor x qualquer b) Calcular Y = ( x+1)+(x+2)+(x+3)+(x+4)+(x+5)+…(x+100).

  3. Faça um algoritmo para somar os números pares < 1000 e ao final imprimir o resultado.

  4. Faça um algoritmo para gerar os termos da seguinte P.G.: 3,9,27,81,…,calcule 0 100º termo.

  5. Ampliando o exercício acima, faça um algoritmo para calcular a soma dos termos da P.G..

  6. Faça um algoritmo para calcular a série Fibonacci até 0 N-ésimo termo. A série tem a seguinte forma: 1,1,2,3,5,8,13,21,34,…

  7. Faça um algoritmo para ler um valor X e calcular Y = X+2X+3X+4X+5X+…+20X

  8. Faça um algoritmo para ler e escrever o Nome, idade e sexo de um número indeterminado de alunos. Ao final escreva o total de alunos lidos.

  9. Para cada nota de compra , tem-se o Nome do produto comprado, o valor e o imposto. Faça um algoritmo que escreva o valor total bruto, o imposto total cobrado e o valor total líquido de todas as notas. Considere 500 notas

  10. O valor aproximado de PI pode ser calculado usando-se a série

sendo fazer um algoritmo para calcular e escrever o valor de PI com 51 termos

  1. Faça um algoritmo para ler um valor X e um valor n. Após, calcule a seguinte expressão:

  2. Faça um algoritmo para somar os restos da divisão por 3 de 200 números.

  3. Faça um algoritmo que calcule a hipotenusa de 10 triângulos. hipotenusa^2 = cateto 2 + cateto 2

  4. Faça um algoritmo para calcular a área de N quadriláteros. Fórmula: Área = Lado * Lado

  5. Faça um algoritmo para calcular a área de N Círculos. Fórmula : Área =F 0 7 0raio 2 F 0 7 0= 3,141592.

  6. Fazer um algoritmo que calcule escreva a soma dos 50 primeiros termos das seguinte série: