julia sawaki tanaka - iq.unesp.br · organizada e integrada. instituto de química – unesp –...

47
Julia Sawaki Tanaka

Upload: dinhdien

Post on 14-Nov-2018

239 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Julia Sawaki Tanaka

Page 2: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Sumário

1. CLASSIFICAÇÃO DOS COMPUTADORES ................................................................................................................. 1

2. SISTEMAS DE COMPUTAÇÃO ................................................................................................................................ 2

2.1. SOFTWARE - CONCEITOS BÁSICOS ................................................................................................................................. 2 2.2. HARDWARE - CONCEITOS BÁSICOS ................................................................................................................................ 5

3. NOÇÕES BÁSICAS DE INTERNET ............................................................................................................................ 7

4. NÚMEROS BINÁRIOS ........................................................................................................................................... 8

5. ALGORITMOS ..................................................................................................................................................... 10

5.1. ALGORITMO NA SOLUÇÃO DE UM PROBLEMA USANDO O COMPUTADOR .............................................................................. 11 5.2. PASSOS PARA A CONSTRUÇÃO DE UM ALGORITMO .......................................................................................................... 11 5.3. ALGORITMO, PROGRAMAÇÃO E RACIOCÍNIO LÓGICO ........................................................................................................ 12

6. TIPOS DE DADOS ................................................................................................................................................ 13

6.1. DADOS NUMÉRICOS ................................................................................................................................................. 13 6.2. DADOS LITERAIS ....................................................................................................................................................... 13 6.3. DADOS LÓGICOS ...................................................................................................................................................... 13

7. CONSTANTES E VARIÁVEIS ................................................................................................................................. 14

8. EXPRESSÕES ...................................................................................................................................................... 14

8.1. EXPRESSÕES ARITMÉTICAS ......................................................................................................................................... 14 8.2. EXPRESSÕES RELACIONAIS .......................................................................................................................................... 15 8.3. EXPRESSÕES LÓGICAS ................................................................................................................................................ 15

9. FLUXOGRAMAS .................................................................................................................................................. 16

9.1. COMANDO DE ATRIBUIÇÃO ....................................................................................................................................... 17 9.2. COMANDO DE ENTRADA ............................................................................................................................................ 17 9.3. COMANDO DE SAÍDA ................................................................................................................................................ 18 9.4. ESTRUTURA SEQUENCIAL ........................................................................................................................................... 18 9.5. ESTRUTURAS CONDICIONAIS ....................................................................................................................................... 19

9.5.1. Estrutura Condicional Simples ........................................................................................................................ 19 9.5.2. Estrutura Condicional Composta .................................................................................................................... 19

9.6. ESTRUTURAS DE REPETIÇÃO ....................................................................................................................................... 20 9.6.1. Estrutura de Repetiço Enquanto-faia .......................................................................................................... 20 9.6.2. Estrutura de Repetiço Repita-até ................................................................................................................. 21

10. PROGRAMAÇÃO .............................................................................................................................................. 22

11. LINGUAGEM PASCAL ........................................................................................................................................ 23

11.1. TIPOS DE DADOS .................................................................................................................................................... 24 11.2. FUNÇÕES NUMÉRICAS PRÉ-DEFINIDAS ........................................................................................................................ 24 11.3. OPERADORES ......................................................................................................................................................... 25

11.3.1. Operadores Aritmétcos ................................................................................................................................ 25 11.3.2. Operadores Relacionais ................................................................................................................................ 25 11.3.3. Operadores Lógicos ...................................................................................................................................... 25 11.3.4. Prioridade dos Operadores ........................................................................................................................... 26

11.4. ESTRUTURA GERAL DE UM PROGRAMA PASCAL ........................................................................................................... 26 11.5. DECLARAÇÃO DE VARIÁVEIS ...................................................................................................................................... 26 11.6. COMANDO DE ATRIBUIÇÃO ...................................................................................................................................... 26 11.7. COMANDO DE ENTRADA .......................................................................................................................................... 27 11.8. COMANDO DE SAÍDA .............................................................................................................................................. 27 11.9. FORMATAÇÃO ....................................................................................................................................................... 27 11.10. ESTRUTURAS SEQUENCIAIS ..................................................................................................................................... 28 11.11. ESTRUTURAS CONDICIONAIS ................................................................................................................................... 28

11.11.1. Estrutura Condicional Simples .................................................................................................................... 28

Instituto de Química – UNESP – Araraquara

i

Page 3: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

11.11.2. Estrutura Condicional Composta ................................................................................................................ 30 11.12. ESTRUTURAS DE REPETIÇÃO ................................................................................................................................... 30

11.12.1. Estrutura de Repetiço WHILE (Enquanto) ................................................................................................. 30 11.12.2. Estrutura de Repetiço REPEAT (Repita) .................................................................................................... 31 11.12.3. Estrutura de Repetiço FOR (Para) ............................................................................................................. 32

11.13. DECLARAÇÃO DE CONSTANTES ................................................................................................................................ 33 11.14. COMENTÁRIOS ..................................................................................................................................................... 33 11.15. ESTRUTURAS DE DADOS ........................................................................................................................................ 33

11.15.1. Variáveis Compostas Homogêneas ............................................................................................................ 34 11.15.1.1. Variáveis Compostas Homogêneas Unidimensionais ........................................................................................... 34 11.15.1.2. Variáveis Compostas Homogêneas Bidimensionais .............................................................................................. 34

12. EXERCÍCIOS ...................................................................................................................................................... 36

13. BIBLIOGRAFIA .................................................................................................................................................. 44

Instituto de Química – UNESP – Araraquara

ii

Page 4: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

1. Classificação dos Computadores

Os computadores podem ser classifcados segundo o porte e a fnalidade em algumas categoriasmas estes mudam com o tempo e com a evolução tecnológica.

Computadores de mesa ou desktop: são computadores pessoais (PC - Personal Computer) que nãoforam projetados para serem portáteis. Geralmente, essa classe de computadores é consttuuda porum monitor, uma Unidade Central de Processamento (CPU) que fca armazenada dentro de umgabinete do tpo mini-torre ou horizontal, um teclado e um mouse. Como esse tpo deequipamento precisa de muito espaço para utlização, a sua demanda tem sido cada vez menor. Para contornar essa difculdade foi desenvolvido um modelo desktop chamado All-In-One (AIO). OsAIO possuem a CPU integrada ao monitor, reduzindo o espaço necessário para a acomodação doequipamento. Apesar da inovação, muitas empresas tem optado por usar modelos portáteis, quesão mais compactos, consomem menos energia, são fáceis de se transportar e possuem sistemapróprio de proteção para o caso de quedas de energia ou surtos elétricos.

Computadores portáteis:

Notebooks (Laptops) e Ultrabooks. Os termos notebook e laptop são utlizadosindiferentemente para se referir aos computadores portáteis tradicionais. O termo Ultrabookfoi criado pela INTEL em 2011 para notebooks que fossem leves, fnos, com grande autonomiade bateria e poder de processamento equivalente a um notebook tradicional. Atualmente,esse termo é usado para referenciar notebooks que possuem no máximo 2 cm de altura (ovalor é medido com o notebook fechado). Devido as limitações fsicas, ultrabooks possuemrestrições para a disponibilidade de recursos comuns em notebooks. É raro encontrar umultrabook que possua mais de 2 portas USB, entrada ethernet para rede, entrada VGA paramonitor externo e leitor/gravador de DVD/Blu-ray.

O Tablet não é um computador completo, mas é um dispositvo para acesso à Internet, leiturade livros, revistas e jornais, visualização de fotos e vudeos, agenda, calendário e jogos.

Workstatoons ou Estações de Trabalho: são computadores desktops mais caros e de altodesempenho, otmizados para aplicações profssionais, usados, por exemplo, por designersgráfcos, operadores fnanceiors, etc. As estações de trabalho possuem telas de alta resolução,circuitos de processamento mais rápido e mais poderoso e grande capacidade de armazenamento.São geralmente utlizados para manipular e exibir dados complexos, tais como CAD (ComputerAided Design) 2D e 3D, animação computadorizada, geoprocessamento, modelagem 3D,desenvolvimento de games, etc.

Maionframes ou Servidores Corporatvos: são computadores de grande porte, de alto custo, comelevada velocidade e capacidade de processamento e armazenamento, destnados aoprocessamento de grande volume de informações. Os mainframes são caracterizados por umambiente multusuário, no qual várias pessoas utlizam o mesmo computador, ao mesmo tempo,através dos terminais. No inucio, os mainframes eram grandes computadores que podiam ocuparaté um andar inteiro, mas com o passar do tempo seu tamanho foi reduzido, sua capacidadeaumentada e o termo mainframe foi sendo substtuudo pela expressão servidor corporatvo. Essescomputadores são utlizados em ambientes comerciais e em grandes organizações como bancos,companhias aéreas, seguradoras e administradoras de cartões de crédito, etc.

Supercomputadores: são os computadores mais poderosos, com altssimo custo e capacidadesuperior aos mainframes. Geralmente são utlizados em grandes centros de pesquisa para cálculossofstcados como previsão do tempo, simulação de testes nucleares, controle de voos espaciais,etc.

Instituto de Química – UNESP – Araraquara

1

Page 5: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

2. Sistemas de Computação

A computação nasceu da ideia de auxiliar o homem nos trabalhos rotneiros e repettvos, em geralde cálculo e gerenciamento. Porém, com o crescente desenvolvimento tecnológico, o uso de computadorestornou-se cada vez mais difundido em todas as áreas e hoje o computador consiste em uma ferramenta detrabalho indispensável no dia a dia das empresas, das indústrias, das universidades, e até mesmo nasresidências.

A utlização do computador para a resolução de problemas e execução de tarefas de formaautomátca traz vantagens como: rapidez de execução e confabilidade nos resultados obtdos, pois muitosproblemas exigem cálculos sofstcados, assim como a manipulação de grande volume de dados. Noprimeiro caso, o risco de erro é grande e no segundo, o trabalho torna-se árduo e entediante. Ocomputador elimina esses inconvenientes, pois é caracterizado pela rapidez, precisão e grande capacidadede armazenamento de informações (textos, dados, imagens, voz, etc.).

O computador é capaz de realizar cálculos e tomar decisões lógicas em velocidades bilhões devezes mais rápidas que os seres humanos. Porém, o equipamento por si só não é capaz de realizar umasimples tarefa. Para que ele realize uma determinada tarefa, é preciso que alguém descreva com detalhestodos os passos que o equipamento deve seguir para a execução desta tarefa. Esta descrição é conhecidacomo programa (software) e consttui uma importante parte do sistema de computação. O equipamentoem si, isto é, o computador, faz parte do hardware. Portanto, o hardware e o software, juntamente com ousuário, faz parte essencial de um Sistema de Computação.

2.1. Software - Conceitos Básicos

Software ou Programa é a parte lógica que dota o equipamento fsico (hardware) com acapacidade de realizar algum trabalho. O programa nada mais é do que uma sequência de instruçõesescritas em uma linguagem de programação, informando ao hardware o que fazer, e em que ordem.

Programas Aplicatvos consttuem uma classe de programas que realizam tarefas especufcas. Os 3programas aplicatvos mais populares são: Processadores de Textos, Planilhas Eletrônicas e Sistemas deGerenciamento de Banco de Dados. Outros exemplos de programas aplicatvos são: folha de pagamento,controle de estoques, contabilidade, controle de clientes de um consultório médico, controle de rebanhos,etc.

Processador de Texto é um programa aplicatvo projetado especialmente para facilitar a criação,edição, formatação e impressão de textos. Ele permite fazer correção automátca, mudar o tamanho e/oucor da letra, formatar em várias colunas, inserir um desenho ou gráfco, etc. Exemplos de processadores detextos: Microsof Word, LibreOfce Writer, Corel WordPerfect, etc.

