Buscar

Apost Algoritmo 2018

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

. 
 
 
 
 
 
 
 
 
 
 
COMPUTAÇÃO BÁSICA E PROGRAMAÇÃO 
 
 
Prof. MSc. Oscar Neves Júnior 
 
 
 
Capivari de Baixo-SC 
2018
 
2 
Sumário 
Capítulo I ................................................................................................................................. 4 
1 Sistema .................................................................................................................................. 4 
1.1 Abordagem sociotécnica dos sistemas de informação. ........................................................ 5 
1.1.1 Organizações .......................................................................................................................... 5 
1.1.2 Pessoas .................................................................................................................................... 6 
1.1.3 Tecnologia .............................................................................................................................. 6 
1.2 Subsistemas .......................................................................................................................... 6 
1.3 Organização versus sistema .................................................................................................. 7 
1.4 Características de um sistema de informações? .................................................................. 7 
1.5 Fases dos Sistemas de Informação ....................................................................................... 8 
Capítulo II ............................................................................................................................. 17 
2 Algoritmo e Lógica de Programação ............................................................................... 17 
2.1 - Algoritmos Não Computacionais ..................................................................................... 17 
2.2 - Algoritmos Computacionais ............................................................................................. 19 
2.3 Ferramentas ........................................................................................................................ 19 
2.4 Tipos de Algoritmos ........................................................................................................... 20 
2.4.1 Descrição Narrativa .............................................................................................................. 20 
2.4.3 Pseudocódigo ........................................................................................................................ 20 
2.4.2 Fluxograma ........................................................................................................................... 21 
 ....................................................................................................................................................... 21 
2.4.2.1 Símbolos utilizados no Fluxograma .................................................................................. 21 
2.5 Forma Geral de um Algoritmo .......................................................................................... 22 
2.6 Exercícios de Fixação ......................................................................................................... 22 
3 Linguagens de Programação ............................................................................................ 23 
3.1 Classificação das Linguagens ............................................................................................. 23 
3.1.1 Quanto ao paradigma ............................................................................................................ 23 
3.1.2 Quanto a estrutura de tipos ................................................................................................... 23 
3.1.3 Quanto ao grau de abstração ................................................................................................. 24 
3.1.4 Quanto à geração .................................................................................................................. 24 
4 Conceito de Variável ......................................................................................................... 24 
4.1 Tipos de Variáveis .............................................................................................................. 25 
4.2 Formação de Identificadores .............................................................................................. 26 
4.3 Estrutura Sequencial ........................................................................................................... 27 
4.4 Operadores Lógicos ............................................................................................................ 31 
 
Atualizada em fevereiro de 2016 
 
3 
5 Comandos de E/S (Entrada/Saída) .................................................................................. 31 
5.1 - Construindo os Primeiros Algoritmos: Estruturas sequenciais ........................................ 32 
5.2 Exercícios ................................................................................................................................ 34 
6 - Estrutura Condicional (IF) ............................................................................................. 35 
Exercícios Propostos ............................................................................................................. 36 
7 Escolha...Caso (Case) ........................................................................................................ 37 
7.1 Exercícios Propostos .......................................................................................................... 38 
8 - Testando o Algoritmo (Teste de Mesa) .......................................................................... 39 
9 - Estrutura de Repetição ................................................................................................... 40 
9.1 Comando para. . faca (For) ................................................................................................ 41 
9.1.1 Exercícios Propostos ............................................................................................................ 42 
9.2 - Comando repita. . .Ate (Repeat) ....................................................................................... 42 
9.2.1 Exercícios Propostos ............................................................................................................ 44 
9.3 Comando Enquanto. . faca (While) ................................................................................... 45 
9.3.1 Exercícios Propostos ............................................................................................................ 45 
10 Variáveis Compostas Homogêneas (Array) .................................................................. 46 
10.1 Variáveis Indexadas Unidimensionais (Vetores) ............................................................. 46 
10.1.1 Exercícios Propostos .......................................................................................................... 47 
10.2 Variáveis Indexadas Bidimensionais (Matrizes) .............................................................. 47 
10.2.1 Exercícios Propostos .......................................................................................................... 48 
11 - Subalgoritmos ................................................................................................................ 49 
12 Biblioteca de Funções ...................................................................................................... 49 
13 Função (Function) ........................................................................................................... 51 
14 Procedimento (Sub_rotinas)Procedures ....................................................................... 52 
14.1 Exercícios Propostos ........................................................................................................ 53 
15 ARDUINO ........................................................................................................................ 53 
15 Referências Bibliográficas .............................................................................................. 56 
 
 
 
 
 
 
 
 
 
4 
Capítulo I 
1 Sistema 
A teoria geral dos sistemas foi formulada pelo biólogo alemão Ludwig Von Bertalanffy 
no início da década de 1930, mas foi publicada apenas em 1968. A partir de sua formulação, 
diversos outros autores desenvolveram o tema e a Teoria dos Sistemas é hoje uma formulação 
teórica que atende às mais diversas ciências. 
Veja como ele definiu sistema: Um sistema pode ser definido como um complexo de 
elementos em interação. 
 
Veja aqui alguns conceitos de Sistemas, quadro 1: 
Autor Definição 
O´Brien (1995) Sistema é um conjunto de partes coordenadas, que concorrem para a realização de um conjunto de objetivos. 
Foina (2007) 
Sistema é um conjunto de elementos interdependentes, ou um todo 
organizado, ou partes que interagem formando um todo unitário e 
complexo 
Rezende (2002) Sistema é um conjunto de componentes e processos que visam transformar determinadas entradas em saídas 
Nunes (2009) 
Assim, um SI pode ser definido como um conjunto de elementos, 
relacionados entre si, atuando num determinado ambiente com o fim 
de alcançar objetivos comuns e, com capacidade de autocontrole. 
Oliveira (2002) 
Sistema é um conjunto de partes interagentes e 
interdependentes que, conjuntamente, formam um todo 
unitário com determinado objetivo e efetuam determinada função”. 
A formação de um sistema se dá pela união de diversas partes 
interdependentes que conjuntamente visam atingir um objetivo 
comum. 
Batista (2004) 
Disposição das partes de um todo que, de maneira coordenada, 
formam a estrutura organizada, com a finalidade de executar uma 
ou mais atividades ou, ainda, um conjunto de eventos que 
repetem ciclicamente na realização de tarefas predefinidas. 
Quadro 1: Principais conceitos de SI 
Fonte: Elaborado pelo autor 
 
Esses conceitos são bastante abrangentes e podem ser aplicados a inúmeras situações do 
mundo real. São úteis e genéricos o bastante para definir sistemas orgânicos, sociais, 
econômicos, políticos, matemáticos, físicos e outros. 
Assim, pode-se chamar tanto um organismo vivo, como uma fábrica, um modelo 
matemático ou um programa de computador de sistema, afinal todos são compostos por 
diferentes elementos que interagem entre si e geram algum tipo de resultado. 
Esses elementos e a relação que se estabelece entre eles que determina como o sistema 
funciona. 
Observe ... 
 ... o quanto à palavra sistema é utilizada em nosso linguajar cotidiano. Preste atenção em 
jornais, revistas, documentos e também na linguagem falada como essa palavra é de uso 
freqüente. Veja algumas aplicações: sistema solar, sistema viário, sistema de busca na internet, 
eco-sistema, sistema de vigilância, sistema social, sistema imunológico, sistema econômico, 
etc. 
 
 
Atualizada em fevereiro de 2016 
 
5 
 
Exemplo: Processo de assar um bolo. 
As entradas são: farinha, ovos, açúcar e manteiga. Tempo e energia também podem ser 
considerados como entradas do sistema. 
O mecanismo de processamento consiste em combinar os ingredientes em uma vasilha de 
modo a se obter a mistura correta para que se possa assá-la na temperatura adequada e no tempo 
certo. A saída será um bolo acabado. 
A realimentação é a constatação de um bolo doce demais, muito mole, sem gosto ou cru. 
Isso provocará uma nova entrada no sistema de modo a alterar sua receita inicial. 
1.1 Abordagem sociotécnica dos sistemas de informação. 
No passado, quando os computadores começaram a ser utilizados para dar suporte a 
sistemas de informação, a abordagem de sistemas era essencialmente técnica. Era essa uma 
época em que o indivíduo deveria adaptar-se ao que a máquina era capaz de fazer. A principal 
preocupação dos profissionais de tecnologia estava em como programar computadores de modo 
a levá-los a processar dados e informações. Ao usuário restava a oportunidade de poder usar o 
que o computador era capaz de oferecer. 
Hoje, essa perspectiva, apesar de importante, é insuficiente para que se possa garantir que 
o sistema seja bem-sucedido. Um sistema de informações é um produto de três componentes: 
tecnologia, organizações e pessoas. Essa visão mais abrangente dos sistemas de informação é 
conhecida como abordagem sociotécnica, figura 4. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 4: Componentes de sistemas de informações 
Fonte: Elaborado pelo autor 
1.1.1 Organizações 
As organizações podem ser vistas como uma grande coleção de processos operacionais e 
administrativos. Os processos operacionais são aqueles que criam, produzem e entregam os 
bens e serviços que são consumidos pelo mercado, enquanto os processos administrativos são 
responsáveis pelo planejamento e controle da condução dos negócios. 
Esses processos seguem uma série de procedimentos que podem estar formalizados e 
escritos, ou compor práticas de trabalho informais. Muitos desses procedimentos 
organizacionais são incorporados aos sistemas de informação, como por exemplo, pagar um 
fornecedor ou corrigir uma fatura errada. Pense em uma organização governamental, em uma 
pequena indústria ou uma grande rede de lojas, e você visualizará sistemas de informações 
muito diferentes entre si. 
 