Planilha Eletrônica é uma ferramenta para planejamento e análise numérica que permite utlizar atela do computador como um papel quadriculado sobre o qual anotamos em linhas e colunas todos osdados. Este tpo de programa permite defnir e embutr fórmulas escondidas que realizam cálculos sobre osdados visuveis, permite também a correção de valores, e o aplicatvo rapidamente recalcula os resultadosafetados por essa correção. São usadas para desenvolver orçamentos de empresas, para organizar econtrolar orçamentos doméstcos, para controlar o movimento de uma conta bancária, ou ainda efetuarprevisões de vendas. Exemplos: Microsof Excel, LibreOfce Calc, Corel WordPerfect Ofce, etc.

Sistema de Gerenciamento de Banco de Dados (SGBD) é um programa aplicatvo capaz dearmazenar e recuperar informações em Banco de Dados.

Banco de Dados, por sua vez, é um conjunto de informações estruturadas e armazenadas de formaorganizada e integrada.

Instituto de Química – UNESP – Araraquara

2

Page 6: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Um SGBD possui recursos para inclusão, eliminação, recuperação e modifcação de dados, além depermitr ordenar os dados, produzir relatórios, etc. Este tpo de programa substtui o antgo fchário.Exemplos: Microsof Access, LibreOfce Base, FireBird, MySQL, Sybase, Oracle, etc.

Uma lista de telefones dos moradores de uma determinada cidade consttui um Banco de Dados. Ocatálogo telefônico tem uma estrutura pré-defnida (nome do assinante, endereço e telefone) e uma ordemde classifcação (por assinante ou por endereço). Para que um Banco de Dados seja eletrônico, basta quetodas as informações sejam processadas por um computador.

Sistema Operacional é o programa mais importante, que gerencia os recursos do computador. Osistema operacional, no nosso caso o Windows, gerencia o acesso dos programas aplicatvos ao teclado, aomonitor (vudeo), à impressora, assim como aos discos e outros dispositvos de leitura e gravação. O sistemaoperacional fca o tempo todo atvo, prestando serviços aos programas aplicatvos que estão sendoexecutados. Cada linha de computadores tem o seu próprio sistema operacional. Exemplos de sistemasoperacionais: Windows, Linux, Mac OS, Unix, Solaris, etc.

Linguagem de Programação é um conjunto de regras que permitem a construção de sentenças quedescrevem de forma precisa as ações que desejamos que sejam executadas pelo computador.

Linguagem de Máquina é um conjunto de instruções capazes de atvar diretamente os dispositvoseletrônicos do computador. A linguagem de máquina é consttuuda somente por 0 e 1 (bits), o que difcultaa leitura e a compreensão pelas pessoas.

Exemplo de uma instrução em linguagem de máquina: 0 1 1 0 1 0 1 0 1 1 0 1

BIT (BInary DigiT = Dugito Binário) 0 ou 1. Bit é a menor unidade de informação, e apresenta doisestados identfcáveis (sim ou não, verdadeiro ou falso, chave ligada ou desligada, uma corrente passandoou não por um circuito elétrico, um item magnetzado ou não, etc.) que são associados aos números 1 e 0,respectvamente.

Byte é um conjunto de bits. A maioria dos fabricantes de computadores utlizam bytes consttuudospor 8 bits. Para o computador armazenar um caractere, que é uma letra, um algarismo, ou sumbolo (ex: M,a, 4, 7, -, ?, *) ocupa um byte, ou seja, uma sequência de 8 bits ligados (1) ou desligados (0).

O byte é a unidade de medida da quantdade de informação digital. Por exemplo: o disco rugido éde 1 Tera byte (TB), o pen drive é de 8 Giga bytes (GB), etc.

Os prefxos (kilo, mega, giga, tera, etc.) são coloquialmente utlizados na computação paraexpressar grandes quantdades de bytes. Como a arquitetura do computador se baseia em númerosbinários, em computação, esses prefxos geralmente são utlizados para indicar potências de dois, o quenão é correto, pois no Sistema Internacional de Unidades (SI) esses prefxos representam potências de dez.

Prefxos em uso na computação coloquial

Nome Símbolo Potência de dez (SI) Potência de dois Diferença

quilo K 103 = 1.000 210 = 1.024 2,4%

mega M 106 = 1.000.000 220 = 1.048.576 4,9%

giga G 109 = 1.000.000.000 230 = 1.073.741.824 7,4%

tera T 1012 = 1.000.000.000.000 240 = 1.099.511.627.776 10,0%

peta P 1015 = 1.000.000.000.000.000 250 = 1.125.899.906.842.624 12,5%

Em 1998 foram introduzidos os prefxos binários.

Instituto de Química – UNESP – Araraquara

3

Page 7: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Prefxos binários segundo normas internacionais

Nome Símbolo Potência de dois

kibi Ki 210 = 1.024

mebi Mi 220 = 1.048.576

gibi Gi 230 = 1.073.741.824

tebi Ti 240 = 1.099.511.627.776

pebi Pi 250 = 1.125.899.906.842.624

Padrões de CodifcaçãoNo computador a representação interna de informações é feita através de um padrão de

codifcação onde, por convenção, certos conjuntos de bits representam certos caracteres. No padrão decodifcação ASCII estendido, de 8 bits, a letra A é representada por 1000001. Unicode é outro padrão decodifcação de 16 bits.

Linguagem de Montagem é uma linguagem de baixo nuvel que situa apenas um nuvel de abstraçãoacima da linguagem de máquina e usa mnemônicos (sumbolos fáceis de memorizar) para expressar asinstruções. Um programa especial chamado montador deve traduzir as instruções (simbólicas) dalinguagem de montagem para a linguagem de máquina. Exemplo: Assembler é o montador da linguagemAssembly.

Exemplo de instruções em linguagem de montagem:

ADD C, 1 MOV A, B CMP A, E JMP fm

Linguagem de Alto Nível é uma linguagem que utliza notações matemátcas e grupos de palavras(em inglês) para representar as instruções de máquina, tornando o processo de programação mais próximodo entendimento humano.

Exemplos de linguagens: Fortran, Pascal, C++, Visual Basic, Delphi, Java, PHP, Python, etc.

Exemplos de trechos de programa:

FORTRAN10 if (nota .LT. 5) goto 30

write(2, 20)20 format('Aprovado') goto 5030 write(2, 40)40 format('Reprovado')50 stop end

BASIC30 if nota < 5 then print "Reprovado" else print "Aprovado"

PASCAL if nota < 5 then write('Reprovado') else write('Aprovado');