6 
1.1.2 Pessoas 
As pessoas são os usuários efetivos, que usam as informações de um sistema para 
executar seu trabalho. São as pessoas que possibilitam as entradas no sistema, utilizam suas 
saídas, enfim, tornam o sistema produtivo. Nesse contexto, esses indivíduos devem ser 
preparados para realizar suas tarefas e usar eficientemente os sistemas de informação. 
A atitude das pessoas perante as organizações podem afetar profundamente o seu 
desempenho no uso dos sistemas de informação. Indivíduos desmotivados, sem capacitação 
ou ainda inseridos em um ambiente em que não têm clareza sobre o que se espera de seu 
trabalho provavelmente não serão usuários produtivos de um sistema de informações. 
Condições adequadas, conforto, um ambiente saudável de trabalho, representam forte suporte 
para a moral, a produtividade e a receptividade dos indivíduos aos sistemas de informação. 
Deve-se portanto, ter a preocupação de construir sistemas adequados às necessidades daqueles 
que os utilizam, e não o contrário. 
1.1.3 Tecnologia 
A tecnologia é o meio pelo qual os sistemas de informação podem ser implementados. 
Deve ser vista como ferramenta e não ter um fim em si mesma. A tecnologia envolve o 
computador propriamente dito e demais equipamentos (hardware), os programas de 
computadores (software), as tecnologias de armazenamento para organizar e armazenar os 
dados (bancos de dados) e os recursos de telecomunicações que interconectam os 
computadores em rede. 
Para refletir 
Observe este depoimento... 
”Eu não quero usar um computador. Eu não quero fazer processamento de texto. O que 
eu quero é escrever uma carta, olhar a previsão do tempo, pagar uma conta ou jogar um game”. 
(Donald Norman, no livro The invisible computer). O que essa frase revela? Qual sua relação 
com a abordagem sociotécnica? 
Para finalizar esta seção lembramos que o estudo de sistemas de informação deve 
sempre contemplar as três diferentes perspectivas sugeridas pela abordagem sociotécnica: 
organizações, pessoas e tecnologias. Dessa forma haverá melhores condições para garantir o 
sucesso dos sistemas de informaçãonas organizações. 
1.2 Subsistemas 
Sim, um sistema pode ser dividido em subsistemas. Cada subsistema possui seus 
elementos, e pode ser decomposto até o nível desejado de detalhamento. Um sistema pode 
compor-se, sucessivamente, de subsistemas que se relacionam entre si, compondo um sistema 
maior. 
No exemplo do bolo, podemos considerar como um subsistema a etapa inicial de mistura 
dos ingredientes antes mesmo de assá-los, nesse caso a saída desse subsistema é a massa ainda 
crua. A etapa seguinte pode ser considerada outro subsistema, que consiste exclusivamente em 
assar o bolo, tendo como entrada a massa crua. 
Essa visão de sistemas e subsistemas contribui para que sistemas grandes possam ser 
melhor compreendidos quando seus subsistemas forem estudados separadamente. Por 
exemplo, para entender o funcionamento do corpo humano (um sistema orgânico) pode ser 
primeiro conveniente compreender profundamente o funcionamento da célula (um 
subsistema) e depois compreender sua relação com as outras partes do sistema (órgãos e 
estruturas), quadro 2. 
 
Atualizada em fevereiro de 2016 
 
7 
 
 
 
 
 
 
 
 
 
Quadro 2: Composição dos Sistemas de Informação 
Fonte: Elaborado pelo autor 
 
É importante frisar que por mais que possamos fragmentar sistemas em subsistemas, não 
se deve perder a visão do sistema como um todo. Um sistema não é a soma de partes, mas sim o 
resultado da interação entre elas. 
Os profissionais que lidam com sistemas de informações, sejam eles usuários ou 
projetistas de sistemas, com freqüência precisam definir sistemas e seus subsistemas de modo a 
transformar problemas complexos em problemas de menor complexidade, mais fáceis de serem 
solucionados. 
Assim já dizia o general romano Júlio César: dividir para conquistar! 
1.3 Organização versus sistema 
Uma organização é uma estrutura social formal e estável, que emprega recursos do 
ambiente e os processa para produzir saídas. Toda organização tem como entradas: capital, 
trabalho e insumos para a transformação (processamento) em produtos ou serviços (saídas), que 
serão consumidos por agentes externos encontrados no ambiente em que essa se insere. 
Observe que essa definição de organização a caracteriza como um sistema. Essa é, 
portanto, uma visão sistêmica de organização. Por conseqüência, podemos considerar um 
departamento como um subsistema. 
Todo sistema deve ter um objetivo. Os subsistemas, por sua vez, têm também objetivos 
que contribuem para o objetivo maior do sistema em que estão inseridos. Veja o quadro 3 com 
exemplos de sistemas organizacionais. 
 
SISTEMA OBJETIVO ENTRADA PROCES. SAÍDA 
Fábrica de bicicleta 
Fabricar e comercializar 
bicicletas de melhor 
qualidade. 
Armação. 
Componentes. 
Trabalho. 
Suprimentos. 
Solda. 
Pintura. 
Montagem. 
Bicicletas 
acabadas. 
Universidade 
Aquisição e 
desenvolvimento de 
conhecimento. 
Estudantes. 
Professores. 
Administradores 
Livros. 
Equipamentos. 
Ensino. 
Pesquisa. 
Serviços. 
Estudantes 
cultos. 
Pesquisa 
significativa. 
Serviços à 
comunidade. 
Quadro 3: Exemplos de Sistemas Organizacionais 
Fonte: Elaborado pelo autor 
1.4 Características de um sistema de informações? 
Enfim chegamos à definição dos sistemas de informação (SI). Leia atentamente as duas 
definições a seguir: 
 
8 
Baseado nos diversos conceitos apresentados no quadro 1 sobre Sistemas, podemos afirmar 
que Sistema de Informação é um conjunto de componentes inter-relacionados, desenvolvidos 
para coletar, processar, armazenar e distribuir informação para facilitar a coordenação, o 
controle, a análise, a visualização e o processo decisório, ou ainda, é uma combinação 
estruturada de informação, recursos humanos, tecnologias de informação e práticas de 
trabalho, organizado de forma a permitir o melhor atendimento dos objetivos da organização. 
Observe que ambas as definições estão de acordo com a definição inicial de sistema, agora 
expressa de modo mais específico, pois descrevem um pouco mais o que esse sistema faz 
(manipula a informação), para que ele serve (tomada de decisão) e a quem ele pode servir (às 
organizações ou aos indivíduos). Elas introduzem também outros elementos como as práticas 
de trabalho, as pessoas e a tecnologia que as organizações fazem uso. 
 
Os sistemas de informação podem ser manuais ou computadorizados. 
Muitos sistemas de informação começam como sistemas manuais e se transformam em 
computadorizados que estão configurados para coletar, manipular, armazenar e processar 
dados. 
 Sistemas de informação baseados em computadores, são compostos: 
Hardware: consiste no equipamento, o computador usado para executar as atividades de 
entrada, processamento e saída. 
Software: consiste nos programas e nas instruções dadas ao computador. 
Banco de Dados: é uma coleção organizada de fatos e informações. 
Telecomunicações: permitem às empresas ligar os sistemas de computador em verdadeiras 
redes de trabalho. 
Pessoas: consiste no elemento mais importante na maior parte dos sistemas de informação. 
Incluem todas as pessoas que gerenciam, executam, programam e mantêm o sistema de 
computador. 
Procedimentos: incluem as estratégias políticas, métodos e regras usadas pelo homem para 
gerenciar o computador. Ex: descrevem quando cada programa deve ser executado, quem tem 
acesso a certos fatos em um BD, etc. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2: SI baseados em arquiteturas de Computadores 
Fonte: Elaborado pelo autor 
1.5 Fases dos Sistemas de Informação 
Quanto às atividades de um sistema são definidas (entrada, processamento, saída e 
realimentação) podemos assim associá-las ao sistema de informações, figura 3. 
 
Atualizada em fevereiro de 2016 
 
9 
 
Entrada – em sistemas de informação a entrada é a atividade de captar e juntar dados 
primários. Ao se produzir cheques de pagamento por um sistema informatizado, por exemplo, 
as horas trabalhadas de cada empregado devem ser informadas antes que o cheque seja 
efetivamente calculado e emitido. Independentemente do sistema envolvido, o tipo de entrada é 
determinado pela saída desejada do sistema; 
 
Processamento – envolve a conversão ou transformação dos dados nas saídas úteis e desejadas 
pelo usuário. Um exemplo tradicional é o cálculo de folha de pagamento. Nele as horas 
trabalhadas de cada empregado junto com o valor da hora de trabalho devem ser multiplicadas e 
calculadas o pagamento líquido, as horas-extras e os descontos, segundo as regras; 
 
Saída – envolve a etapa na qual a informação propriamente dita é emitida. É a etapa que 
realmente interessa ao usuário do sistema. Se uma saída gerada por um sistema não for útil para 
algum propósito, então se deve fazer uma crítica ao sistema para avaliar sua real necessidade. 
Por mais simples que isso possa parecer, há muitos sistemas que geram saídas desnecessárias; 
 
Realimentação (feedback) – a realimentação é uma saída usada para fazer ajustes ou 
modificações nas atividades de entrada ou no processamento. Erros de digitação, por exemplo, 
podem fazer com que dados de entrada tenham que ser corrigidos antes de seu processamento. 
A realimentação também ocorre quando o sistema gera saídas que demandam uma tomada de 
decisão que provocará uma nova entrada no sistema. Um sistema que indique que os níveis de 
estoque de uma empresa estão baixos poderá provocar uma decisão de aquisição, que por sua 
vez gerará a atualização dos produtos em estoque, ou seja, uma nova entrada no sistema. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 3: Fases do Sistema de Informação 
Fonte: Adaptado do modelo de O´Brien, 2007. 
 
 
 
 
10
2. Classificação dos Sistemas de Informação 
2.1 Sistema Aberto 
A interação da empresa com a sociedade e o ambiente onde ela atua caracterizaessencialmente o chamado sistema aberto. 
BIO (1985), propõe que os sistemas abertos envolvem a idéia que 
determinados inputs são traduzidos no sistema e, processados, geram certos outputs. Com 
efeito, a empresa vale-se de recursos materiais, humanos e tecnológicos, de cujo 
processamento resultam bens ou serviços a serem fornecidos ao mercado. 
A empresa busca recursos no ambiente, processa-os com ajuda dos recursos internos e 
devolve ao ambiente na forma de bens ou serviços. A relação de troca é natural no 
desenvolvimento de qualquer atividade, assim como a empresa busca no 
fornecedor a matéria-prima, precisa estar preparada internamente com recursos humanos e 
tecnológicos, para transformar essa matéria-prima e devolver à sociedade em forma de 
produto acabado. 
 