C if (nota < 5) print((Reprovadoo); else print((Aprovadoo);

Instituto de Química – UNESP – Araraquara

4

Page 8: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Memória RAM

Unidade Lógica e Aritmétca

Unidade de Controle

UCP

Dispositvode Entrada

Dispositvode Sauda

Introdução à Computação

Compilador: traduz o programa fonte (ou código fonte), escrito na linguagem de alto nuvel, comoPascal ou C, para a linguagem de máquina, gerando o programa executável que o computador consegueentender e processar diretamente.

Interpretador: interpreta cada comando do programa fonte e executa as instruções que a elecorrespondem, sem gerar um programa executável. Em geral os programas interpretados são mais lentosdo que os compilados, pois os compiladores fazem a tradução uma única vez, e a partr dau executamdiretamente o programa traduzido, enquanto que o interpretador traduz o programa fonte todas as vezesque executa.

2.2. Hardware - Conceitos Básicos

Hardware é a parte fsica de um Sistema de Computação, ou seja, todos os elementos materiaisque o compõem (a estrutura, os circuitos eletrônicos, os dispositvos mecânicos, elétricos, magnétcos, etc).

Os componentes básicos de um computador são:

Dispositvo de Entrada e Sauda (ou Periféricos) Memória Unidade Central de Processamento (UCP)

Dispositvo de Entrada serve para receber os dados e programas preparados pelo ser humano etransformá-los em sinais eletromagnétcos (bits) manipuláveis pelo computador. Exemplo: teclado, mouse,scanner, drive de DVD, etc.

Dispositvo de Saída serve para transformar os dados processados pelo computador em formascompreensuveis pelo ser humano e exibi-los. Exemplo: impressora, monitor ou vudeo, ploter, etc.

Memória é o dispositvo que armazena informações. Existem dois tpos de memória: memóriaprimária e secundária.

Memória Primária é a memória sem a qual o computador não funciona. A sua principal função éarmazenar informações necessárias para o processador, como por exemplo, os programas em execução.Fazem parte da memória primária, as memórias RAM, ROM e Cache.

RAM (Random Access Memory) é a memória de trabalho do computador. Ela pode ser lida egravada pela Unidade Central de Processamento (UCP) a qualquer instante. É onde fcamarmazenados os dados, os resultados intermediários e os programas que estão sendo executadospela UCP. Quando um programa que estava sendo usado é fechado, a parte da memória RAM, que

Instituto de Química – UNESP – Araraquara

5

Page 9: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

estava sendo utlizada, é liberada para armazenar novos dados e programas. As informações quesão introduzidas no computador através do teclado, da leitura do disco rugido, CD/DVD ou pen drivesão armazenadas na memória RAM. Como a memória RAM é volátl as informações nelaarmazenadas desaparecem com o desligamento do computador ou com a queda de energiaelétrica.

ROM (Ready Only Memory) é a memória exclusivamente de leitura, onde as informações sãogravadas uma única vez, geralmente pelo fabricante e nunca mais alteradas. A memória ROM nãoé volátl, e é uma memória permanente, o seu conteúdo não é perdido mesmo com o desligamentodo computador. Nos microcomputadores, existe um programa muito importante chamado BIOS(Basic Input-Output System - Sistema Básico de Entrada e Sauda) que tem várias funções, entre asquais, a de realizar a "partda" do computador . Quando ligamos o computador, o BIOS realiza acontagem de memória, faz uma rápida checagem do funcionamento do computador e carrega oSistema Operacional do disco rugido (memória secundária) para a memória RAM. O BIOS estágravado em uma memória ROM, pois esse programa não deve ser alterado e deve ser executadotodas as vezes que o computador é ligado. Existem outros tpos de memória ROM como PROM(Programmable ROM), EPROM (Erasable Programmable ROM), EEPROM (Electrically ErasableProgrammable ROM), etc.

Cache é também um tpo de memória primária, volátl, de grande velocidade, mais rápida do quea memória RAM. A memória cache armazena e recupera os dados usados mais frequentementepelo processador de modo que sua recuperação possa ser bem rápida. É uma memória mais carado que a memória RAM.

Memória Secundária é um meio de armazenamento a longo prazo no qual o computador armazenadados que poderão ser posteriormente utlizados. Este tpo de memória não é estritamente necessária paraa operação do computador, o acesso a este tpo de memória é mais lento em comparação com o acesso àmemória primária, e o custo por unidade de memória secundária é muito menor que o custo por unidadede memória primária.

As memórias secundárias mais comuns, utlizadas pelos computadores são: disco rugido , SSD, pendrive, cartão de memória micro SD, CD, DVD, Blu-ray, etc.

Disco Rígido ou HD (Hard Disk) é um meio de armazenamento secundário de informações queemprega vários discos não fexuveis revestdos com material magnétco e alojados juntamente comos cabeçotes de leitura/gravação, em uma caixa hermetcamente fechada. Atualmente acapacidade de um disco rugido é especifcado em termos de centenas de Gbytes ou alguns Tbytes.

SSD (Solid State Drive) ou Unidade (ou Drive) de Estado Sólido é um meio de armazenamentosecundário de informações, consttuudo por circuitos eletrônicos do mesmo tpo da memória fashutlizada nos pen drives. O SSD tem velocidade bem maior em relação aos discos rugidos, porém seucusto é mais elevado. Os SSDs apresentem consumo reduzido de energia, tempo de acesso bemreduzido e são silenciosos.

Peon drive é uma memória portátl, consttuudo por memória fash, que funciona em equipamentoscom porta USB. O pen drive surgiu em 2000 com o objetvo de substtuir os disquetes. Existem pendrives de 1 GB, 2 GB, 256 GB e até 1 TB. O modelo de 1 GB armazena o equivalente a 728 disquetes.

cartão de memória micro SD (Secure Digital) é um cartão de memória fash removuvel, utlizadoinicialmente em telefones celulares devido a sua medida reduzida (1,5cm x 1,1cm x 1 mm). Atravésde um adaptador o micro SD pode ser utlizado em qualquer dispositvo que suporta o cartão SD.

CD (Compact-Disk): uma tecnologia de armazenamento ótco que emprega disco a laser e podearmazenar até 700 Mbytes de informações digitais. Existem os discos CD-R (CD-Recordable) que

Instituto de Química – UNESP – Araraquara

6

Page 10: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

podem ser escritos só uma vez e os CD-RW (CD-ReWritable) que podem ser gravados, apagados ereutlizados.

DVD (Digital Video Disc e posteriormente Digital Versatle Disc): uma geração de disco ótco quearmazena 4.7 Gbytes de informações em um disco de uma face e uma única camada e 17 Gbytesem um disco de 2 faces e 2 camadas. Existem também os discos DVD-R (Recordable) que só gravamuma vez e o DVD-RW (Rewritable) que é a versão regravável.

Blu-ray (BD): é a nova geração de disco ótco para vudeos de alta defnição, que utliza raio laserde cor azul com comprimento de onda menor do que o do DVD e CD, mas apresenta o mesmotamanho de um DVD e tem a capacidade de armazenar de 25 a 100 Gbytes de informações.

Unidade Central de Processamento (UCP) ou Ceontral Processiong Uonit (CPU) é a principal unidadede controle e processamento de um computador, e é consttuuda de circuitos eletrônicos que interpretam eexecutam instruções de programas e comunicam com os dispositvos de armazenamento e de entrada esauda. A UCP é composta pela Unidade Lógica e Aritmétca (ULA) e pela Unidade de Controle (UC).

Unidade Lógica e Aritmétca (ULA): realiza cálculos através de operações aritmétcas (adição,subtração,...) e operações relacionais (comparação de valores).

Unidade de Controle (UC): gerencia as operações do computador comunicando com a UnidadeLógica e Aritmétca, com a memória e com os dispositvos de entrada e sauda. Controla asinstruções dos programas que estão na memória, faz com que o dispositvo de entrada leia osdados, transfra os valores adequados da memória para a ULA, armazena e recupera dados eresultados intermediários armazenados na memória e passa os resultados para o dispositvo desauda.

3. Noções Básicas de Internet

Redes de computadores são grupos de computadores e dispositvos computacionais comoimpressoras, scanners, etc., conectados por algum recurso de comunicação. Uma rede pode envolverconexões permanentes tais como cabos ou conexões temporárias através de linhas telefônicas ou outroselos de comunicação.

Internet é a rede mundial de computadores que é formada por várias redes de computadoresinterligadas. A Internet surgiu de um projeto militar nos Estados Unidos na década de 60, evoluiu para umarede acadêmica na década de 70 e hoje consttui o maior meio de comunicação do mundo.

A Internet é formada por redes locais (LANs - Local Area Network), redes de abrangência urbana(MANs - Metropolitan Area Network) e redes remotas (WANs - Wide Area Network) que abrangem estados,pauses e contnentes, conectando computadores do mundo inteiro. Essas redes são conectadas porrecursos que variam de linhas telefônicas de discagem comum, linhas privadas dedicadas de altavelocidade, ligações por microondas, ligações por fbras ótcas e satélites.

Na década de 80 e no inucio da década de 90 a rede foi aperfeiçoada e começou a surgir serviçosque caracterizam a Internet atual. O principal desses serviços é World Wide Web (WWW) lançada em 1991,que viabilizou a transmissão de imagens, sons e vudeos pela Internet. Foi o WWW que popularizou aInternet.

A Intranet é uma rede interna de informações de uma organização (empresa, universidade, etc.)baseada na tecnologia da Internet. Serve para compartlhar informações apenas entre os usuáriosregistrados, sem permitr o acesso de pessoas externas. A Intranet é uma evolução da Internet, em que sebusca, dentro das organizações, formas de acesso às informações, usando os mecanismos de navegaçãoque são os navegadores. A operação é idêntca, e mesmo as interfaces são as mesmas daquelas vistas naInternet. Através da Intranet, os usuários internos da organização compartlham informações tais como:

Instituto de Química – UNESP – Araraquara

7

Page 11: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

formulários, especifcações de produtos, catálogos de produtos, polutcas internas de administração e derecursos humanos, cadastro de clientes, etc.

Rede Local (LAN - Local Area Network) é uma estrutura que conecta vários computadores e outrosdispositvos (como impressoras) dentro de uma área geográfca limitada. Os usuários de rede local podemtrocar informações, compartlhar periféricos e utlizar recursos de servidor de arquivos. Normalmente aárea geográfca de uma rede local se restringe a uma sala, um departamento, um andar ou um prédio,dentro de um raio de 100 m.

Servidor: nas redes locais o servidor é um computador que fornece algum tpo de serviço paraoutros computadores conectados a ele via rede. Um exemplo é o servidor de arquivos que tem um discogrande e atende pedidos de leitura e gravação naquele disco, outro exemplo é o servidor de impressão quecontrola as tarefas de impressão enviadas para a impressora conectada na rede.

Alguns dos serviços básicos da Internet são: correio eletrônico (e-mail), WWW (World Wide Web),acesso remoto ao computador, transferência de arquivos, lista de correio eletrônico, grupos de notcias,comunicação interatva, etc.

Correio Eletrônico (e-mail) permite um usuário escrever e enviar uma mensagem de texto paraoutro usuário ou para um grupo deles, através da internet.

WWW (World Wide Web ou simplesmente Web) é um serviço no formato de hipertextos quepermite ao usuário buscar informações nos diversos computadores da Internet e visualizá-las através deseções gráfcas, formadas por imagens, sons e animações. Hipertexto é um documento que permite acessonão sequencial, com diferentes nuveis de detalhamento e com páginas inter-relacionadas. O leitor podepercorrer o documento na sequência desejada, saltando de uma página para outra em busca deinformações relacionadas a uma palavra, frase (em destaque) ou ucone.

Acesso Remoto ao Computador é uma ferramenta interatva que permite acessar e executarprogramas e aplicações disponuveis em um computador remoto, conectado à internet.

Transferência de Arquivos (fp, download e upload) permite transferir arquivos entrecomputadores interligados pela rede.

Lista de Correio Eletrônico ou Lista de Discussão é uma forma de contatar um grupo de pessoasatravés do e-mail. As pessoas que partcipam da lista podem enviar mensagens para o endereço da lista, oqual reenvia então a mensgem para cada uma das pessoas (e-mail) inscritas na lista.

Comunicação Interatva é a comunicação instantânea entre duas ou mais pessoas, independenteda localização geográfca dessas pessoas.

4. Números Binários

O sistema binário (ou sistema de base 2), é formado por dois algarismos: 0 e 1, enquanto que osistema decimal (ou sistema de base 10), normalmente utlizado, é formado por 10 algarismos: 0, 1, 2, 3, 4,5, 6, 7, 8 e 9.

Os números binários (0 e 1) foram adotados nos computadores por motvos de precisão eeconomia, pois construir um circuito eletrônico capaz de detectar a diferença entre dois estados (presençaou ausência de corrente elétrica, por exemplo) é muito mais fácil e barato do que construir um circuito quedetecte a diferença entre dez estados diferentes.

Um dugito binário é chamado de BIT, proveniente de BInary digiT, como mencionadoanteriormente.

Instituto de Química – UNESP – Araraquara

8

Page 12: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

1

0

4

8

13

1 1 0 1

X x x x

23 22 21 20

0

2

4

8

0

32

46

1 0 1 1 1 0

x x x x x x

25 24 23 22 21 20

Introdução à Computação

Transformação de números decimais em números binários

2

6

13

1 2

30 2

11 => 1 1 0 1

46 2

0 23 2

1 11 2

1 5 2

1 2 2

0 1 => 1 0 1 1 1 0

Transformação de números binários em números decimais

Números Decimais Números Binários

00 0 0 0 001 0 0 0 102 0 0 1 003 0 0 1 1 04 0 1 0 0 05 0 1 0 1 06 0 1 1 0 07 0 1 1 1 08 1 0 0 0 09 1 0 0 1 10 1 0 1 0 11 1 0 1 1 12 1 1 0 0 . . . . . .

Instituto de Química – UNESP – Araraquara

9

Page 13: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

5. Algoritmos

Algoritmo é a descrição, de forma lógica, das ações a serem executadas no cumprimento de umatarefa, ou seja, é uma sequência de passos que levam à realização de uma tarefa.

Em um algoritmo é importante salientarmos que:- cada passo deve ser uma instrução simples e sem ambiguidade que possa ser realizada;- a ordem dos passos deve ser precisamente determinada;- deve possuir um fm, isto é, um número fnito de passos.

Existem várias formas para representar um algoritmo: descrição narratva; fuxograma ou diagrama de blocos; pseudocódigo (forma genérica de escrever o algoritmo usando uma linguagem

simples, estruturada e natva a quem o escreve).

A seguir, apresentamos um algoritmo em forma de descrição narratva, para troca de uma lâmpadaqueimada.

1. Remova a lâmpada queimada.2. Coloque uma nova lâmpada.

Detalhando os passos, temos:

1.1. Coloque uma escada embaixo da lâmpada queimada.1.2. Suba a escada até alcançar a lâmpada queimada.1.3. Gire a lâmpada queimada no sentdo ant-horário até que ela se solte.

2.1. Escolha uma lâmpada nova de mesma potência da queimada.

2.2. Posicione a nova lâmpada no soquete.2.3. Gire a lâmpada no sentdo horário até que ela se frme.2.4. Desça a escada.

Ordenando e detalhando um pouco mais os passos, temos:

1. Coloque uma escada embaixo da lâmpada queimada.2. Escolha uma lâmpada nova.3. Enquanto a potência não for a mesma da queimada,

Descarte a lâmpada escolhida,Escolha outra lâmpada.

4. Enquanto não possa alcançar a lâmpada queimada,Suba mais um degrau da escada.

5. Enquanto a lâmpada não estver livre do soquete,Gire a lâmpada no sentdo ant-horário.

6. Posicione a nova lâmpada no soquete.7. Enquanto a lâmpada não estver frme no soquete,

Gire a lâmpada no sentdo horário.8. Desça da escada.

Instituto de Química – UNESP – Araraquara

10

Page 14: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Problema do mundo real

Solução na forma de algoritmo

Solução na forma de um programa de

computador

Fase de solução do problema

Fase de implementação

Introdução à Computação

5.1. Algoritmo na solução de um problema usando o computador

No esquema acima, é possuvel visualizar onde se encaixa o algoritmo, na solução de um problemautlizando o computador.

Muitas vezes, temos um problema do mundo real que desejamos resolver através do computador,devido principalmente à rapidez de execução e confabilidade dos resultados. Neste caso, inicialmente énecessário compreender muito bem o problema e saber solucionar este problema. A próxima etapaconsiste em transcrever os passos da solução do problema em uma forma de algoritmo (descriçãonarratva, fuxograma ou pseudocódigo). A etapa seguinte é a de implementação, que consiste em passar asolução, que está em forma de algoritmo, para uma linguagem de programação, gerando assim umprograma de computador. Um programa nada mais é do que a formalização de um algoritmo em umadeterminada linguagem de programação, obedecendo às regras de sintaxe e semântca desta linguagem,de forma que o computador possa (entendero a sequência de ações que deve ser executada.

Utlizando-se um programa de computador, o problema pode ser resolvido com muita rapidez,quantas vezes forem necessárias.

5.2. Passos para a construção de um algoritmo

Para construir um algoritmo, devemos seguir os passos abaixo:

1) Compreender o problema e a sua solução de uma forma muito clara e destacar os pontos maisimportantes.

2) Defnir os dados de entrada, isto é, os dados (valores e informações) que serão fornecidos aoalgoritmo.

3) Defnir o processamento, ou seja, os cálculos que deverão ser realizados para a solução doproblema.

4) Defnir os dados de sauda, ou seja, os resultados do processamento que serão apresentados aousuário.

5) Construir o algoritmo usando uma das formas citadas acima (descrição narratva, fuxograma oupseudocódigo).

6) Testar o algoritmo através de simulações.

Instituto de Química – UNESP – Araraquara

11

Page 15: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

5.3. Algoritmo, programação e raciocínio lógico

A construção de algoritmos e a programação permitem melhorar o raciocunio lógico e acelerar odesenvolvimento cognitvo, porque a elaboração de algoritmos e programas faz com que o aluno exercite apercepção dos pontos chaves, força o aluno a fazer planejamento e pensar organizadamente.

Um dos principais objetvos desta disciplina é estmular o aluno a desenvolver o raciocunio lógicoatravés da construção de algoritmos e programas, proporcionando um amadurecimento na maneira depensar diante dos problemas reais.

Não existem fórmulas prontas na construção de algoritmos e programas. O que se adquire com otreino é o aperfeiçoamento na forma de pensar e raciocinar sobre o problema em mãos. O raciocunio lógicoé uma habilidade inerente a todas as pessoas e necessária em inúmeras atvidades que realizamos.

James Paul Holloway em seu livro (Introdução à Programação para Engenhariao diz: (... a razãomais importante para estudar e criar algoritmos não é, na verdade, sua utlidade natural, mas em vez disso,a habilidade de pensamento que a sua criação nos força a desenvolver. Para ser mais exato, o raciocuniológico necessário lhe proporcionará boas condições quando você tver problemas a analisar, mesmo seesses problemas não puderem ser resolvidos por meio de algoritmos formalmente construudos.o.

Outra passagem a destacar no livro de Holloway é: (Criar algoritmos é exatamente o que fazemos.Nós os criamos. Começamos com um problema a resolver e uma página em branco, e tentamos preenchereste vazio com um código-fonte que, quando traduzido e executado num computador, resolverá oproblema. Este processo criatvo envolve muitos princupios de projeto. Devemos entender o problema;analisar o problema e encontrar uma solução; analisar a solução para encontrar a melhor maneira deimplementá-la; trabalhar considerando as restrições; procurar simplicidade, elegância e confabilidade.Uma introdução aos algoritmos e suas implementações pode, assim, proporcionar uma rica experiênciaintrodutória no projeto em engenharia.o

Para exercitar um pouco o raciocunio lógico, tente resolver os problemas abaixo:

1) Há três suspeitos de um crime: o cozinheiro, a governanta e o mordomo. Sabe−se que o crime foiefetvamente cometdo por um ou por mais que um deles. Sabe−se, ainda que:

- se o cozinheiro é inocente, então a governanta é culpada;- ou o mordomo é culpado ou a governanta é culpada, mas não os dois;- o mordomo não é inocente.

Logo:

(a) a governanta e o mordomo são os culpados(b) o cozinheiro e o mordomo são os culpados(c) somente a governanta é culpada

(d) somente o cozinheiro é culpado(e) somente o mordomo é culpado

2) O preço de um produto foi reduzido em 20% numa liquidação. Qual deverá ser a porcentagemde aumento do preço do mesmo produto para que ele volte a ter o preço original?

(a) 15%(b) 20%(c) 25%(d) 30%

Instituto de Química – UNESP – Araraquara

12

Page 16: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Dados

Numéricos Lógicos Literais

Real Inteiro Caractere Cadeia de Caracteres

Introdução à Computação

6. Tipos de Dados

Apesar do computador, na maior parte do tempo em nosso meio, ser utlizado como processadorde textos ou para acesso à Internet, o objetvo principal de um computador é a resolução de problemas. Naresolução de problemas o computador manipula dados de vários tpos. Estes dados podem ser numéricos,literais ou lógicos. A seguir apresentamos a classifcação dos dados e a sua descrição.

6.1. Dados Numéricos

Os dados numéricos podem ser inteiros ou reais. Os números inteiros podem ser positvos ou negatvos e não possuem a parte decimal. Os números reais podem ser positvos ou negatvos e possuem a parte decimal. Os números reais

podem ser representados em forma decimal ou em forma de ponto futuante. Exemplo de números reais em forma decimal: 8.15927, 0.5, 176.48, etc. Obs. O ponto decimal deve

ser representado por ponto (.), seguindo a notação da lungua inglesa que é utlizada nas linguagens deprogramação.

Geralmente, utliza-se a representação de números reais em ponto futuante (notação cientfca)quando o número é muito grande ou muito pequeno.

Exemplo: 0.0000000000061725 617 x 10-14 (representação em ponto futuante)418639138670259 419 x 1012 (representação em ponto futuante)

Para transformar um número real que está na representação decimal para a representação emponto futuante, devemos:

defnir o número de dugitos de precisão (ou signifcatvos) e arredondar o últmo dugito, se fornecessário.

ajustar a magnitude do número como potência de 10.

6.2. Dados Literais

Os dados literais são caracteres ou cadeia de caracteres.Caractere é qualquer letra (maiúscula ou minúscula), algarismo (0, 1, 2, …, 9) ou caractere especial

(sinais de pontuação e sumbolos: %, +, @, *, ?, &, #, :, etc.). Os caracteres devem ser representados entreapóstrofos ('). Exemplos: 'y', 'n', '$', etc.

Cadeia de caracteres ou striong: é uma sequência de caracteres. As cadeias de caracteres tambémdevem ser representadas entre apóstrofos ('). Exemplos: 'Ola', 'Bem vindo!', 'Digite um numero:', etc.

6.3. Dados Lógicos

Os dados lógicos são também chamados de dados booleanos e podem assumir somente um dosvalores: falso ou verdadeiro. Em linguagens de programação, geralmente usa-se o número 1 pararepresentar um resultado verdadeiro e o número 0 para representar um resultado falso.

Instituto de Química – UNESP – Araraquara

13

Page 17: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

7. Constantes e Variáveis

Constantes são valores fxos que não se modifcam durante a execução do programa. As constantespodem ser numéricas (5, 128, -76), literais ('Paula', 'feminino', 'fm'), ou lógicas (V ou F).

Variáveis são entdades que possuem um conteúdo (valor) que pode variar no algoritmo ou noprograma. Embora elas possam assumir diferentes valores, só podem armazenar um único valor a cadainstante. Uma variável é conhecida no programa por um nome ou identfcador.

O identfcador ou o nome de uma variável deve iniciar com uma letra e pode ser seguida de letras,algarismos ou caractere de sublinhado, mas não pode conter caracteres especiais (-, *, %, ç, e letras comacentos). Exemplos de identfcadores válidos: X, Y1, saldo, nome_do_cliente, RG, Aula26, etc.

Exemplos de nomes de variáveis inválidos: 2x, A[1], M-N, 07/09, nota-do-aluno, salário, etc.As variáveis podem ser numéricas ou literais e devem ter nomes signifcatvos. Nomes signifcatvos

são nomes que lembram o seu conteúdo. Por exemplo: nota, nome, saldo, ao invés de x, y, z.

8. Expressões

Expressão em termos computacionais está ligado ao conceito de expressão ou fórmula matemátca,onde um conjunto de variáveis e constantes se relacionam por meio de operadores compondo umafórmula que, quando avaliada, resulta em um valor.

8.1. Expressões Aritméticas

Expressões Aritmétcas: são expressões em que os operadores são aritmétcos e os operandos sãoconstantes e/ou variáveis numéricas.

Operadores Aritmétcos e suas Prioridades

prioridade operador ação

1

* multplicação

/ divisão

MOD resto da divisão inteira

2

+ adição

- subtração

Funções

função ação

EXP(x) exponencial de x (ex, onde e = 2.718282...)

LN(x) logaritmo neperiano de x (logex)

ABS(x) valor absoluto de x (x)

TRUNC(x) parte inteira do número real x

ROUND(x) arredonda o número real x

SIN(X) seno de x

Instituto de Química – UNESP – Araraquara

14

Page 18: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

COS(x) cosseno de x

SQR(x) quadrado de x (x2)

SQRT(x) raiz quadrada de x ( x )

Exemplos de expressões aritmétcas:

a) A-B*SQR(C) d) ROUND(5.8)+ABS(-4)b) SQRT(SQR(b)-4*a*c) e) SIN(A)-LN(B)c) TRUNC(3.68) - EXP(3) f) 22 MOD 6 + soma

8.2. Expressões Relacionais

Expressões Relacionais ou Relações: são expressões que realizam comparações entre valores domesmo tpo. Estes valores são representados nas relações através de constantes, variáveis ou expressõesaritmétcas.

Operadores Relacionais

operador ação

= igual

<> diferente

< menor

> maior

<= menor ou igual

>= maior ou igual

O resultado obtdo de uma expressão relacional é sempre um valor lógico (Verdadeiro ou Falso).

Exemplos de expressões relacionais:

a) X+Y=3*X+5 d) SQRT(SQR(b)-4*a*c) >= 0b) 2*A<8 e) A <> Bc) nome <> 'Ana Maria' f) sexo = ‘masculino’

8.3. Expressões Lógicas

Expressões Lógicas: são expressões cujos operadores são lógicos e cujos operandos são expressõesrelacionais, constantes e/ou variáveis do tpo lógico. O resultado de uma expressão lógica é sempre umvalor lógico (V ou F).

Operadores Lógicos

operador ação

e () conjunção

ou () disjunção

não (~) negação

Instituto de Química – UNESP – Araraquara

15

Page 19: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Sejam p e q proposições, temos a seguinte Tabela-Verdade:

conjunção disjunção negação

p q p q p q p q p ~ pV V V V V V V FV F F V F V F VF V F F V VF F F F F F

Suponha que tenhamos duas proposições:A : (Eu gosto de dia ensolarado.oB : (Hoje vai chovero

Podemos criar várias composições de proposições usando os operadores lógicos:~A : (Eu não gosto de dia ensolaradoo~(A B) : (Não é verdade que eu gosto de dia ensolarado e hoje vai choveroA ~B : (Eu gosto de dia ensolarado ou hoje não vai chovero

Exemplos de expressões lógicas:a) X > 2*Y Idade = 18b) cidade = 'Araraquara' bairro = 'Centro'c) ~Fim Total < 15

Prioridade entre os Operadores

prioridade operador

1 aritmétco

2 relacional

3 não

4 e

5 ou

Obs: Vários nuveis de parênteses podem ser utlizados para fxar uma ordem de execução diferenteda prioridade indicada pela tabela acima.

Exemplo: ~(x = 20 y > 5)

9. Fluxogramas

Fluxograma ou diagrama de blocos é a representação simbólica dos passos a serem seguidos emum algoritmo, ou seja, é a representação esquemátca de um processo.

Exemplo de Controle de Estoque: O funcionário responsável pelo estoque recebe uma solicitação de peça e verifca na listagem de

estoque a disponibilidade da mesma. Caso a peça esteja disponuvel, ela é entregue ao solicitante e emseguida é efetuada a baixa no estoque. Caso a peça não esteja disponuvel, o funcionário verifca o tempo deentrega junto ao fornecedor da peça e informa o tempo de entrega ao solicitante. Caso o solicitante desejea peça, é efetuado o pedido ao fornecedor e aguarda-se a chegada da peça e a sua entrada no estoque. Emseguida ela é entregue ao solicitante e é efetuada a baixa no estoque.

Instituto de Química – UNESP – Araraquara

16

Page 20: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

inucio ou fm leitura (entrada) decisão

cálculo e atribuição impressão (sauda) sentdo do fuxo

Inucio

Recebe a solicitação e verifca no estoque

Dá baixa no estoque

Entrega ao solicitanteVerifca o tempo de

entrega e informa ao solicitante

Disponuvel ?

Quer a peça?

Fim

Faz o pedido e aguarda a entrega no

estoque

S

S

N

N

Introdução à Computação

Os sumbolos básicos utlizados em fuxogramas são:

9.1. Comando de Atribuição

O Comando de Atribuição permite que se forneça um valor a uma determinada variável. O valorpode ser resultado de uma expressão.

Exemplos: a) A 7b) idade 18c) NOME 'Marina'd) media (a + b)/2e) X Y