2.2 Sistema Fechado 
O sistema fechado independe do meio externo para o desenvolvimento das suas 
funções. CORNACHIONE (1998), afirma que os sistemas fechados são entendidos como os 
que não mantém relação de interdependência com o ambiente externo. 
Padoveze (2000), cita como exemplo de sistema fechado o relógio, onde o seu 
mecanismo trabalha em conjunto sem precisar do meio externo para o seu funcionamento. 
A interação ocorre entre as partes que compõem o sistema, não se tornam menos 
importantes, apenas não interagem com o meio externo. 
 
3. Aplicações dos SI dentro dos Níveis Organizacionais 
 
De acordo com Bateman e Snell (1998), as organizações podem ser divididas em três níveis: 
estratégico, tático e operacional, de acordo com o tipo de trabalho que é desenvolvido por 
cada nível (figura 4). 
 
• Sistemas Nível-Operacional - suporte aos gerentes organizacionais no desenvolvimento 
de atividades elementares e transacionais na organização TPS. 
 
• Sistemas Nível-tático - suporte ao monitoramento, controle, tomada de decisões e 
atividades administrativas de gerentes middle DSS (Sistemas de Suporte a Decisão - 
Decision Support Systems) MIS (Sistemas de Informações Gerenciais - Management 
Information Systems) 
 
• Sistemas Nível-Estratégico - auxiliam gerentes sêniores a manipular e situar questões 
estratégicas e tendências de longo-prazo, ambas na organização e no ambiente externo. 
„ ESS (Sistemas de Suporte Executivo - Executive Support Systems) 
 
• Sistemas Nível-Conhecimento - suporte ao negócios para integrar novos conhecimentos e 
auxiliar a organização controlar o fluxo de papéis. 
„ KWA (Sistemas de Conhecimento do Trabalho - Knowledge Work Systems) 
„ OAS (Sistemas de Automação de Escritório - Office Automation Systems) 
„ Data Warehouse (organizar dados corporativos) 
„ Data Mining - Mineração de dados 
„ Workflow é definido como uma coleção de tarefas organizadas 
 
Atualizada em fevereiro de 2016 
 
11
 
 
 
 
 
 
 
 
Figura 4: Níveis organizacionais 
Fonte: Bateman e Snell (1998) 
 
4 Principais Tipos de Sistemas de Informação 
 
4.1 Sistemas de Informações Gerenciais (SIG): Busca planejar sistemas de informações 
gerenciais integrando uma estrutura de sistemas que proporcione o maior benefício possível à 
empresa e que a ajude a operar de maneira eficaz. Para isso, é necessário o perfeito 
entendimento do negócio da empresa, dos seus objetivos, do seu estilo administrativo e do 
ambiente empresarial. O SIG deve focar prioritariamente as áreas e os fatores críticos para o 
sucesso da empresa. 
Ex: relatório de custos totais da folha de pagamento 
 
Um SIG inteligente tem alguns objetivos, tais 
como: 
 
• Evitar supressas para a empresa 
• Identificar oportunidades e ameaças 
• Consolidar vantagens competitivas 
• Facilitar o planejamento de curto, médio e 
longo prazo. 
 
 
 
 
 
4.2 Sistemas de Apoio à Decisão SAD: Tem como objetivo dar apoio e assistência em todos os 
aspectos da tomada de decisões sobre um problema específico, sugerindo alternativas e dando 
assistência à decisão final. Um SAD se diferencia de outros sistemas existentes nas 
organizações basicamente por: 
 
12
- Manipular grandes volumes de dados; 
- Obter dados de fontes diferentes (internas e externas); 
- Flexibilidade de relatórios gerenciais; 
- Execução de rotinas de otimização e heurística; 
- Execução de análises de simulação; 
- Suporte para diversos níveis na tomada de decisão; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Com a utilização de um SAD as organizações têm melhores condições de, por exemplo: 
- Decidir sobre fazer ou não uma promoção, de qual produto e quando; 
- Projetar o risco ou o sucesso do investimento em determinado empreendimento ou do 
lançamento de um produto; 
- Decidir se deve contratar ou não novos funcionários no próximo mês; 
 
 
 
 
 
 
 
 
 
 
Como exemplo temos, quando o software auxilia a determinar a melhor localização para 
construir uma nova instalação industrial. 
 
4.3 Sistemas Especialistas e Inteligência Artificial SE: Ser capaz de fazer sugestões e 
checar as conclusões, tal como um especialista no assunto. Uma de suas vantagens é a 
capacidade explicativa das conclusões às quais chega. 
Ex: Previsões de aplicações no mercado financeiro. 
Com este sistema os 
gestores têm condições de 
tomar decisões não apenas 
 
Atualizada em fevereiro de 2016 
 
13
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Para Fischler e Firschein sugerem três requisitos para que um Sistema Computacional seja 
considerado inteligente, quais sejam: 
i) O sistema deve ser capaz de resolver uma ampla gama de problemas, incluindo 
formulações para as quais não foi projetado. 
ii) O sistema deve ser capaz de explicitar informações implícitas, ou seja, de uma 
informação qualquer ele deve ser capaz de derivar todas as suas representações 
equivalentes. 
iii) O sistema deve ter uma estrutura de controle que determine que transformações aplicar, 
quando obteve uma informação ou quando um esforço adicional será inútil. 
 
4.4 Planejamento de recursos empresariais (ERP): O sistema de planejamento de recursos 
empresariais (ERP – enterprise resource planning) é uma aplicação transacional, que integra e 
automatiza muitos dos processos operacionais realizados pelas funções de produção, logística, 
distribuição, contabilidade, finanças e de recursos humanos de uma empresa. 
 
O software ERP consiste normalmente de vários módulos que apóiam as atividades da empresa 
envolvidas nesses processos vitais internos, como, por exemplo, expedição, estoques, 
faturamento, planejamento das necessidades de matérias-prima e recursos humanos, e registros 
contábeis. 
 
Alguns dos benefícios esperados pela utilização de sistemas ERP são: integração das operações 
internas da empresa, ganhos de eficiência, aumento de controle sobre os processos da empresa e 
acesso a informações de qualidade sobre a operação dos negócios, no momento necessário para 
a tomada de decisões. 
 
A implementação dos sistemas ERP nas empresas não é uma tarefa simples, pois exige um 
processo de mudança cultural. A integração das atividades operacionais em tempo real impõe 
uma visão de processos àquelas empresas que os implementam, obrigando-as a compreender e 
transpor suas barreiras. 
 
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4.5 Gerenciamento do relacionamento com o cliente (CRM) - O sistema de 
gerenciamento do relacionamento com o cliente (CRM – customer relationship management) 
pode ser descrito como uma aplicação que integra e automatiza processos de atendimento ao 
cliente em vendas, marketing direto e satisfação, contabilidade e gerenciamento de pedidos, e 
atendimento e suporte ao consumidor no pós-venda. 
Algumas das vantagens do uso desse tipo de sistema, para os negócios, incluem a 
identificação dos clientesmais lucrativos, personalização em tempo real de produtos e 
serviços, e acompanhamento dos contatos do cliente com a empresa, independentemente do 
meio utilizado. 
CRM é uma combinação de processos de negócio e tecnologias. Isso quer dizer que, embora 
uma ferramenta de TI possa ser bastante útil para a melhoria do contato da empresa com seu 
cliente, ou cliente em potencial, a simples utilização de uma tecnologia desse tipo não 
significa, por si só, agregação de mais valor no relacionamento com o cliente, se os produtos 
e serviços oferecidos pela empresa não o 
estiverem satisfazendo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Para um melhor desempenho o CRM precisa de um sistema que automatize seus processos, 
controlando e compartilhando informações entre usuários de forma mais produtiva e efetiva. 
 
A figura mostra que funções tais 
como Recursos Humanos, 
Gerenciamento da Cadeia de 
Suprimento, Relacionamento com 
Clientes e Fornecedores, Gestão, 
Finanças, Contabilidade, entre 
outros... até tempos atrás eram 
autónomas, geralmente alojadas 
O CRM une todas as 
informações sobre 
clientes para serem 
usadas por 3 áreas da 
 
Atualizada em fevereiro de 2016 
 
15
4.6 Gerenciamento da cadeia de suprimentos (SCM) - Os sistemas de gerenciamento da 
cadeia de suprimentos (SCM – supply chain management) reestruturam e agilizam os processos 
tradicionais da cadeia de suprimentos. Eles são voltados ao planejamento da atividade 
produtiva e da cadeia de suprimento em sua totalidade, englobando aspectos como previsão e 
gerenciamento de demanda e de alocação de capacidade produtiva. 
 
 
Os benefícios esperados a partir da 
implementação deste tipo de sistema são 
redução dos custos, aumento da 
eficiência e melhoria dos prazos no ciclo 
da cadeia de suprimentos. O objetivo é 
permitir um maior controle sobre as 
atividades de suprimento, produção e 
distribuição, de forma a alcançar 
agilidade no atendimento das demandas 
dos clientes de uma empresa, e das 
necessidades de seus parceiros de 
negócios. 
 
 
 
 
4.7 BI – Business intelligence – A inteligência empresarial, o BI trata-se de um conjunto de 
ferramentas e aplicativos que transforma grandes quantidades de dados em informações de 
qualidade para a tomada de decisões. 
As ferramentas de BI permitem cruzar dados, visualizar informações em vários cenários e 
analisar os principais indicadores de desempenho empresarial. As quatro principais ferramentas 
do conjunto de inteligência empresarial, segundo Batista (2004), são o data warehouse, as 
ferramentas OLAP, o data mining e as ferramentas de modelagem analítica e de previsões. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
É fundamental saber o 
significado de BI 
Business (negócio) e 
 