9.2. Comando de Entrada

O Comando de Entrada permite que o usuário do programa forneça valores ao programa.

Instituto de Química – UNESP – Araraquara

17

Identfcador valor ou expressão

lista de identfcadores

Page 21: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

inucio

A,B,C

media (A+B+C)/3

'Média = ', media

fm

Introdução à Computação

onde: lista de identfcadores são os nomes das variáveis, separados por vurgula, nas quais serãoarmazenados os valores provenientes do usuário através dos dispositvos de entrada.

9.3. Comando de Saída

O Comando de Sauda permite mostrar ao usuário os valores das variáveis ou das constantes.

onde: lista de identfcadores são os nomes das variáveis, cujos conteúdos serão mostrados, as constantessão os valores e as expressões podem ser expressões aritmétcas ou outras, cujos resultados serãomostrados aos usuários através de um dispositvo de sauda.

9.4. Estrutura Sequencial

Estrutura Sequencial é uma coleção de ações a serem executadas sequencialmente.

Exemplo 9.1.Fluxograma para ler três números, calcular a média aritmétca entre estes números e imprimir o

resultado.

Instituto de Química – UNESP – Araraquara

18

lista de identfcadores, constantesou expressões

ação2

ação1

Page 22: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

ação1 / ações1

condição FV

ação2 / ações2

V

Fnota < 5

nota

inucio

fm

‘REPROVADO‘

V

Fcondição

ação / ações

Introdução à Computação

9.5. Estruturas Condicionais

Estas estruturas permitem escolher um grupo de ações ou estruturas a serem executadas quandouma determinada condição, representada por uma expressão lógica, é satsfeita ou não.

9.5.1. Estrutura Condicional Simples

A(s) ação(ções) só será(ão) executada(s) se a condição for Verdadeira. Condição é um teste, cujoresultado é Verdadeiro ou Falso

Exemplo 9.2.Fluxograma para ler uma nota e imprimir REPROVADO, caso a nota seja menor do que 5.

9.5.2. Estrutura Condicional Composta

Se a condição for Verdadeira, a ação1 ou a sequência de ações1 serão executadas, se a condição forFalsa, a ação2 ou a sequência de ações2 serão executadas.

Instituto de Química – UNESP – Araraquara

19

Page 23: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

prova < 5ou trab < 5

FV

prova, trab

inucio

fm

‘REPROVADO‘ ‘APROVADO‘

condição

ação / ações

F

V

Introdução à Computação

Exemplo 9.3.

Fluxograma para ler a nota da prova e a nota do trabalho, e imprimir REPROVADO, caso a nota daprova ou do trabalho seja menor do que 5 e caso contrário imprimir APROVADO.

9.6. Estruturas de Repetição

Uma estrutura de repetção permite repetr um grupo de ações ou estruturas, várias vezes e o fmda repetção é determinado por um teste de condição.

9.6.1. Estrutura de Repetição Enquanto-faça

Esta estrutura de repetção tem o teste de condição no inucio da repetção. Portanto, enquanto acondição é verdadeira, a ação ou as ações serão executadas repetdamente (ENQUANTO-FAÇA). Neste tpode estrutura de repetção, caso a condição seja Falsa na primeira vez, a ação ou as ações não serãoexecutadas nenhuma vez.

Exemplo 9.4

Fluxograma para imprimir o quadrado dos números inteiros entre 1 e 50 (inclusive), usando aestrutura de repetção Enquanto-faça.

Instituto de Química – UNESP – Araraquara

20

Page 24: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

condição

ação / ações

V

F

N <= 50 F

V

inucio

fm

Q

Q N*N

N 1

N N+1

Introdução à Computação

9.6.2. Estrutura de Repetição Repita-até

Esta estrutura de repetção tem o teste de condição no fnal da repetção. Portanto, uma ação ousequência de ações são executadas repetdamente, até que uma determinada condição seja satsfeita(REPITA-ATÉ). Neste tpo de estrutura de repetção, como o teste de condição está no fnal, a ação ou asações serão executadas pelo menos uma vez.

Exemplo 9.5.

Fluxograma para imprimir o quadrado dos números inteiros entre 1 e 50 (inclusive), usando aestrutura de repetção Repita-até.

Instituto de Química – UNESP – Araraquara

21

Page 25: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

N > 50F

V

inucio

fm

Q

Q N*N

N 1

N N+1

Introdução à Computação

10. Programação

Linguagem de programação é a linguagem utlizada pelo homem para dar instruções aocomputador. Uma linguagem de programação é formada por um conjunto de regras sintátcas e semântcasque permite ao homem expressar as instruções que deseja que o computador execute.

Existem vários paradigmas (estlos) de programação:Programação Imperatva (Fortran, Pascal, C)Programação Orientada a Objetos (Smalltalk, C++, Java)Programação Funcional (Lisp)Programação Lógica (Prolog)

Na programação imperatva os programas são centrados no conceito de estados (modelados porvariáveis) e ações (comandos) que manipulam o estado. Uma linguagem de programação que utliza oparadigma imperatvo manipula variáveis a partr de ordens ou comandos. Ex. (faça isso e depois aquiloo.

O paradigma orientado a objetos tenta extrair conceitos do mundo real por meio de estruturascomo objetos, classes, atributos e métodos. Uma classe é um conjunto de objetos e cada classe tem seusatributos (propriedades) e métodos (ações). Ex. Cachorro é uma classe que possui os atributos: raça, idade,cor, peso, etc. Totó é um objeto da classe cachorro, assim como Banzé. Os métodos da classe cachorro são:latr, comer, dormir, etc. A programação orientada a objetos é complexa, envolvendo conceitos deencapsulamento, herança, polimorfsmo, associação, agregação, composição, etc.

No paradigma funcional os programadores abstraem o programa como uma sequência de funçõesexecutadas de modo empilhado. Este paradigma é muito utlizado em Inteligência Artfcial.

O paradigma lógico tem estlo declaratvo e os programas são relações entre entrada e sauda. Háuso deste paradigma em Sistemas Especialistas e Bancos de Dados.

Os paradigmas mais utlizados são os paradigmas imperatvo e orientado a objetos.

Instituto de Química – UNESP – Araraquara

22

Page 26: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

A relação entre linguagens de programação e paradigmas de programação é complexa porque umalinguagem pode suportar mais do que um paradigma.

Na programação existem também os conceitos de modularização e programação estruturada quenão são paradigmas, mas técnicas de programação. Na programação estruturada os elementos chaves sãoas estruturas básicas de controle (sequencial, condicional e repettva). Nesta técnica de programação éproibido o uso irrestrito de comandos de desvio incondicional GOTO para aumentar a legibilidade e acompreensão do programa.

A modularização de programas permite dividir o programa em blocos denominados procedimentos,funções ou subrotnas, de modo a facilitar a compreensão e a correção, melhorando a clareza geral doprograma, além de permitr a reutlização de blocos. Com a modularização pode-se separar e esconder doresto do programa, as informações necessárias para realizar uma tarefa especufca.

11. Linguagem Pascal

A linguagem Pascal foi desenvolvida entre os anos de 1968 e 1970 por Niklaus Wirth, na Suiça, e foibatzada de Pascal em homenagem ao grande flósofo e matemátco francês, Blaise Pascal (1623-1662). Alinguagem Pascal foi projetada para ser uma versão simplifcada da linguagem Algol (1960) para fnseducacionais. Ao longo de sua história a linguagem Pascal foi ganhando importância, principalmente noensino de programação.

A linguagem Pascal é semelhante a uma linguagem natural, o que torna muito fácil o seuentendimento. Por esses motvos, apesar de ser uma linguagem antga, o Pascal ainda é uma daslinguagens escolhidas para o ensino de programação. Em termos técnicos, Pascal é uma linguagemimperatva, estruturada e modular. A linguagem Pascal não é case sensitve, isto é, não é sensuvel amaiúscula e minúscula. Portanto, tanto as palavras reservadas da linguagem quanto os identfcadores(nomes de variáveis e constantes) escritos em maiúsculas ou minúsculas não são diferenciados. Exemplo:NOME = Nome = nome.

Em 1995 foi criado o Delphi que além de ser uma linguagem de programação baseada em ObjectPascal, que permite uma programação visual e oritentada a objetos, é uma IDE (Integrated DevelopmentEnvironment - Ambiente de Desenvolvimento Integrado) e também uma ferramenta RAD (RapidApplicaton Development – Desenvolvimento Rápido de Aplicações).

Em 1999 foi criado o Lazarus que é uma alternatva ao Delphi, porém gratuito e de código aberto . OLazarus é uma IDE-RAD com base no compilador Free Pascal, compatvel e com interface muito parecidacom o Delphi.

Apesar do Lazarus oferecer um ambiente de programação visual, onde a programação pode serrealizada a partr de elementos gráfcos que estão disponuveis na tela, como este tpo de programação émais complexa, não será abordada neste primeiro curso de programação.

Nas aulas prátcas desta disciplina será utlizado o Lazarus para o desenvolvimento de programassimples de console. Como o Lazarus é um Ambiente de Desenvolvimento Integrado (IDE), ele possui umeditor de textos inteligente que reconhece elementos da linguagem de programação, um compilador paratraduzir o código fonte e gerar o programa executável e um depurador (debugger) para auxiliar na correçãode erros de lógica do programa.

O Lazarus pode ser baixado da página http://www.lazarus-ide.org/, através do link DownloadNow.

Segue um breve roteiro para o uso do Lazarus: – Para começar a digitar um novo programa: vá ao menu Projeto / Novo Projeto e selecione

Programa Simples.– Para salvar o programa: vá ao menu Projeto / Salvar Projeto Como e digite um nome para o

projeto (não é aceito espaço, use _ se necessário). O Lazarus salva 4 arquivos do projeto. Oarquivo Applicaton (com extensão EXE) é o programa executável e o arquivo com a extensão LPRcontém o código fonte.

– Para compilar e executar o programa: clique no botão

– Para fechar um programa: vá ao menu Projeto / FecharProjeto.

Instituto de Química – UNESP – Araraquara

23

Page 27: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

11.1. Tipos de Dados

As caracterustcas descritas a seguir são referentes ao Free Pascal utlizado pelo Lazarus.

Integer: números inteiros no intervalo de -32768 a 32767 (ocupa 2 bytes).Operadores: +, -, *, DIV, MOD. DIV: quociente inteiro da divisão.

MOD: resto da divisão.

Exemplo: 19 DIV 5 = 3 19 MOD 5 = 4

Longint: números inteiros no intervalo de -2147483648 a 2147483647 (ocupa 4 bytes).

Real: números reais com grandeza de 2.9x10-39 a 1.7x1038 com 11 a 12 dugitos signifcatvos (ocupa 6bytes).

Operadores: +, -, *, /.

Double: números reais com grandeza de 5.0x10-324 a 1.7x10308 com 15 a 16 dugitos signifcatvos(ocupa 8 bytes).

Extended: números reais com grandeza de 1.9x10-4932 a 1.1x104932 com 19 a 20 dugitos signifcatvos(ocupa 10 bytes).

Char: caractere.

String: cadeia de caracteres.

Boolean: valores lógicos TRUE ou FALSE.

11.2. Funções Numéricas Pré-definidas

Função Ação

EXP(x) exponencial de x (ex, onde e = 2.718282...)

LN(x) logaritmo neperiano de x (logex)

ABS(x) valor absoluto de x (x)

TRUNC(x) parte inteira do número real x

ROUND(x) arredonda o número real x

SIN(X) seno de x

COS(x) Cosseno de x

SQR(x) quadrado de x (x2)

SQRT(x) raiz quadrada de x ( x )

INC(x) incrementa 1 no valor da variável x

DEC(x) decrementa 1 no valor da variável x

PI (3.14159265358979)

Instituto de Química – UNESP – Araraquara

24

Page 28: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

11.3. Operadores

11.3.1. Operadores Aritméticos

operador ação

+ adição (operandos inteiros ou reais)

- subtração (operandos inteiros ou reais)

* multplicação (operandos inteiros ou reais)

/ quociente real da divisão (operandos inteiros ou reais)

DIV quociente inteiro da divisão (operandos inteiros)

MOD resto da divisão (operandos inteiros)

Obs. No uso dos operadores +, -, * e /, o resultado será real, se pelo menos um dos operandos for real.

11.3.2. Operadores Relacionais

operador ação

= igual

<> diferente

< menor

> maior

<= menor ou igual

>= maior ou igual

11.3.3. Operadores Lógicos

operador ação

NOT não

AND e

OR ou

Instituto de Química – UNESP – Araraquara

25

Page 29: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

11.3.4. Prioridade dos Operadores

Em uma expressão podem aparecer vários operadores. Quando isso acontece, o compilador Pascalirá avaliar a expressão obedecendo a prioridade dos operadores estabelecida na tabela abaixo.

prioridade operadores

1 NOT

2 * , / , DIV , MOD , AND

3 + , - , OR

4 = , <> , < , > , <= , >=

Obs: Quando aparecem dois operadores de mesma prioridade, o compilador irá avaliar sempre daesquerda para a direita. Para fxar uma ordem de execução diferente da prioridade da tabela acima , váriosnuveis de parênteses podem ser utlizados. Por exemplo: (a>b) AND (a>c)

11.4. Estrutura Geral de um Programa Pascal

Um programa Pascal apresenta a seguinte estrutura geral:

PROGRAM nome_do_programa;

declarações

BEGIN

comandos e estruturas

END.

11.5. Declaração de Variáveis

Todas as variáveis utlizadas no programa devem ser declaradas, isto é, defnidas de que tpo dedados é: inteiro, real, string, etc.

As variáveis são declaradas após a palavra VAR, da seguinte forma:

lista de variáveis (separadas por vurgula): tpo de dados;

Exemplos:VAR X, Y, Z: integer; media, porcentagem: real; nome: string;

11.6. Comando de Atribuição

O comando de atribuição serve para atribuir à uma variável, um valor, uma expressão, ou o valor(conteúdo) de uma outra variável.

variável := expressão;

Instituto de Química – UNESP – Araraquara

26

Page 30: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Exemplos: X := 1; media := (X + Y)/2;

A := B; A:= ‘B’;

mensagem := 'bom dia';

11.7. Comando de Entrada

O comando de entrada serve para o programa receber valores externos, digitados pelo usuário, earmazenar em variáveis.

READLN(lista de variáveis);

Exemplos: READLN(X); READLN(A,B,C); READLN(aluno, nota);

O comando READLN lê os valores das variáveis da lista e pula para a próxima linha, de modo que opróximo comando de entrada (READLN) recebe o primeiro valor da linha seguinte.

11.8. Comando de Saída

O comando de sauda serve para mostrar os dados na tela ou na impressora.

WRITE(lista de variáveis, constantes ou expressões);WRITELN(lista de variáveis, constantes ou expressões);

Exemplos: WRITE(n); WRITE('MEDIA = ',soma/n); WRITELN(nome,' ',idade,' anos');

A diferença entre estes dois comandos de sauda é que o WRITE escreve os valores da lista e deixaque o próximo comando de sauda (WRITE ou WRITELN) contnue escrevendo na mesma linha, enquanto queo comando WRITELN escreve os valores da lista e muda de linha, de modo que o próximo comando desauda escreva na linha seguinte.

11.9. Formatação

A formatação serve para formatar os dados de sauda na tela ou na impressora.

WRITE(X:m:n);WRITELN(X:m:n);

onde: X é o valor a ser escrito podendo ser do tpo real, inteiro, string, etc.m é um número inteiro que indica o número munimo de caracteres que serão utlizados para

escrever o valor de X.n só deve ser utlizado se X for do tpo real, e especifca o número de casas decimais desejado.

Obs. Caso m seja insufciente para representar o valor de X, então será alocado número decaracteres necessário para representá-lo. Caso m seja excessivo, o espaço excedente será preenchido combrancos antes do valor de X.

Instituto de Química – UNESP – Araraquara

27

Page 31: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Suponhamos que N := 13.58;

WRITE(N) 1.3580000000E+01WRITE(N:7:2) 13.58WRITE(N:5:2) 13.58WRITE(N:5:1) 13.6WRITE(N:4:0) 14WRITE(N:0:1) 13.6WRITE(N:0:0) 14

Suponhamos que NOME := 'PAULO'

WRITE(NOME) PAULOWRITE(NOME:8) PAULO

11.10. Estruturas Sequenciais

São sequências de comandos de atribuição, comandos de entrada ou de sauda.

Exemplo 11.1.Programa para ler o consumo mensal de energia elétrica em kWh e imprimir o valor da conta de

energia, supondo que 1 kWh custa R$ 3,00 e não há imposto nenhum envolvido no cálculo da conta.

Program Energia_Eletrica;

Var consumo: integer; conta: real;

Begin readln(consumo); conta:= consumo*3.00; writeln('Valor da conta = R$ ', conta:0:2); readln;End.

11.11. Estruturas Condicionais

11.11.1. Estrutura Condicional Simples

A estrutura condicional simples permite executar um comando (ou bloco de comandos) quandouma condição for verdadeira. Uma condição é uma comparação que pode ser verdadeira ou falsa.

No trecho abaixo, se a condição1 for verdadeira, o comando1 será executado.

IF condição1 THEN comando1;

Exemplo 11.2.Programa para ler a idade e imprimir a mensagem Menor de idade, caso a idade seja inferior a 18

anos.

Instituto de Química – UNESP – Araraquara

28

Page 32: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Program Menor_de_idade;

Var idade: integer;

Begin readln(idade); if idade < 18 then writeln('Menor de idade'); readln;End.

Quando você deseja que mais que um comando sejam executados caso uma condição sejaverdadeira, você deve utlizar Begin e End para delimitar os comandos que serão executados.

No trecho a seguir, se a condição1 for verdadeira, então o comando1 e o comando2 serãoexecutados. O comando3 será executado independentemente da condição1, porque ela está depois doEnd, e portanto fora da estrutura condicional.

IF condição1 THEN Begin comando1; comando2;

End; comando3;

Abaixo, se a condição1 for verdadeira, o comando1 será executado. O comando2 e o comando3sempre serão executados, independentemente da condição1. Isto é devido ao fato que não há a palavraBegin logo após a palavra THEN. Desta forma, o compilador interpretará que somente o comando1 fazparte da estrutura condicional e os demais comandos estão fora da estrutura condicional. Portanto, ocomando2 e o comando3 serão executados independentemente da condição1, ou seja, sempre serãoexecutados.

IF condição1 THEN comando1; comando2; comando3;

Exemplo 11.3.Programa para ler o raio e caso o raio lido seja positvo, calcular e imprimir a área do curculo.

Program Area_do_Circulo;

Var raio, area: real;

Begin readln(raio); if raio > 0 then Begin area:= pi*sqr(raio); writeln('Area do circulo = ', area); End; readln;End.

Instituto de Química – UNESP – Araraquara

29

Page 33: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

11.11.2. Estrutura Condicional Composta

A estrutura condicional composta permite executar um comando (ou bloco de comandos) quandouma condição for verdadeira e outro comando (ou bloco de comandos) quando a condição for falsa.

No trecho abaixo, caso a condição1 seja verdadeira, o comando1 será executado e caso contrário,isto é, se a condição1 for falsa, o comando2 será executado.

IF condição1 THEN comando1

ELSE comando2;

No trecho abaixo, caso a condição1 seja verdadeira, o comando1 será executado e caso contrário, ocomando2 e comando3 serão executados.

IF condição1 THEN comando1 ELSE Begin comando2; comando3; End;

Exemplo 11.4.Programa para ler a nota da prova e do trabalho, e imprimir Reprovado, caso a nota da prova ou do

trabalho seja menor do que 5 e caso contrário, imprimir Aprovado e a média dada pela fórmula:

M = 4 P+ T5

.

Program Notas;

Var prova, trabalho, media: real;

Begin readln(prova, trabalho); if (prova < 5) or (trabalho < 5) then writeln(‘Reprovado’) else Begin writeln(‘Aprovado’); media:= (4*prova + trabalho)/5; writeln(‘Media = ‘, media); End; readln;End.

11.12. Estruturas de Repetição

11.12.1. Estrutura de Repetição WHILE (Enquanto)

Esta estrutura de repetção permite que um comando (ou uma sequência de comandos) seja(m)repetdo(s) enquanto uma condição for verdadeira. O teste da condição fca no inucio da repetção eportanto, existe a possibilidade da repetção não ser executada nenhuma vez, caso a condição assuma valorfalso na primeira verifcação.

Instituto de Química – UNESP – Araraquara

30

Page 34: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

No trecho abaixo, somente o comando1 será repetdo enquanto a condição for verdadeira. Ocomando2 e o comando3 só serão executados uma vez, após terminar a repetção, isto é, após a condiçãoassumir valor falso.

WHILE condição DO comando1;

comando2; comando3;

Caso você queira que os 3 comandos (comando1, comando2 e comando3) sejam repetdos, vocêdeve delimitá-los com as palavras Begin e End.

No trecho a seguir, os comandos 1, 2 e 3 serão repetdos enquanto a condição for verdadeira e ocomando4 só será executado após a condição tornar-se falsa.

WHILE condição DO Begin

comando1; comando2; comando3; End;comando4;

Exemplo 11.5.

Programa para imprimir a soma dos números pares positvos menores que 50.

Program Soma_Pares;

Var N, S: integer;

Begin N:= 2; S:= 0; While N < 50 do Begin S:= S + N; N:= N + 2; End; writeln(‘Soma = ‘, S); readln;End.

11.12.2. Estrutura de Repetição REPEAT (Repita)

Esta estrutura de repetção faz o teste da condição no fnal da repetção. Portanto, os comandossão repetdos até que uma condição seja satsfeita. Assim, quando a condição for verdadeira, a repetção éterminada e o comando situado abaixo da repetção é executado. Neste tpo de estrutura de repetção, oscomandos delimitados pelas palavras REPEAT e UNTIL serão executados pelo menos uma vez.

No trecho abaixo, os comandos 1, 2 e 3 serão repetdos até que a condição seja satsfeita. Quando acondição for satsfeita (verdadeira), o comando4 será executado.

Instituto de Química – UNESP – Araraquara

31

Page 35: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

REPEAT comando1; comando2; comando3;UNTIL condição;comando4;

Exemplo 11.6.Programa para imprimir a soma dos números pares positvos menores que 50, análogo ao do

exemplo anterior, porém usando a estrutura REPEAT.

Program Soma_Pares;

Var N, S: integer;

Begin N:= 2; S:= 0; Repeat S:= S + N; N:= N + 2; Untl N >= 50; writeln(‘Soma = ‘, S); readln;End.

11.12.3. Estrutura de Repetição FOR (Para)

Esta estrutura de repetção só pode ser usada quando se conhece o valor inicial e o valor fnal que avariável (que controla a repetção) deve assumir. A variável muda de valor, do valor inicial até o valor fnal,de 1 em 1, incrementando automatcamente. Portanto, o valor inicial deve ser menor do que o valor fnal.

FOR variável := valor inicial TO valor fnal DO BEGIN comando1 ; comando2; END;

Exemplo 11.7.Programa para imprimir a soma dos números inteiros entre 20 e 40 (inclusive os extremos).

Program Soma_inteiros;

Var N, S: integer;

Begin S:= 0; For N:= 20 to 40 do S:= S + N; writeln(‘Soma = ‘, S); readln;End.

Instituto de Química – UNESP – Araraquara

32

Page 36: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Quando é utlizado DOWNTO ao invés de TO, a variável, que controla a repetção, é decrementadaautomatcamente de 1 em 1. Neste caso, o valor inicial deve ser maior do que o valor fnal.

FOR variável := valor inicial DOWNTO valor fnal DO BEGIN

comando1 ; comando2;

END;

Exemplo 11.8.Programa para imprimir a soma dos números inteiros entre 20 e 40 (inclusive os extremos), análogo

ao do exemplo anterior, porém usando a estrutura de repetção FOR DOWNTO DO.

Program Soma_inteiros;

Var N, S: integer;

Begin S:= 0; For N:= 40 downto 20 do S:= S + N; writeln(‘Soma = ‘, S); readln;End.

11.13. Declaração de Constantes

Constantes são valores fxos que não são alterados durante a execução do programa. Podem serassociados identfcadores (nomes) às constantes, e neste caso, as constantes devem ser declaradas antesdas variáveis.

Exemplo de declaração:

CONST e = 2.718281828459; N = 50; salario = 800.00;

Observação: Na declaração de constantes deve ser utlizado o sinal = (igual) e não : (dois pontos)como no caso de declaração de variáveis.

11.14. Comentários

Os comentários são colocados nos programas para aumentar a clareza e são ignorados pelocompilador. Os comentários devem ser colocados entre chaves ou entre parênteses e asterisco.

Exemplo: { Este é um exemplo de comentário } (* Este também é um exemplo de comentário *)

11.15. Estruturas de Dados

Variável estruturada é um conjunto de dados, referenciável por um único identfcador (nome).

Instituto de Química – UNESP – Araraquara

33

Page 37: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

11.15.1. Variáveis Compostas Homogêneas

As variáveis compostas homogêneas são conjuntos de dados do mesmo tpo e podem serunidimensionais ou multdimensionais. Essas variáveis são chamadas de Arrays.

11.15.1.1. Variáveis Compostas Homogêneas Unidimensionais

Variáveis Compostas Homogêneas Unidimensionais ou Vetores são variáveis capazes de armazenarvários elementos do mesmo tpo e necessitam de apenas 1 undice para individualizar um elemento doconjunto.

Exemplo de declaração:

VAR X: ARRAY[0..10] of integer; condutvidade: ARRAY[-100..100] of real; nome: ARRAY[1..50] of string;

nome[1] nome[2] nome[3] nome[50]

nome Ana Denise Milton ... Tania

Exemplo 11.9.

Programa para ler 5 nomes e armazenar em um vetor e depois imprimir o conteúdo do vetor.

Program Vetor;Const N=5;Var nome: array[1..N] of string; i: integer;Begin For i:= 1 to N do readln(nome[i]); For i:= 1 to N do writeln(nome[i]); readln;End.

11.15.1.2. Variáveis Compostas Homogêneas Bidimensionais

Variáveis Compostas Homogêneas Bidimensionais são variáveis capazes de armazenar várioselementos do mesmo tpo e necessitam de 2 undices para individualização de um elemento. Essas variáveissão chamadas também de Matrizes.

Exemplo de declaração:

VAR tabela: ARRAY[1..5,1..3] of real; escaninho: ARRAY[1..8,1..8] of string; matriz: ARRAY[1..3,1..3] of integer;

matriz[1,1] matriz[1,2]

6 -1 0 matriz[1,3]matriz 2 8 14 matriz[2,3]

-5 9 7 matriz[3,3]

matriz[3,1] matriz[3,2]

Instituto de Química – UNESP – Araraquara

34

Page 38: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

Exemplo 11.10.Programa para ler 12 números e armazenar em uma matriz 3x4 e depois imprimir os elementos

desta matriz.

Program Matriz;Var M: array[1..3,1..4] of integer; i,j: integer;Begin For i:= 1 to 3 do For j:= 1 to 4 do readln(M[i,j]); For i:= 1 to 3 do begin For j:= 1 to 4 do write(M[i,j]:6); writeln; end; Readln;End.

Instituto de Química – UNESP – Araraquara

35

Page 39: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

inucio

L1, L2

X L1*L2/2

X

fm

Introdução à Computação

12. Exercícios

1. Considere os valores das variáveis a seguir e determine o resultado das expressões lógicasabaixo:

A 2 ano 1996B -3 objeto ‘livro’C 1.5 fm verdadeiro

a) objeto = ‘computador’ ou A+B/A = C/B b) 3*A+B >= 2*C e ano = 2005c) TRUNC(C) <= ABS(A+B) ou 8*C MOD 5 = A e SQR(B) > -A*B*Cd) não(fm) ou ROUND(C) <= 2*Ae) objeto = ‘livro’ e ABS(B+C) <> Cf) SQRT(2*A-A*B*C+2*C) = 2-B e ano <> 2000