16
4.8 Os sistemas de informação geográficas (geographic information systems – GIS) - 
utilizam bancos de dados georreferenciados, desenham e exibem mapas e outros 
demonstrativos gráficos, que apóiam decisões concernentes à distribuição geográfica de 
pessoas e outros recursos. Esses sistemas podem, por exemplo, ajudar na seleção de novos 
pontos de lojas de varejo, otimizar roteiros de distribuição, ou analisar fatores demográficos 
de um determinado público-alvo. 
 
 
Sistema GIS É um sistema computacional 
composto de softwares e hardwares, que 
permite a integração entre bancos de dados 
alfanuméricos (tabelas) e gráfico (mapas), para 
o processamento, análise e saída de dados 
georreferenciados. Os produtos criados são 
arquivos digitais contendo Mapas, Gráficos, 
Tabelas e Relatórios convencionais. 
 
 
 
 
 
 
 
5 Avaliação dos Sistemas de informações 
 
Se as organizações despendem preciosos esforços e recursos para a implantação de 
sistemas de informação, certamente elas esperam obter algum retorno. Os sistemas 
bem-sucedidos devem proporcionar ganhos que, no mínimo, devem equivaler aos esforços 
despendidos. Deve-se então ter a preocupação com o desempenho dos sistemas de 
informação. 
Veja a seguir uma forma de realizar essa avaliação por meio de alguns indicadores de 
sucesso: 
 rentabilidade – existe quando os benefícios do sistema ultrapassam seus custos; 
 desempenho – ocorre quando o sistema melhora a qualidade das decisões de seu 
usuário; 
 áreas de aplicação – um sistema é bem-sucedido quando é aplicado aos problemas 
de maior importância na organização. Isso contribui significativamente para justificar 
seu custo; 
 satisfação dos usuários – como o sistema é um instrumento de auxílio ao usuário, 
sua satisfação indica que as funções esperadas pelo usuário são atendidas. Mesmo 
sendo uma avaliação subjetiva, essa pode ser considerada válida se estiver associada a 
outros indicadores de sucesso; 
 utilização generalizada – o fato de o sistema ser amplamente utilizado é um 
indicador de sucesso na medida em que possui a aprovação de várias pessoas. 
 
Essas características são, em sua maioria, de difícil mensuração. Entretanto, se elas puderem 
ser observadas, objetiva ou intuitivamente, serão indicadoras de um sistema bem-sucedido. 
 
Atualizada em fevereiro de 2016 
 
17
Capítulo II 
2 Algoritmo e Lógica de Programação 
O uso corriqueiro da palavra lógica está normalmente relacionada à coerência e à 
racionalidade. Frequentemente se associa lógica apenas à matemática, não se percebendo sua 
aplicabilidade e sua relação com as demais ciências. 
Podemos relacionar a lógica com a “correção do pensamento”, pois uma de suas 
preocupações é determinar quais operações são válidas e quais não são, fazendo análises das 
formas e leis do pensamento. Como filosofia, ela procura saber por que pensamos assim não de 
outro jeito. Com arte ou técnica, ela nos ensina a usar corretamente as leis do pensamento. 
Poderíamos dizer também que a lógica é a “arte de pensar”, que é a “ciência das formas do 
pensamento”. Visto que a forma mais complexa do pensamento é o raciocínio (FORBELONI, 
2005). 
Exemplo: Todo mamífero é um animal. 
Todo cavalo é um mamífero. 
Portanto, todo cavalo é um animal. 
 
Quando queremos criar ou desenvolver um software para realizar determinado tipo de 
processamento de dados, devemos escrever um programa ou vários programas interligados. No 
entanto, para que o computador compreenda e execute esse programa, devemos escrevê-lo 
usando uma linguagem que tanto o computador quanto o criador de software entendam. Essa 
linguagem é chamada de linguagem de programação (ASCENCIO & CAMPOS, 2008). 
2.1 - Algoritmos Não Computacionais 
Um algoritmo é uma seqüência de instruções finita e ordenada de forma lógica para a 
resolução de uma determinada tarefa ou problema. São exemplos de algoritmos instruções de 
montagem, receitas, manuais de uso, etc. Um algoritmo não é a solução do problema, pois, se 
assim fosse, cada problema teria um único algoritmo; um algoritmo é um caminho para a 
solução de um problema. Em geral, existem muitos (senão infinitos) caminhos que levam a 
uma solução satisfatória. 
Um algoritmo não computacional é um algoritmo cuja seqüência de passos, a 
princípio, não pode ser executada por um computador. Abaixo é apresentado um algoritmo não 
computacional cujo objetivo é usar um telefone público. Provavelmente você "executou" o 
algoritmo deste exemplo diversas vezes. O termo algoritmo está muito ligado à Ciência da 
Computação, mas, na realidade, ele pode ser aplicado a qualquer problema cuja solução 
possa ser decomposta em um grupo de instruções. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
Um outro exemplo típico de algoritmo é uma receita culinária, como no exemplo 
abaixo. 
Algoritmo para fritar um ovo 
Colocar um ovo na frigideira 
 Esperar o ovo ficar frito 
Remover o ovo da frigideira 
 
O algoritmo acima, no entanto, poderia ser mais detalhado e completo. Uma versão 
mais aceitávelseria: 
 
Exemplo 
Algoritmo para fritar um ovo 
Retirar um ovo da geladeira 
Colocar a frigideira no fogo 
Colocar óleo 
Esperar até o óleo ficar quente 
Quebrar o ovo separando a casca 
Colocar o conteúdo do ovo na frigideira 
Esperar um minuto 
Retirar o ovo da frigideira 
Apagar o fogo 
 
Essa segunda versão é mais completa e detalhada que a anterior. Nela, várias ações 
que estavam subentendidas foram explicitadas. No entanto, para que o algoritmo possa ser 
útil, é necessário ainda que quem faz uso dele conheça os termos utilizados nas instruções. O 
algoritmo do exemplo só será útil para alguém que seja fluente na língua portuguesa e 
conheça o significado dos verbos Retirar, Colocar, Esperar assim como dos substantivos 
utilizados no contexto de uma receita culinária. Em outras palavras, é preciso que a 
linguagem utilizada no algoritmo seja conhecida tanto por quem o escreveu quanto por 
quem vai executá-lo. 
Para que o algoritmo possa ser executado por uma máquina é importante que as 
instruções sejam corretas e sem ambigüidades. Portanto, a forma especial de linguagem que 
utilizaremos é bem mais restrita que o Português e com significados bem definidos para 
todos os termos utilizados nas instruções. Essa linguagem é conhecida como Português 
Estruturado (às vezes também chamada de Portugol). O português estruturado é, na 
verdade, uma simplificação extrema do Português, limitada a umas poucas palavras e 
estruturas que têm um significado muito bem definido. Ao conjunto de palavras e regras que 
definem o formato das sentenças válidas chamamos sintaxe da linguagem. Durante este 
texto, a sintaxe do Português Estruturado será apresentada progressivamente e a 
utilizaremos em muitos exercícios de resolução de problemas. 
Aprender as palavras e regras que fazem parte dessa sintaxe é fundamental; no 
entanto, não é o maior objetivo deste curso. O que realmente exigirá um grande esforço por 
parte do estudante é aprender a resolver problemas utilizando a linguagem. Para isso, há 
somente um caminho: resolver muitos problemas. O processo é semelhante ao de tornar-se 
competente em um jogo qualquer: aprender as regras do jogo (a sintaxe) é só o primeiro 
passo, tornar-se um bom jogador (programador) exige tempo, muito exercício e dedicação. 
Embora o Português Estruturado seja uma linguagem bastante simplificada, ela 
possui todos os elementos básicos e uma estrutura semelhante à de uma linguagem típica 
para programação de computadores. Além disso, resolver problemas com português 
estruturado, pode ser uma tarefa tão complexa quanto a de escrever um programa em uma 
linguagem de programação qualquer. Portanto, neste curso, estaremos na verdade 
 
Atualizada em fevereiro de 2016 
 
19
procurando desenvolver as habilidades básicas que serão necessárias para adquirir-se 
competência na programação de computadores. 
2.2 - Algoritmos Computacionais 
O computador, a princípio, não executa nada. Para que ele faça uma determinada tarefa - 
calcular uma folha de pagamento, por exemplo -, é necessário que ele execute um programa. 
Um programa é um conjunto de milhares de instruções que indicam ao computador, passo a 
passo, o que ele tem que fazer. Logo, um programa nada mais é do que um algoritmo 
computacional descrito em uma linguagem de programação. Uma linguagem de programação 
contém os comandos que fazem o computador escrever algo na tela, realizar cálculos 
aritméticos, receber uma entrada de dados via teclado, e milhares de outras coisas, mas estes 
comandos precisam estar em uma ordem lógica. 
O termo processamento de dados é muitas vezes utilizado em conjunto com 
computadores, pois, em geral, é isto o que eles fazem: processar dados. Daí podem extrair os 
dois componentes básicos de um algoritmo computacional (de agora em diante, esta palavra 
sempre utilizada no contexto de algoritmos computacionais): dados e código. Dados são os 
valores (números, nomes, etc.) de que precisamos para resolver o problema, e código são os 
comandos ou instruções que usaremos para manipular e "processar" os dados. 
 
2.3 Ferramentas 
A ferramenta que auxilia a lógica de programação na resolução dos problemas são os 
algoritmos. A palavra algoritmo pode ter várias definições, entre elas: 
• Algoritmo é uma sequência de passos que visa atingir um objetivo bem definido 
(FORBELLONE, 2005). 
• Algoritmo é a descrição de uma sequência de passos que deve ser seguida para a 
realização de uma tarefa (ASCENCIO, 1999). 
• Algoritmo é uma sequência finita de instruções ou operações cuja execução, em tempo 
finito, resolve um problema computacional, qualquer que seja sua instância 
(SALVETTI, 1999). 
Analisando as definições, podemos concluir que algoritmos não são somente utilizados 
em problemas computacionais, mas podem ser aplicados a qualquer situação do dia a dia. No 
exemplo abaixo, vê-se um algoritmo para a troca de uma lâmpada. Algoritmo Trocar Lâmpada. 
 
1. Pegar uma lâmpada nova. 
2. Pegar uma escada. 
3. Posicionar a escada embaixo da lâmpada queimada. 
4. Subir na escada com a lâmpada nova na mão. 
5. Retirar a lâmpada queimada. 
6. Colocar a lâmpada nova. 
7. Descer da escada. 
8. Testar o interruptor. 
9. Guardar a escada. 
10. Jogar a lâmpada velha no lixo. 
 
20
 
 
Assim como as várias atividades podem ser realizadas de formas diferentes, também 
não existe somente um algoritmo correto. Algoritmos diferentes, desde que resolvam o 
problema proposto, estão corretos. 
Para se construir um algoritmo, alguns passos são importantes. São eles: 
• Compreender o problema a ser resolvido. 
• Definir os dados de entrada, quais destes dados serão fornecidos e quais já fazem 
parte do cenário. 
• Definir os processamentos necessários para se resolver o problema. O processamento 
transforma os dados de entrada nos dados de saída. 
• Definir os dados de saída, ou seja, quais informações precisarão ser mostradas. 
• Construir o algoritmo, utilizando uma das formas disponíveis (serão mostradas mais 
adiante). 
• Testar o algoritmo utilizando simulações. 
Vale destacar que os algoritmos devem ser genéricos para o problema proposto, não 
importando quais serão os dados de entrada fornecidos. 
2.4 Tipos de Algoritmos 
Os três tipos de algoritmos mais utilizados são: descrição narrativa, fluxograma e 
pseudocódigo. Logo abaixo estão as características de cada um. 
2.4.1 Descrição Narrativa 
Consiste em analisar o enunciado do problema e escrever, utilizando uma linguagem 
natural, os passos a serem seguidos para sua resolução. Uma vantagem deste tipo de 
algoritmo é sua facilidade, pois não há necessidade de novos conhecimentos para empregá- 
lo. Uma desvantagem é a abertura para várias interpretações que a linguagem natural 
proporciona. 
2.4.3 Pseudocódigo 
Consiste em analisar o problema e escrever, por meio de regras predefinidas, os passos a 
serem seguidos para a resolução. Uma vantagem é a facilidade de transcrição para a 
linguagem de programação, bastando conhecer as palavras reservadas da linguagem a ser 
utilizadas. Uma desvantagem é a necessidade de aprender as regras de pseudocódigo. 
Exemplo: 
 algoritmo media_final 
declare 
 inteiro: P1, P2, P3, P4; 
 real: media; 
Inicio 
 Leia(P1, P2, P3, P4); 
 Media (P1+P2+P3+P4)/4; 
 Escreva(media); 
fim 
fim_algoritmo 
 
Atualizada em fevereiro de 2016 
 
21
 
 
 
2.4.2 Fluxograma 
Consiste em analisar o enunciado do problema e escrever, utilizando símbolos gráficos 
definidos, os passos para a solução do problema. Uma vantagem é a simplicidade que os 
elementos gráficos proporcionam para o entendimento. Uma desvantagem é a necessidade de 
aprender a simbologia do fluxograma. Para conhecimento da simbologia, vide tabela 1. 
 
 
 
 
 
 
 
 
 
 
 
2.4.2.1 Símbolos utilizados no Fluxograma 
Os símbolos de identificaçãográfica representam sempre uma operação ou conjunto de 
operações similares, podendo ser identificados por um rótulo relacionado à própria ação do 
símbolo em uso, somente quando necessário. Os símbolos devem ser conectados uns com 
outros por linhas de setas que mostrem explicitamente a direção do fluxo a ser executado pelo 
programa, procurando sempre que possível manter uma hierarquia de cima para baixo e da 
direita para esquerda (figura x). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
 
 
Figura 5: Tipos de símbolos 
Fonte: Manzano (2012) 
2.5 Forma Geral de um Algoritmo 
Nessa seção vamos conhecer os primeiros elementos que compõem o Português 
Estruturado e escrever alguns algoritmos. A estrutura geral de um algoritmo é: 
Algoritmo "<nome do 
algoritmo>" var 
< declaração de 
variáveis> inicio 
< lista de 
comandos> 
fimalgoritmo 
 
onde as palavras algoritmo e fimalgoritmo fazem parte da sintaxe da linguagem e 
sempre delimitam o inicio e fim de um algoritmo; a < declaração de variáveis> é a seção ou 
parte do algoritmo onde descrevemos os tipos de dados que serão usados na lista de 
comandos. Por exemplo, poderíamos definir que fruta é um tipo de dado que pode assumir 
apenas os valores maçã, pêra, banana, abacaxi e outras frutas, sobre os quais podemos efetuar 
as operações comparar, comprar, comer e servir; inicio indica o fim das declarações e o 
início da seção de comandos; < lista de comandos > é apenas uma indicação de que entre as 
palavras inicio e fimaigoritmo podemos escrever uma lista com uma ou mais instruções ou 
comandos. É importante salientar que, quando um algoritmo é "executado", as instruções ou 
comandos de um algoritmo são sempre executados na ordem em que aparecem no mesmo. 
As palavras que fazem parte da sintaxe da linguagem são palavras reservadas, ou 
seja, não podem ser usadas para outro propósito em um algoritmo que não seja aquele 
previsto nas regras de sintaxe. A palavra algoritmo, por exemplo, é uma palavra reservada. 
Neste texto, as palavras reservadas sempre aparecerão em negrito. 
2.6 Exercícios de Fixação 
1) Três senhoras – dona Branca, dona Rosa e dona Violeta – passeavam pelo parque quando 
dona Rosa disse: 
- Não é curioso que estejamos usando vestidos de cores branca, rosa e violeta, embora 
nenhuma de nós esteja usando um vestido de cor igual ao seu próprio nome? 
- Uma simples coincidência - respondeu a senhora com o vestido violeta. 
Qual a cor do vestido de cada senhora? 
 
2) Um homem precisa atravessar um rio com um barco que possui capacidade apenas para 
carregar ele mesmo e mais uma de suas três cargas, que são: um lobo, um bode e um maço de 
alfafa. O que o homem deve fazer para conseguir atravessar o rio e sem perder suas cargas? 
Escreva um algoritmo mostrando a resposta, ou seja, indicando todas as ações necessárias 
para efetuar uma travessia segura. 
 
3) Três jesuítas e três canibais precisam atravessar um rio; para tal, dispõem de um barco com 
capacidade para duas pessoas. Por medida de segurança, não se deve permitir que em alguma 
margem a quantidade de jesuítas seja inferior à de canibais. Qual a solução para efetuar a 
 
Atualizada em fevereiro de 2016 
 
23
travessia com segurança? Elabore um algoritmo mostrando a resposta, indicando as ações que 
concretizam a solução deste problema. 
 
4) João tem três barris. No barril A, que está vazio, cabem 8 litros. No barril B, 5. No barril C, 3 
litros. Que deve ele fazer para deixar os barris A e B com 4 litros cada e o C vazio? 
3 Linguagens de Programação 
Uma linguagem de programação é um conjunto de regras sintáticas e semânticas 
usadas para definir um programa de computador (WIKIPEDIA, 2010). O conjunto de 
palavras (tokens), composto de acordo com essas regras, constituem o código fonte de um 
software. 
Linguagens de programação são importantes para que programadores e engenheiros de 
software possam escrever programas mais organizados e com maior rapidez. Elas também 
tornam os programas menos dependentes de computadores ou ambientes computacionais 
específicos. Isso porque os programas escritos podem ser traduzidos para o código de máquina 
do computador ou do ambiente específico onde será executado. 
3.1 Classificação das Linguagens 
As linguagens podem ser classificadas quanto à várias características. Logo abaixo 
ve-se alguns exemplos (Wikipedia, 2010). 
3.1.1 Quanto ao paradigma 
Diferentes linguagens de programação podem ser agrupadas segundo o paradigma que 
seguem para abordar a sua sintaxe: 
• Linguagem funcional 
• Linguagem natural 
• Programação lógica 
• Programação imperativa 
• Programação estruturada 
• Linguagem orientada a objetos 
3.1.2 Quanto a estrutura de tipos 
• Fracamente tipada, como Smalltalk, onde o tipo da variável muda 
dinamicamente conforme a situação. 
• Fortemente tipada, como Java, Ruby, onde o tipo da variável, uma vez atribuído, 
se mantém o mesmo até ser descartada da memória. 
• Dinamicamente tipada, como Perl, Python ou Ruby, onde o tipo da variável é 
definido em tempo de execução. 
• Estaticamente tipada, como Java e C, onde o tipo da variável é definido em 
tempo de compilação. 
 