2. Determine os valores das variáveis numéricas X, Y e Z após a execução dos comandos abaixo:

X 31 MOD 4Y ROUND(4.5)Z TRUNC(2.6) -2*XX SQRT(X*Y-2*Z+2) + ZY ROUND(ABS(Z) + Y/2)Z X + 3*Z MOD 8

3. Em quais dos seguintes pares é importante a ordem dos comandos? Isto é, em quais paresquando se muda a ordem dos comandos os resultados fnais se alteram?

a) A C b) B A c) B A d) A B B D C B B C B A 4. Baseado nos valores de entrada L1 e L2, que consttuem a base e a altura de um triângulo, o que

signifca o valor de sauda X?

5. Elabore um fuxograma para ler uma temperatura dada na escala Celsius (C) e imprimir aequivalente temperatura em Fahrenheit (F).

F=95

C+32

Instituto de Química – UNESP – Araraquara

36

Page 40: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

condição3

FVcondição1

inucio

condição2

comando4

comando5

comando1 comando2

comando3

fm

VV F F

Introdução à Computação

6. Elabore um fuxograma para ler o raio (R) de um curculo e imprimir a sua área. Sabe-se que:Área = R2.

7. Elabore um fuxograma para ler a idade de um aluno e imprimir uma mensagem dizendo se ele émenor de idade ou maior de idade.

8. Elabore um fuxograma para ler um número e imprimir uma mensagem dizendo se o número lidoé par ou umpar.

9. Elabore um fuxograma para ler um número e imprimir uma mensagem dizendo se o número épositvo, negatvo ou nulo.

10. Dado o seguinte fuxograma:

Responda :

a) Se condiiço1 = V, condiiço2 = V e condiiço3 = F, quais os comandos executados ?b) Se condiiço1 = F, condiiço2 = V e condiiço3 = V, quais os comandos executados ?c) Se condiiço1 = V, condiiço2 = F e condiiço3 = F, quais os comandos executados ?d) Quais os valores de condiiço1, condiiço2 e condiiço3 para que nenhum comando seja

executado ?

11. Elabore um fuxograma para ler um número e imprimir uma mensagem dizendo se o númerolido é inteiro ou se o número tem a parte decimal.

12. Elabore um fuxograma para ler um ano e imprimir uma mensagem dizendo se o ano lido ébissexto ou não.

Utlize a seguinte regra: Um ano é bissexto se:- é divisuvel por 4 e não é divisuvel por 100, ou- é divisuvel por 400.

Exemplos:2008 é bissexto porque 2008 é divisuvel por 4 e não é divisuvel por 100.2000 é bissexto porque é divisuvel por 400.1900 não é bissexto porque apesar de ser divisuvel por 4, é também divisuvel por 100, e por outro

lado, não é divisuvel por 400.

Instituto de Química – UNESP – Araraquara

37

Page 41: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

N <= 15 F

V

inucio

fm

N

N 1

N N+2

Introdução à Computação

13. Elabore um fuxograma para ler os valores dos coefcientes a, b, e c de uma equação dosegundo grau, e imprimir a única raiz real, ou as duas rauzes reais, ou uma mensagem dizendo que as rauzessão complexas.

14. Elabore um fuxograma para ler 3 números e imprimir o maior deles.

15. Uma empresa está dando um reajuste aos seus funcionários de acordo com o seguinte critério:25% para os funcionários que recebem até R$ 500,00 (inclusive);20% para os funcionários que recebem entre R$ 500,01 e R$ 1.000,00 (inclusive);15% para os funcionários que recebem acima de R$ 1.000,00.Elabore um fuxograma para ler o salário de um funcionário e imprimir o seu salário reajustado.

16. O que faz o seguinte fuxograma ?

17. Elabore um fuxograma para imprimir os números pares positvos menores que 100.

18. O que será impresso ao fnal de cada um dos seguintes fuxogramas ?

Instituto de Química – UNESP – Araraquara

38

Page 42: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

X < 2F

V

inucio

fm

Y

X 0Y 0

X X+1Y Y+2

X = 3F

V

inucio

fm

Y

X 0Y 0

X X+1Y Y+2

X < 2F

V

inucio

fm

Y

X 0Y 0

X X+1Y Y+2

X >= 0F

V

inucio

fm

Y

X 0Y 0

X X+1Y Y+2

Introdução à Computação

a) b)

c) d)

19. Elabore um fuxograma para imprimir os 10 primeiros números positvos múltplos de 6.

20. Elabore um fuxograma para imprimir N termos de uma Progressão Aritmétca (PA) deelemento inicial a e razão r. Os valores de N, a e r devem ser lidos inicialmente.

21. Elabore um fuxograma para ler a idade de 500 vestbulandos e imprimir quantos dessesvestbulandos são menores de idade.

Instituto de Química – UNESP – Araraquara

39

Page 43: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

22. Elabore um fuxograma para calcular e imprimir a soma dos números entre 1 e 10 inclusive.

23. Elabore um fuxograma para calcular e imprimir a soma dos números inteiros positvos umparesinferiores ou iguais a um número N (positvo) lido inicialmente.

24. Elabore um fuxograma para calcular e imprimir o produto dos números inteiros entre 1 e 15(inclusive).

25. Elabore um fuxograma para ler um número e calcular e imprimir o fatorial deste número.

26. Elabore um fuxograma para ler o saldo de 1500 clientes de uma agência bancária, e imprimir:a) o saldo médio desses clientes;b) a porcentagem de clientes com saldo devedor.

27. Elabore um fuxograma para ler 2 números e imprimir o Máximo Divisor Comum (MDC) entreesses números.

Exemplo: MDC entre 15 e 54 é 3 pois:

Quociente = 3 1 1 254 15 9 6 3 MDC

Resto = 9 6 3 0

28. Elabore um fuxograma para ler o nome e a nota de 70 alunos e imprimir:a) quantos alunos foram reprovados (nota inferior a 5,0).b) a maior nota e o nome do(a) aluno(a) que obteve essa nota.

29. Elabore um fuxograma para ler o nome, a idade e o sexo de 50 funcionários de uma empresa, eimprimir:

a) a idade média dos funcionários do sexo masculino;b) a porcentagem de funcionários do sexo feminino, com idade superior a 30 anos;c) a menor idade e o nome do(a) funcionário(a) que possui essa idade.

30. Elabore um fuxograma para ler o saldo de 800 clientes de uma agência bancária e imprimir:a) a porcentagem de clientes com saldo devedor;b) o maior e o menor saldo.