24
3.1.3 Quanto ao grau de abstração 
• Linguagem de programação de baixo nível, cujos símbolos são uma 
representação direta do código de máquina que será gerado, onde cada 
comando da linguagem equivale a um "opcode" do processador, como 
Assembly. 
• Linguagem de programação de médio nível, que possui símbolos que podem 
ser convertidos diretamente para código de máquina (goto, expressões 
matemáticas, atribuição de variáveis), mas também símbolos complexos que 
são convertidos por um compilador. Exemplo: C, C++. 
• Linguagem de programação de alto nível, composta de símbolos mais 
complexos, inteligível pelo ser humano e não-executável diretamente pela 
máquina, no nível da especificação de algoritmos, como Pascal, Fortran, 
ALGOL e SQL. 
3.1.4 Quanto à geração 
• Primeira geração, as linguagens de baixo nível (Assembly) 
• Segunda geração, as primeiras linguagens (Fortran, ALGOL,...) 
• Terceira geração, as procedurais e estruturadas (Pascal, C). 
• Quarta geração, linguagens que geram programas em outras linguagens (Java, 
C++), linguagens de consulta (SQL). 
• Quinta geração, linguagens lógicas (Prolog). 
 
As etapas para o desenvolvimento de um programa são (ASCENCIO & CAMPOS, 
2008): 
1. Análise - Nesta etapa, estuda-se o enunciado do problema para definir os dados de 
entrada, o processamento e os dados de saída. 
2. Algoritmo - Ferramentas do tipo descrição narrativa, fluxograma ou português 
estruturado são utilizadas para descrever o problema com suas soluções. 
3. Codificação - O algoritmo é transformado em códigos da linguagem de programação 
escolhida para se trabalhar. 
 
Portanto, um programa é a codificação de um algoritmo em uma linguagem de 
programação (ASCENCIO, 1999). 
 
Para que se desenvolva esses programas, é necessário usar o que se chama lógica de 
programação. Lógica de programação é a técnica de encadear pensamentos para atingir 
determinado objetivo. 
4 Conceito de Variável 
Os algoritmos e programas recebem dados que precisam ser armazenados para 
posteriormente poderem ser processados. Esse armazenamento é feito na memória do 
computador, quando os algoritmos se transformam em programas. 
 
Atualizada em fevereiro de 2016 
 
25
Dessa forma, uma variável é uma posição (ou endereço) de memória do computador. 
Possui um tipo e um nome, podendo o seu conteúdo variar ao longo da execução do programa. 
Embora uma variável possa assumir vários valores ao longo da execução do algoritmo ou 
programa, ela só pode armazenar um único valor em determinado instante. 
Uma variável pode ser vista como uma caixa com um rótulo ou nome colado a ela, que 
num dado instanteguarda um determinado objeto. O conteúdo desta caixa não é algo fixo, 
permanente. Na verdade, essa caixa pode ter seu conteúdo alterado diversas vezes. Contudo, o 
conteúdo deve ser sempre do mesmo tipo. 
Na figura abaixo, a caixa (variável) rotulada com FATOR contém o valor 5. Como seu 
tipo é numérico, em um determinado instante essa caixa poderá conter qualquer valor numérico 
(inteiro ou fracionário; positivo, negativo ou zero). Entretanto, em um determinado instante, ela 
conterá um, e somente um, valor. 
 
 
 
 
 
 
 
Os tipos de dados mais comuns são: 
• Numéricos - Dividem-se em dois grupos: reais e inteiros. Os inteiros podem ser 
positivos ou negativos e não possuem parte decimal. Os reais podem ser positivos ou 
negativos e possuem parte decimal. 
 Exemplo de números inteiros: 3 -45 98 -423 34 -9 
 Exemplo de números reais: 45,2 -90,56 158,26 -324,8 
• Literais ou caracteres - São dados formados por um único caractere ou por uma cadeia 
de caracteres. Podem ser letras (maiúsculas ou minúsculas), caracteres especiais (* & 
% $ # @ ? ,) ou números (que, nesse caso, não podem ser utilizados para operações 
matemáticas). 
• Lógicos - Também são chamados de booleanos e só podem assumir um de dois valores: 
verdadeiro ou falso. 
4.1 Tipos de Variáveis 
• Os tipos de variáveis mais utilizados são: Inteiro, Real, Caractere, Cadeia de 
Caracteres e Lógicos para algoritmos. Em Pascal estes tipos ficam, respectivamente: Integer, 
Real, Char, String e Boolean. 
• A tabela 2 mostra quais os tamanhos e faixa de valores dessas e de outras 
variáveis. 
• Tabela 2: Tipos de variáveis em Algoritmo e em C++ 
Tipo Extensão Escala Numérica em bits 
char 8 0 a 255 
int 16 -32768 a 32767 
float 32 3.4E-38 a 3.4E+38 
double 64 1.7E-308 a 1.7E+308 
 
 
26
void 0 sem valor 
4.2 Formação de Identificadores 
Identificadores são nomes de variáveis, dos programas, das constantes, das rotinas, 
etc. Existem algumas regras básicas para criação desses nomes devem ser seguidas, 
principalmente quando estivermos lidando com a linguagem de programação Pascal, para 
evitar problemas. 
✓ Os caracteres que podem ser utilizados são: letras maiúsculas e minúsculas, números 
underline. 
✓ O primeiro caractere do nome não pode ser um número, deve ser uma letra. 
✓ Não podem ser utilizados espaços em branco e caracteres especiais. 
✓ Não podem ser utilizadas palavras reservadas da linguagem utilizada. 
✓ O nome do programa não poder ter o mesmo nome de qualquer variável utilizada. 
PALAVRAS RESERVADAS 
aleatorio e grauprad passo 
abs eco inicio pausa 
algoritmo enquanto int pi 
arccos entao interrompa pos 
arcsen escolha leia procedimento 
arctan escreva literal quad 
arquivo exp log radpgrau 
asc faca logico raizq 
ate falso logn rand 
caracter fimalgoritmo maiusc randi 
caso fimenquanto mensagem repita 
compr fimescolha minusc se 
copia fimfuncao nao sen 
cos fimpara numerico senao 
cotan fimprocedimento numpcarac timer 
cronometro fimrepita ou tan 
debug fimse outrocaso verdadeiro 
declare função para xou 
Obs.: Importante ressaltar que estas palavras referem-se a linguagem VisualG, no entanto, 
outras linguagens possuem suas próprias palavras reservadas. 
Pensando na resolução dos algoritmos voltados para posterior implementação em 
C++, estamos pensando em soluções de problemas seguindo o paradigma estruturado, ou 
imperativo. Para soluções deste tipo, é necessário detalhar as ações para se chegar à resposta 
necessária. 
 
Exercícios Propostos 
a) Faça um algoritmo que calcule a média aritmética de um aluno, dadas as notas de 
trabalho e de prova de um determinado bimestre. 
b) Faça um algoritmo que receba dois números e mostre as quatro operações básicas 
(soma, subtração, multiplicação e divisão) realizadas com eles. 
 
Atualizada em fevereiro de 2016 
 
27
c) Duas variáveis (A e B) possuem valores distintos (A=5; e B=10). Crie um algoritmo 
que armazene esses dois valores nessas duas variáveis e efetue a troca dos valores de 
forma que a variável A passe a possuir o valor da variável B e que a variável B passe a 
possuir o valor da variável A. Por fim, apresentar os valores trocados. 
 
A seguir vemos como calcular a área e o perímetro de um retângulo seguindo esses 
passos. 
1. Obter o valor da altura do retângulo. 
2. Obter o valor da largura do retângulo. 
3. Calcular a área. 
4. Calcular o perímetro. 
5. Mostrar os cálculos realizados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Em algoritmo: 
Algoritmo Retângulo 
Declaração de 
variáveis 
Real Alt,Lar,Area,Per 
Início 
Escrever "A altura e a largura do retângulo" 
Leia Alt,Lar 
Area <— Alt*Lar 
Per «- 2*Alt + 2*Lar 
Escrever Area,Per 
Fim 
4.3 Estrutura Sequencial 
Pelo paradigma estruturado, qualquer problema pode ser resolvido utilizando três 
estruturas: sequencial, condicional e iterativa (repetição). 
Na estrutura sequencial, os passos para a resolução do problema são executados em 
sua integridade, um por um, sequencialmente. A estrutura sequencial em algoritmo segue o 
seguinte formato: 
 
Algoritmo nome 
 
28
Declaração de Variáveis 
variá
veis Início 
Bloco de instruções 
Fim 
Em Pascal essa estrutura se transforma em: 
Program nome; Var 
variá
veis; Begin 
Bloco de instruções; 
End. 
Comando de atribuição 
O comando de atribuição é utilizado para conceder valores ou operações a variáveis, 
sendo representado pelo símbolo <- em algoritmos e por := em Pascal. Exemplos de 
atribuição: 
x ^ 4*2 x := x + 2 y ^ "aula" y := 'resposta' 
 
A tabela 3 mostra quais as palavras reservadas em Linguagem C++. 
 
 
Atualizada em fevereiro de 2016 
 
29
auto 
break 
case 
char 
const 
double 
else 
enum 
extern 
float 
int 
long 
register 
return 
short 
struct 
switch 
typedef 
union 
unsigned 
Continue 
Default 
Do 
For 
Goto 
While 
Static 
Void 
Sizef 
If 
 
 
Tabela 4: Tabela de operadores para cálculos matemáticos 
Op. em Algoritmo Op. em C++ Exemplo e comentário 
<— = x ^ y ou x := y (o conteúdo da variável y é 
atribuído para a variável x) 
+ + x + y (Soma o conteúdo de x e de y) 
- - x — y (Subtrai o conteúdo de y do conteúdo de x) 
* * x * y (Multiplica o conteúdo de x pelo conteúdo 
de y) 
/ / x / y (Obtém o quociente da divisão de x por y) 
Resto mod Resto(x,y) ou x mod y (Obtém o resto da divisão 
de x por y) 
Divide div Divide(x,y) ou x div y (Obtém o quociente 
inteiro da divisão de x por y) 
Observações: 
Os operadores div e mod só podem ser aplicados com operandos do tipo inteiro. 
O operador / sempre conduz a um resultado real. 
Com os operadores +, - e *, se pelo menos um dos operandos for real, então o resultado será real. 
Tabela 5: Tabela de operadores comparativos 
Op. em Algoritmo Op. em C++ Exemplo e comentário 
= == x = y (Compara se o conteúdo de x é igual ao conteúdo de y) 
* !> x ^ y ou x <> y (Compara se o conteúdo de x é diferente do conteúdo de y) 
< <= x < y ou x <= y (Compara se o conteúdo de x é menor ou igual ao conteúdo de y) 
> >= x > y ou x >= y (Compara se o conteúdo de x é maior ou igual ao conteúdo de y) 
< < x < y (Compara se o conteúdo de x é menor do que o conteúdo de y) 
> > x > y (Compara se o conteúdo de x é maior do que o conteúdo de y) 
 
30
Tabela 6: Funções matemáticas 
Observação: 
• Por não existir operador de potenciação, 
tem-se: AB = Exp(B * Ln(A)) Exemplo: 510 
= Exp(l0 * Ln(5)) 
As prioridades entre operadores, incluindo as funções, são: 
1. ( ) - parênteses 
2. funções 
3. * , / , div , mod 
4. + , - 
 
Quando se tem, em uma mesma expressão, vários operadores com a mesma 
prioridade, a expressão é resolvida da esquerda para a direita. 
Funções Matemáticas 
Função Exemplo Comentárioabs abx(x) Obtém o valor absoluto de x. 
log log(x) Obtém o logaritmo natural de x. 
trunc trunc(x) Obtém a parte inteira do número real armazenado em x. 
frac frac(x) Obtém a parte fracionária do número real armazenado em x. 
round round(x) Arredonda x. 
sin sin(x) Calcula o seno de x (x deve ser passado em radianos) 
cos cos(x) Calcula o co-seno de x (x deve ser passado em radianos) 
pi pi Retorna o valor de n. 
sqrt sqrt(x) Calcula a raiz quadrada de x. 
sqr sqr(x) Calcula x elevado ao quadrado. 
inc inc(x,y) Incrementa a variável x com o valor da variável y. 
dec dec(x,y) Decrementa a variável x com o valor da variável y. 
 
Atualizada em fevereiro de 2016 
 
31
4.4 Operadores Lógicos 
AND OR XOR NOT 
X1 X2 X1ANDX2 X1 X2 X1ORX2 X1 X2 X1XORX2 X1 NOTX1 
0 0 0 0 0 0 0 0 0 1 0 
0 1 0 1 0 1 0 1 1 0 1 
1 1 1 1 1 1 0 1 1 
1 0 0 0 1 1 1 1 0 
 
 
Exemplo usando operadores lógicos: 
 
 
Expressão/ Quando eu não saiu? 
Se chover e relampejar, eu não saiu Somente quando chover e relampejar ao 
mesmo tempo (apenas 1 possibilidade) 
Se chover ou relampejar, eu não saiu. Somente quando chover, somente quando 
relampejar ou quando chover e relampejar ao 
mesmo tempo (3 possibilidades). 
Se chover xou relampejar, eu não saiu. Somente quando chover, ou somente quando 
relampejar (2 possibilidades). 
 
5 Comandos de E/S (Entrada/Saída) 
Em geral, um programa que faz seu processamento e não tem como mostrar seus 
resultados é inútil (imagine, por exemplo, uma calculadora que realiza uma infinidade de 
operações matemáticas, mas não tem um display para mostrar os resultados!). Portanto, em 
algum ponto do algoritmo geralmente deve ocorrer à exibição de valores, e todas as linguagens 
de programação têm comandos para este fim. Em Português Estruturado algoritmos usamos o 
comando escreva para isto. A sintaxe desse comando tem a seguinte forma: 
Escreva (<expressão ou identificador ou constante>, <expressão ou identificador ou 
constante>, ..., <expressão ou identificador ou constante>) 
OBS.: No Visualg existem dois comandos escreva com finalidades diferentes quando 
usado consecutivamente. 
Escreval (<expressão ou identificador ou constante>) //Mostra o primeiro resultado na mesma 
linha depois em linhas diferentes. 
Escreva (<expressão ou identificador ou constante>) //Mostra o resultado na mesma linha, 
mas em colunas diferentes. 
Exemplo 
 X <- 3.5 Y <- 4 
Escreva ("O valor de X é", X) 
Escreva (" E o valor de Y é ", Y) 
Escreval (" A soma de X e Y é", X+Y) 
Escreval ("O valor de X é", X) 
Escreval ("E o valor de Y é ", Y) 
Escreval ("A soma de X e Y é", X+Y) 
 
Faria com que aparecesse na tela: 
 
32
O valor de X é 3.5 E o valor de Y é 4 A soma de X e Y é 7.5 
Nem todos os dados que um algoritmo manipula são gerados por ele. Um algoritmo 
de caixa automático, por exemplo, tem que obter do usuário o número da conta, a 
senha, a opção de serviço desejada, etc. Assim, deve haver um meio para que sejam 
digitados (ou fornecidos de outra maneira) dados para o algoritmo. 
 
Mais uma vez, todas as linguagens de programação permitem isto, e no nosso 
Português Estruturado usamos o comando leia. 
A sintaxe deste comando é: 
Leia (<identificador>) 
Exemplo 
leia 
(NumeroConta) 
leia 
(NumeroAgenci
a) leia 
(NomeCliente) 
Você pode mandar uma mensagem antes para o usuário, assim ele sabe qual é o 
conteúdo que deve ser colocado, ou seja, digitado. 
Exemplo 
Escreva ("Digite seu nome: ") 
Leia (nome) 
Escreva ("Digite sua agencia: 
") Leia (NumeroAgencia) 
Escreva ("Digite sua conta: ") 
Leia (NumeroConta) 
Deve estar claro que sempre à direita do comando leia haverá um identificador de 
variável. Assim, são incorretos os seguintes comandos: 
Exemplo "são incorretos" 
leia 
(NumeroConta+6 
0) leia (12345) 
leia 
(NomeCliente+Sobrenome) 
5.1 - Construindo os Primeiros Algoritmos: Estruturas sequenciais 
De forma genérica, a construção de um algoritmo se resume às seguintes etapas: 
a) entendimento do problema; 
b) elaboração da solução algorítmica; e 
 
Atualizada em fevereiro de 2016 
 
33
c) codificação da solução no Português Estruturado; 
Geralmente a etapa 2 é a mais complexa, pois depende da engenhosidade e 
experiência do "construtor". 
Exemplo 
Enunciado: Faça um programa que leia dois valores numéricos, e calcule e exiba a 
sua média aritmética. Etapa 1 
Simples, hein? Dos tempos de escola lembramos que a média aritmética de dois 
valores é calculada como (a+b)/2, e sendo assim a primeira etapa já está pronta. Etapa 2 
Os dados necessários serão os dois valores, que colocaremos em duas variáveis A e 
B, do tipo numérico, e uma terceira variável, que chamaremos Média, que armazenará a 
média aritmética calculada. Etapa 3 
A obtenção dos dados neste programa é simples e direta. Basta pedir ao usuário que 
digite os valores. Etapa 4 
O processamento aqui é o cálculo da média, usando o método citado acima, na 
etapa 1. O resultado do cálculo será armazenado na variável Média. Etapa 5 
 
Basta exibir o conteúdo da variável Média. Solução: 
1. Algoritmo “Cálculo de Média Aritmética” 
2. Var 
3. A, B, Media : Real 
4. Inicio 
5. Escreva (“Programa que calcula a média aritmética de dois nºs”) 
6. Escreva (“Digite o primeiro valor: “) 
7. Leia (A) 
8. Escreva (“Digite o segundo valor: “) 
9. Leia (B) 
10. Media  (A+B)/2 
11. Escreva (“A média dos valores é : “, Media) 
12. FimAlgoritmo 
Comentários 
Você deve ter notado que colocamos na tela instruções para o usuário usando o 
comando Escreva. Esta é uma boa técnica de programação, mesmo hoje em dia, com o 
ambiente do Windows, etc. Da mesma forma, ao imprimir o resultado, não mostramos 
simplesmente a média, mas explicamos ao usuário o que aquele valor significa. 
Como pode ser analisado no tópico anterior todo programa possui uma estrutura 
seqüencial determinada por um INÍCIO e FIM. Em um algoritmo, estes limites são 
definidos com as palavras Algoritmo e FimAlgoritmo. 
Exemplo: 
 
Enunciado: Algoritmo que lê o nome de um aluno, as notas de suas três provas e 
calcule e exibe a média harmônica das provas. 
 
 
34
 
Etapa 1: a média harmônica de três provas a, b e c é dada pela fórmula 
 
 
— + --- + --- 
 
a b c 
 
 
Etapa 2: os dados necessários serão o nome do aluno e os valores das provas. O 
algoritmo limita-se basicamente à própria fórmula. 
1. Algoritmo “MédiaHarmonica” 
2. Var 
3. A, B, C, Mh : Real 
4. Nome : caracter 
5. Inicio 
6. Escreva (“Entre com o nome dos alunos: ”) 
7. Leia (nome) 
8. Escreva (“Digite a primeira nota: “) 
9. Leia (A) 
10. Escreva (“Digite a segunda nota: “) 
11. Leia (A) 
12. Escreva (“Digite a terceira nota: “) 
13. Leia (C) 
14. Mh  3/(1/a+1/b+1/c) 
15. Escreva (“A média harmônica do aluno : “, Nome, “==”, Mh) 
16. FimAlgoritmo 
 