31. Elabore um programa em Pascal para ler 2 números e calcular e imprimir a média aritmétcadestes números.

32. Elabore um programa em Pascal para ler a medida da base e da altura de um triângulo eimprimir a área deste triângulo.

33. Um marceneiro precisa cortar vários pedaços de madeira de comprimento = 45 cm cada um.Elabore um programa em Pascal para ler o comprimento da tábua (em metros) e imprimir a quantdade depedaços e a sobra (em centmetros). Exemplo: Caso o comprimento da tábua seja 5 m, a quantdade depedaços será 11 e a sobra será de 5 cm.

34. Uma entdade flantrópica faz sorteios cujos bilhetes contém números de 3 dugitos. O sorteio ébaseado no primeiro prêmio da loteria federal, sendo o número sorteado formado pelos três últmosdugitos do primeiro prêmio na ordem inversa. Por exemplo, se o primeiro prêmio for 51782, o númerosorteado será 287. Elabore um programa em Pascal para ler o número do primeiro prêmio da loteriafederal (de 5 dugitos) e imprimir o número sorteado.

Instituto de Química – UNESP – Araraquara

40

Page 44: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

35. Elabore um programa em Pascal para ler a nota de um aluno e imprimir uma mensagemdizendo se ele foi aprovado (nota 5,0) ou reprovado.

36. Elabore um programa em Pascal para ler 2 números, e escrever se o primeiro número é maior,menor ou igual ao segundo.

37. Elabore um programa em Pascal para ler o salário de um funcionário e imprimir o percentual dereajuste e o salário reajustado de acordo com a seguinte tabela:

Salário Reajusteaté R$ 1.000,00 15%

acima de R$ 1.000,00 até R$ 2.000,00 12,5%

acima de R$ 2.000,00 10%

38. Um casal divide as despesas doméstcas mensalmente. Durante o mês, cada um anota asdespesas que paga e no fnal eles dividem a despesa total ao meio. Elabore um programa em Pascal para leras despesas pagas por cada um e imprimir quem deve a quem e o valor da duvida. Lembre que podeacontecer de nenhum precisar pagar para o outro, caso já tenham pago exatamente a metade dasdespesas. Exemplo:

ITEM MARIDO ESPOSA TOTALDespesas Pagas 2000,00 1400,00 3400,00

Valor Devido 1700,00 1700,00Diferença 300,00 -300,00

No exemplo acima, o programa deve imprimir a seguinte mensagem: A esposa deve pagar R$300,00 ao marido.

39. Elabore um programa em Pascal para ler os lados de um triângulo e testar inicialmente se épossuvel formar um triângulo. Caso seja possuvel formar um triângulo, o programa deve imprimir umamensagem informando o tpo de triângulo formado: equilátero, isósceles ou escaleno. Caso contrário, oprograma deve imprimir uma mensagem informando que não é possuvel formar um triângulo.

40. Um supermercado está dando descontos no valor das compras, segundo a tabela abaixo:

Valor da compra Desconto

até R$ 50,00 0%

de R$ 50,01 a R$ 100,00 10%

acima de R$ 100,00 15%

Elabore um programa em Pascal para ler o valor da compra de 80 clientes e imprimir para cadacliente o valor a pagar com o desconto.

41. O que vai ser impresso no fnal de cada trecho do programa em Pascal abaixo:

a) A := 0; b) A := 0; B := 0; B := 0; While A < 3 do While A < 2 do B := B + 2; begin

A := A + 1; B := B + 2; writeln(A); A := A + 1;

end; writeln(B);

Instituto de Química – UNESP – Araraquara

41

Page 45: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

c) A := 0; d) A := 0; B := 0; B := 0; Repeat Repeat A := A + 1; A := A + 1; B := B + 2; B := B + 2; untl A > 2; untl A < 3; writeln(B); writeln(B);

e) B := 0; f) B := 0; For A := 1 to 3 do For A := 4 downto 1 do

B := B + 2; B := B + 2; writeln(B); writeln(B);

42. Um atleta faz fexões em série, com quantdades crescentes: na primeira série faz 1 fexão, nasegunda série faz 2 fexões, na terceira série faz 3 fexões e assim por diante. Ao fnal de algumas séries, elequer saber a quantdade total de fexões que fez. Por exemplo, se ele fez 5 séries, fez ao todo 15 fexões(1+2+3+4+5). Elabore um programa em Pascal para ler o número de séries e imprimir o total de fexões.

43. Elabore um programa em Pascal para ler um número e calcular o fatorial deste número, usandoa estrutura FOR DOWNTO DO.

44. Elabore um programa em Pascal para ler o nome, a nota da primeira prova (P1) e a nota dasegunda prova (P2) de 50 alunos. O programa deve imprimir:

a) a média (M) de cada aluno, onde M =3P1+ 5P28

;

b) a porcentagem de alunos aprovados (M 5,0);c) a maior média e o nome do(a) aluno(a) que obteve essa média.

45. O que faz o seguinte programa em Pascal ?

Program Exercicio45;var N, S : integer;begin S:= 0; writeln(´Digite um numero inteiro.´); readln(N); While N <> 0 do begin if (N>0) and (N mod 2 = 0) then S:= S + N ; writeln(´Digite outro numero inteiro, ou digite 0 para terminar.´); readln(N); end; writeln(S);

readln;end.

46. Elabore um programa em Pascal para ler o nome e o preço de um número indeterminado demercadorias, sendo o fm de dados identfcado pelo nome = FIM. O programa deve imprimir:

a) o preço médio dessas mercadorias;b) o maior preço e o nome da mercadoria de maior preço.

47. Elabore um programa em Pascal para ler o nome, o sexo e o salário de um númeroindeterminado de funcionários de uma loja, sendo o fm de dados identfcado pelo nome = FIM. Oprograma deve imprimir:

Instituto de Química – UNESP – Araraquara

42

Page 46: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

a) o salário médio dos homens e o salário médio das mulheres;b) a porcentagem de funcionários do sexo masculino;c) o nome do(a) funcionário(a) que recebeu o maior salário, e o respectvo salário.

48. Elabore um programa em Pascal para ler o nome e saldo de um número indeterminado declientes de um banco, sendo o fm de dados identfcado pelo nome = FIM. O programa deve imprimir:

a) o saldo médio dos clientes;b) a porcentagem de clientes com saldo devedor;c) o nome do cliente que possui o menor saldo e o respectvo saldo.

49. Elabore um programa em Pascal para ler 3 números (x, y, N) e imprimir os N primeiros númerosnaturais que são múltplos de x ou de y.

Exemplo: caso x=3, y=7 e N=8, o programa deve imprimir: 3 6 7 9 12 14 15 18

50. Elabore um programa em Pascal para ler um número e imprimir uma mensagem dizendo se onúmero lido é primo ou não. Pode-se supor que o número lido é maior do que 1. Obs. Um número é primose ele é divisuvel somente por 1 e por ele mesmo.

51. Elabore um programa em Pascal para imprimir os N primeiros números da Sequência deFibonacci. O número N (N 2) deve ser lido inicialmente. A Sequência de Fibonacci é defnida como tendo oprimeiro termo igual a 0, o segundo termo igual a 1 e cada termo seguinte igual a soma dos dois termosimediatamente anteriores.

Sequência de Fibonacci: 0 1 1 2 3 5 8 13 21 34 ...

52. Elabore um programa em Pascal para ler 10 números e armazená-los em uma variávelcomposta unidimensional (vetor) e determinar o maior número.

53. Elabore um programa em Pascal para ler as temperaturas máximas registradas nos últmos 30dias e imprimir:

a) a menor temperatura máxima registrada;b) a maior temperatura máxima registrada;c) a média das temperaturas máximas registradas nestes 30 dias;d) o número de dias em que a temperatura máxima foi superior à média das temperaturas

máximas registradas.

54. Elabore um programa em Pascal para ler os nomes e os pesos de 20 judocas e armazená-los emvetores denominados NOME e PESO. O programa deve imprimir:

a) o maior peso;b) os nomes dos judocas que têm o maior peso;

55. Um armazém trabalha com 250 mercadorias diferentes identfcadas pelos números inteiros de1 a 250. O dono do armazém possui 3 tabelas, uma com o nome de cada mercadoria, outra com o preço decada mercadoria, e uma outra tabela com a quantdade de cada mercadoria vendida no mês.

Elabore um programa em Pascal para ler o nome, o preço e a quantdade de mercadorias vendidase armazená-los em variáveis compostas unidimensionais (vetores) denominadas MERCADORIA, PRECO eQUANTIDADE e imprimir:

a) os nomes das mercadorias que possuem o maior preço;b) os nomes das mercadorias que não foram vendidas nenhuma unidade;c) o faturamento mensal do armazém.

56. Elabore um programa em Pascal para ler o nome e a nota de 60 alunos e armazenar os nomesdos alunos aprovados (nota 5,0) no vetor denominado APROVADO e os nomes dos alunos reprovados novetor denominado REPROVADO. No fnal o programa deve imprimir:

a) o número de alunos aprovados;

Instituto de Química – UNESP – Araraquara

43

Page 47: Julia Sawaki Tanaka - iq.unesp.br · organizada e integrada. Instituto de Química – UNESP – Araraquara 2. Introdução à Computação Um SGBD possui recursos para inclusão,

Introdução à Computação

b) a lista dos nomes dos alunos aprovados;c) o número de alunos reprovados;d) a lista dos nomes dos alunos reprovados.

57. Elabore um programa em Pascal para ler o nome e o salário de um número indeterminado defuncionários de uma empresa, sendo o fm de dados identfcado pelo nome = FIM. O programa deveimprimir:

a) o salário médio;b) a porcentagem de funcionários que recebem acima de R$ 5.000,00;c) o maior salário e os nomes dos funcionários que recebem esse salário (usar vetor).

58. Elabore um programa em Pascal para imprimir o signo do zoduaco correspondente a uma data(dia e mês) lida.

A tabela abaixo mostra o últmo dia de cada mês e o signo correspondente.

mês últmo dia signo1 20 Capricórnio2 19 Aquário3 20 Peixes4 20 Áries5 20 Touro6 20 Gêmeos7 21 Câncer8 22 Leão9 22 Virgem

10 22 Libra11 21 Escorpião12 21 Sagitário

Obs: De 22/12 a 31/12 – Capricórnio

59. Elabore um programa em Pascal para ler o número do voo e a quantdade disponuvel de vagasde 30 voos diários de uma companhia aérea e armazenar em vetores denominados VOO e VAGAS. Emseguida o programa deve ler o número do voo e o número de vagas a reservar neste voo, de um númeroindeterminado de voos, sendo o fm dos dados identfcado pelo número do voo = 0. Para cada número devoo, o programa deve atualizar o vetor VAGAS.

No fnal, o programa deve imprimir todos os números de voos e as respectvas vagas.

13. Bibliografia

ASCENCIO, A.F.G.; CAMPOS, E.A.V. ASCENCIO, A.F.G.; CAMPOS, E.A.V. Fundamentos da Programação de ComputadoresFundamentos da Programação de Computadores. 3. 3aa ed. Pearson, 2012. ed. Pearson, 2012.584 p.584 p.

AVILLANO, I.C. AVILLANO, I.C. Algoritmos e PascalAlgoritmos e Pascal. 2. 2aa ed. Ciência Moderna, 2006. 560 p.ed. Ciência Moderna, 2006. 560 p.

FARRER, H. et al. FARRER, H. et al. Algoritmos EstruturadosAlgoritmos Estruturados. 3. 3aa ed. LTC, 1999. 260 p. ed. LTC, 1999. 260 p.

FARRER, H. FARRER, H. Pascal EstruturadoPascal Estruturado. 3. 3aa ed. LTC, 1999. 300 p. ed. LTC, 1999. 300 p.

Instituto de Química – UNESP – Araraquara

44