5.2 Exercícios 
1) Faça um algoritmo que lê o valor do raio e calcule a área do círculo 
correspondente. 
Etapa 1: o cálculo da área do círculo é Pi*R1. 
Etapa 2: o dado necessário é o valor do raio, que será lido (colocado) na variável 
Raio. 
Obs.: Você não precisa declarar o pi, pois já é uma função definida pelo programa Visualg. 
2) Construa um algoritmo que calcule a quantidade de latas de tinta necessárias e o 
custo para pintar tanques cilíndricos de combustível, em que são fornecidos a altura e o raio 
desse cilindro: 
Sabendo que: 
a) A lata de tinta custa R$ 50,00; 
b) Cada lata contém 5 litros; 
c) Cada litro de tinta pinta 3 metros quadrados; 
Obs.: Dados de entrada : altura(h) e raio (r). 
Dados de saída: custo(c) e quantidade (qtde). 
 
 
 
 
Atualizadaem fevereiro de 2016 
 
35
3) Construa um algoritmo para calcular as raízes de uma equação do 2ºgrau 
(Ax2+Bx+C), sendo que os valores A, B, e C são fornecidos pelo usuário (considere que a 
equação possui duas raízes reais). 
 
4) Faça um algoritmo para calcular o volume de uma esfera de raio R, em que R é um 
dado fornecido pelo usuário. O volume de uma esfera é dado por V = 4/3 piR2. 
6 - Estrutura Condicional (IF) 
 
Exemplo 
se Dinheiro >= 10 entao Ir_ao_Cinema <- VERDADEIRO Ver_TV <- 
FALSO Fimse 
se Dinheiro < 10 entao Ir_ao_Cinema <- FALSO Ver_TV <- 
VERDADEIRO Fimse 
É importante frisar que sempre à direita do comando se deverá parecer uma expressão 
lógica, e uma expressão cujo resultado é VERDADEIRO ou FALSO. Assim, os seguintes 
comandos são incorretos: 
Exemplo 
se A <- B entao // É uma atribuição e não uma expressão fimse 
se A + B entao // É uma expressão aritmética e não uma expressão fimse 
Po outro lado, estão corretos os seguintes comandos: 
Exemplo 
se (A > B) e (A > C) e (B <> C) entao 
fimse 
se nao Achou entao // Correto se Achou foi declarada como logico fimse 
Seja o algoritmo abaixo: 
Faça um Algoritmo para calcular a área de um circulo, fornecido o valor do raio, que 
deve ser positivo. 
1. Algoritmo "Calcula Area do Circulo" 
2. VAR 
3. Area, Raio: Real 
4. inicio 
5. Escreval ("Entre com raio do círculo") 
6. Leia (Raio) 
7. Se Raio > 0 entao 
8 . Area <- PI*(Raio^2) 
9. Escreva ("A área do círculo de raio ", Raio, " é ", Area) 
10. fimse 
11. Se Raio <= 0 entao 
12. Escreva ("Raio não pode ser nulo ou negativo!") 
13. fimse 
14. Em Português, a sintaxe para tal é a seguinte:fimalgoritmo 
 
36
Observe que se a condição do primeiro é verdadeira, a segunda condição é falsa e 
vice-versa, e o conjunto de instruções a ser executado se Raio <= 0 (apenas a instrução 
escreva ("Raio não pode ser nulo ou negativo!")) é uma alternativa para a condição Raio > 
0. Para expressar isso mais facilmente, a maioria das LP permitem associar um conjunto de 
instruções a ser executado se a condição do comando resultar em FALSO. 
 Utilizando o senao, o algoritmo para calcular a área de um circulo, ficaria assim: 
Exemplo 
1. Algoritmo "Calcula Area do Circulo" 
2. VAR 
3. Area, Raio: Real 
4. inicio 
5. Escreval ("Entre com raio do círculo") 
6. Leia (Raio) 
7. Se Raio > 0 entao 
8. Area <- PI*(Raio^2) 
9. Escreva ("A área do círculo de raio ", Raio, " é ", Area) 
10. senao 
11. Escreva ("Raio não pode ser nulo ou negativo!") 
12. fimse 
13. fimalgoritmo 
Exemplo 
 
Algoritmo que peça ao usuário a quantia em dinheiro que tem sobrando e sugira, caso 
ele tenha 10 ou mais reais, que vá ao cinema, e se não tiver, fique em casa vendo TV. 
1. Algoritmo "AconselhaPrograma" 
2. Var 
3. Dinheiro: REAL 
4. inicio 
5. Escreval ("*** Serviço Informatizado de Sugestões ***") 
6. Escreva ("Quanto dinheiro você tem sobrando?") 
7. Leia (Dinheiro) 
8. Se Dinheiro >= 10 entao 
9. Escreval ("Vá ao cinema hoje à noite.") 
10. Senao 
11. Escreval ("Fique em casa vendo TV.") 
12. Fimse 
13. Escreva ("Obrigado e volte sempre.") 
14. Fimalgoritmo 
Exercícios Propostos 
1. Faça um programa que leia 3 valores inteiros, determine e imprima o menor deles. 
2. Faça um Programa que peça um valor e mostre na tela se o valor é positivo ou negativo. 
3. Dados três valores distintos, fazer um programa que, após a leitura destes dados, 
coloque-os em ordem crescente. 
se <condição> entao 
<ações (uma ou mais) a serem realizadas se a condição for verdadeira> 
 
<ações (uma ou mais) a serem realizadas se a condição for falsa> 
 
Atualizada em fevereiro de 2016 
 
37
4. Faça um Programa que peça 2 números inteiros e um número real. Calcule e mostre: 
a. o produto do dobro do primeiro com metade do segundo . 
b. a soma do triplo do primeiro com o terceiro. 
c. o terceiro elevado ao cubo. 
5. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo que 
calcule seu peso ideal, utilizando as seguintes fórmulas: 
d. Para homens: (72.7*h) - 58 
e. Para mulheres: (62.1*h) - 44.7 (h = altura) 
f. Peça o peso da pessoa e informe se ela está dentro, acima ou abaixo do peso. 
 
6. Dados três valores A, B, C, verificar se eles podem ser os comprimentos dos lados de um 
triângulo, se forem, verificar se compõem um triângulo eqüilátero, isósceles ou escaleno. 
Informar se não compuserem nenhum triângulo. 
7 Escolha...Caso (Case) 
Em algumas situações é necessário termos várias soluções ligadas a respostas 
diferentes, neste caso o comando de alternativa simples ou composta não é uma solução 
prática, isto porque obrigará o programador a escrever muitas linhas de programa, além de ter 
que criar vários comandos de alternativas compostas e verificar a validade de suas condições 
para que o comando execute o caminho correto para uma determinada condição. Temos então 
o comando de alternativa de múltipla escolha. 
O funcionamento deste comando obedece a seguinte regra: 
 
Exemplo 
Um determinado clube de futebol pretende classificar seus atletas em categorias e para 
isto ele contratou um programador para criar um programa que executasse esta tarefa. Para isso 
o clube criou uma tabela que continha a faixa etária do atleta e sua categoria. A tabela está 
demonstrada abaixo: IDADE CATEGORIA De 05 a 10 Infantil De 11 a 15 Juvenil De 16 a 
20 Junior De 21 a 25 Profissiona. 
Construa um programa que solicite o nome e a idade de um atleta e imprima a sua 
categoria.Algoritmo "CLASSIFICAÇÃO DE ATLETAS 
1. var 
2. nome, categoria : caractere 
escolha < expressão-de seleção > 
caso < exp 1 > , < exp 2 >, ... , < exp n > 
< lista-de-comandos- 1 > 
caso < exp 1 > , < exp 2 >, ... , < exp n > 
< lista-de-comandos- 2 > 
outrocaso 
< lista-de-comandos- 3 > 
fimescolha 
 
38
3. idade : inteiro 
4. inicio 
5. Escreva("Nome do Atleta = ") 
6. Leia (nome) 
7. Escreva("Idade do Atleta = ") 
8. Leia (idade) 
9. Escolha idade 
10. caso 5,6,7,8,9,10 
11. categoria <- "Infantil" 
12. caso 11,12,13,14,15 
13. categoria <- "Juvenil" 
14. caso 16,17,18,19,20 
15. categoria <- "Junior" 
16. caso 21,22,23,24,25 
17. categoria <- "Profissional" 
18. outrocaso 
19. categoria <- "INVALIDO" 
20. Fimescolha 
21. Escreva ("Categoria = ",categoria) 
22. Fimalgoritmo 
 
7.1 Exercícios Propostos 
1. Faça um programa para a leitura de duas notas parciais de um aluno. O programa deve 
calcular a média alcançada por aluno e apresentar: 
 A mensagem "Aprovado", se a média alcançada for maior ou igual a sete; 
 A mensagem "Reprovado", se a média for menor do que sete; 
 A mensagem "Aprovado com Distinção", se a média for igual a dez. 
2. Faça um Programa que verifique se uma letra digitada é "F" ou "M". Conforme a letra 
escrever: F - Feminino, M - Masculino, Sexo Inválido. 
 
3. Faça um programa que lê as duas notas parciais obtidas por um aluno numa disciplina ao 
longo de um semestre, e calcule a sua média. A atribuição de conceitos obedece à tabela 
abaixo: 
 Média de Aproveitamento Conceito 
 Entre 9.0 e 10.0 A 
 Entre 7.5 e 9.0 B 
 Entre 6.0 e 7.5 C 
 Entre 4.0 e 6.0 D 
 Entre 4.0 e zero E 
O algoritmo deve mostrar na tela as notas, a média, o conceito correspondente e a mensagem 
 
4. Construa um algoritmo que, tendo como dados de entrada o preço de um produto e seu 
código de orem, mostre o preço junto de sua procedência. Caso o código não seja nenhum dos 
especificados, o produto dever ser encarado como importado. Siga a tabela de códigos a 
seguir: 
 
Código de Origem Procedência 
1 Sul 
2 Norte 
3 Leste 
4 Oeste 
5 ou 6 Nordeste 
 
Atualizada em fevereiro de 2016 
 
39
7, 8 ou 9 Sudeste 
10 até 20 Centro-Oeste 
25

Outros materiais