Buscar

III_Teorico

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 3, do total de 24 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

Você também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 6, do total de 24 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

Você também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 9, do total de 24 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

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Projeto de Sistemas 
Computacionais I
Material Teórico
Responsável pelo Conteúdo:
Prof. Me. Marcel Thomé Filho
Revisão Textual:
Prof.ª Me. Sandra Regina Fonseca Moreira
Introdução à Lógica, Abstrações e Algoritmos
• Conceitos sobre Lógica de Programação;
• Diferentes Níveis de Abstração;
• Algoritmos;
• Exemplo de Desenvolvimento com Algoritmos.
• Conheçer os conceitos sobre lógica, abstração, algoritmo e seus complementos.
OBJETIVO DE APRENDIZADO
Introdução à Lógica, Abstrações
e Algoritmos
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas: 
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos e 
sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão 
sua interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e 
de aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
Conceitos sobre Lógica de Programação
A utilização da lógica está em todas as situações da nossa vida e do cotidiano, como 
por exemplo, abrir uma porta, dirigir um veículo, entre outras coisas. A capacidade 
de pensar de maneira lógica é um dos principais diferenciais para saber como resolver 
problemas, principalmente na área da computação.
O que é e como devo utilizar a minha lógica e a lógica de programação?
Elas são a mesma coisa?Ex
pl
or
Diretamente ligado a esse conceito, compreender o conceito de algoritmo também 
é algo fundamental. Nossa mente grava situações e age instintivamente. 
Nesta unidade, você irá conhecer tais conceitos, e se o seu objetivo for de se tornar 
um bom programador, o próximo passo é aprender um pseudocódigo (Portugol, por 
exemplo), no qual a experiência de desenvolvimento lhe mostrará com detalhes como 
tratar uma das opções de entrada e saída de dados, assim como o processamento 
propriamente dito.
 Essa unidade, trará a você um pouco sobre esses conceitos fundamentais para 
quem está começando a programar.
Frequentemente nos deparamos com pessoas interessadas em TI e programação 
que não sabem exatamente por onde começar a estudar. Esta unidade demonstrará 
conceitos e exemplos para que seu interesse se torne um pouco mais aguçado.
Há algumas itens essenciais para dar início aos estudos em programação, entre 
eles, destacam-se a dedicação em praticar e aprender com os erros, além da afini-
dade com matemática e inglês.
Figura 1 – Lógica de programação
Fonte: Getty Images
8
9
O desenvolvimento e a programação estão ligados à área de Exatas, e a mate-
mática (e suas regras) estará presente em diversos momentos. Já o inglês é funda-
mental em qualquer profissão, pois para programar, você encontrará uma varieda-
de maior de cursos e materiais em inglês. Além disso, a maioria das linguagens de 
programação utiliza o inglês como base.
Inicialmente, o que gera mais preocupação é a famosa pergunta: Qual linguagem 
eu começo a aprender?
A linguagem em si não importa muito no início, pois a lógica é a mesma em todas 
as linguagens, por isso, começar aprendendo a lógica de programação é o melhor jeito.
Ela é a base de todo o conhecimento em programação, pois com a lógica você apren-
de a escrever um código para o computador interpretar corretamente, você aprende a 
se comunicar com a máquina a partir de uma linguagem, seja ela qual for.
Sites para aprender a programar.
Fluxograma e Pseudocódigo: https://goo.gl/XUs84i
O que é um fl uxograma? https://goo.gl/453MX7
Ex
pl
or
Vamos entender a lógica de programação.
Já parou para pensar sobre o que é exatamente lógica da programação?
Então vamos lá: lógica é a técnica utilizada para desenvolver instruções em 
uma sequência para atingir determinado objetivo. Ela também é a organização e 
planejamento de instruções, em um algoritmo, com o objetivo de tornar viável a 
implementação de um programa ou software.
A lógica de programação nada mais é do que a organização coerente das instru-
ções do programa para que seu objetivo seja alcançado.
Por trás dela, temos um grande desafio para o programador: montar a estrutura 
do programa para ser executado pelo computador. É preciso partir do princípio de 
que o computador não pensa da mesma forma que nós, e não é inteligente para 
saber o que precisa ser feito, nem compreender as mensagens subjetivas. 
Figura 2 – Programador, desenvolvimento de código
Fonte: Getty Images
9
roger
Realce
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
Dessa forma, organizar as informações de modo claro e na ordem adequada é 
primordial para que a ação seja executada corretamente.
A lógica de programação é necessária para pessoas que desejam trabalhar com 
desenvolvimento de sistemas e programas, permitindo definir a sequência lógica 
para o desenvolvimento. 
Então, o que é lógica? Lógica de programação é a técnica de encadear pensa-
mentos para atingir determinado objetivo. 
O uso da lógica me obriga a atender a coerência, a sequência lógica.
O que pode ser descrito como uma sequência lógica? Ah, uma sequência de instru-
ções, que devem ser seguidas para se cumprir uma determinada tarefa. 
Então, posso definir sequência lógica como passos executados até atingir um ob-
jetivo ou solução de um problema. 
Agora que já conhecemos algumas definições, vamos à outra: Instrução.
TANENBAUM em Sistemas operacionais modernos diz que na linguagem co-
mum, entende-se por instruções como “um conjunto de regras ou normas defini-
das para a realização ou emprego de algo”. 
Em informática, na área de TI ou desenvolvimento, instrução é a informação 
que indica a um computador uma ação elementar a executar. Contudo, devemos 
observar que uma ordem isolada não permite realizar o processo completo, pois, 
para isso, é necessário um conjunto de instruções colocadas em ordem sequen-
cial e lógica. 
Existe uma ordem na hora de se criar um programa?
Ex
pl
or
Vamos a um exemplo, fazer uma omelete de batatas, opa, esse é fácil. Vamos 
ao que precisaremos para colocar em prática. Uma série de instruções: descascar 
as batatas, bater os ovos, fritar as batatas etc... 
É evidente que essas instruções devem ser executadas em uma ordem adequa-
da – não se pode descascar as batatas depois de fritá-las. Dessa maneira, uma 
instrução tomada em separado não tem muito sentido. Para obtermos o resultado, 
precisamos colocar em prática o conjunto de todas as instruções, na ordem corre-
ta. Instruções são um conjunto de regras ou normas definidas para a realização ou 
emprego de algo. 
Em informática, é o que indica a um computadoruma ação elementar a executar.
10
roger
Realce
11
Diferentes Níveis de Abstração
Pronto, os conceitos iniciais já conhecemos, agora vamos a algo um pouco 
mais complexo...
A abstração, ela é um conceito fundamental em ciência da computação porque 
está diretamente ligada ao conceito de modelagem. No entanto, é difícil de explicar, e 
difícil de exemplificar. Em qualquer disciplina que lida com complexidade, abstrair de-
talhes é de fundamental importância.
Figura 3 – Abstração, abstrair, entender
Fonte: Getty Images
Para o engenheiro de software, saber lidar com diferentes níveis de abstração é, 
ao mesmo tempo, um requisito da profissão, e um desafio sempre presente.
Um questionamento presente em quase todos os processos de desenvolvimento 
é: qual é o nível correto de abstração que devo usar nesse caso? Essa é uma per-
gunta recorrente para o profissional consciente de que lidar com níveis de abstra-
ção é importante.
Vamos lá, então, o que é abstração? Pura e simplesmente é a subtração de deta-
lhes, ou seja, é a capacidade de expressar algo de maneira concisa, abstrata, sem que 
os detalhes fiquem à mostra. 
Para qualquer disciplina que lida com complexidade, abstrair detalhes é de fun-
damental importância. 
Olha o que achei na internet para tentar exemplificar este conceito tão abstrato 
que é a palavra árvore. Segundo o site a ideia é que, ao ser visualizada uma árvore, 
percebemos (abstraímos) vários detalhes e pensamos em uma ideia geral, mesmo 
sabendo que existem diferentes tipos de árvores. A partir daí a comparação da ár-
vore propriamente dita com a estrutura de dados em “árvore” que é fundamental 
11
roger
Realce
roger
Realce
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
em programação. A partir da ideia de comparação entre a árvore que está na 
natureza e árvore em programação, foi solicitado aos alunos um exemplo, e um 
voluntário falou sobre o “controle remoto”, sua justificativa foi que nós usamos o 
controle remoto sem preocupação como ele funciona realizando a comparação 
semelhante à da árvore.
A Arquitetura de Computadores é o projeto conceitual e fundamental da estrutura 
operacional de um sistema computacional. Ela é o estudo dos requisitos necessários 
para que um computador funcione e de como organizar os diversos componentes 
para obter melhores desempenhos.
Por computador, pode-se entender qualquer tipo de dispositivo capaz de receber 
uma entrada, e que retorna uma saída, após realizar uma série de operações com 
base nos valores recebidos e armazenados. Seus modelos são de vários tipos. Uma 
das formas de classificá-los é por meio das seguintes categorias:
• Desktop: computadores de baixo-custo e com desempenho razoável para um 
usuário “comum”.
• Servidor:  máquinas projetadas para ter um desempenho considerado bom 
para uma aplicação muito grande e complexa, ou então para um número 
muito grande de operações mais simples. Alguns servidores são simples com-
putadores de desktop melhorados. Entretanto, existem também aqueles que 
possuem arquiteturas muito mais sofisticadas, contando com dezenas ou até 
mesmo centenas de processadores.
• Sistemas Embarcados: possuem um uso dedicado à uma única tarefa e nor-
malmente vêm embutidos em outros aparelhos como celulares, microondas, 
elevadores ou veículos. Possuem uma Entrada/Saída muito simples.
Os princípios estudados em Arquitetura de Computadores são fundamentais 
para se projetar máquinas realmente eficientes.
Computadores são aparelhos extremamente complexos. Para compreender o 
seu funcionamento, precisamos entender várias camadas de abstração diferente.
A camada mais baixa de todas é aquela formada por transistores, tensão e 
corrente elétrica. Quem costuma lidar com esta camada são físicos e engenheiros 
eletricistas. Nesta camada, estuda-se o funcionamento de transistores e circuitos 
sempre levando em conta as propriedades físicas da corrente elétrica. 
Numa camada acima, estão as portas lógicas - todas elas compostas por transis-
tores. Neste nível, estuda-se como criar estruturas mais complexas combinando-se 
as diversas portas como AND, OR e NOT para criar estruturas como multiplexado-
res, flip-flops e somadores. Neste estágio, pode-se usar linguagens como o Verilog 
ou VHDL para programar circuitos. A seguir, vemos desenhos que representam 
várias portas lógicas:
12
roger
Realce
roger
Realce
roger
Realce
roger
Realce
roger
Realce
roger
Realce
13
Figura 4 – Portas lógicas, um dos níveis de abstração
Fonte: Wikimedia Commons
Su bindo mais um nível de abstração, começamos a lidar com estruturas mais 
complexas, como registradores e unidades lógicas aritméticas - todas compostas 
por muitos flip-flops, somadores e multiplexadores. Vemos como todas essas es-
truturas realmente geram as instruções de cada máquina e como cada instrução 
funciona. É neste nível que costuma trabalhar um Arquiteto. Este será o nível que 
será abordado ao longo desta unidade. Abaixo, mostramos a imagem de uma Uni-
dade Lógica Aritmética - estrutura usada por computadores para realizar cálculos:
Figura 5 – Circuitos lógicos, um dos níveis de abstração
Fonte: Wikimedia Commons
Um nível além, estuda-se como combinar as instruções da camada anterior para 
realizar comandos mais sofisticados como as operações da linguagem C, e como 
coordenar o funcionamento de um sistema operacional por meio de interrupções 
e outros recursos.
13
roger
Realce
roger
Realce
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
Figura 6 – Kernel (núcleo) de um Sistema Operacional
Acima desta camada, está o estudo do funcionamento de funções de bibliotecas, 
APIs e a programação de aplicativos e programas de computador simples. E, final-
mente, na camada de abstração mais superior, está o funcionamento de um programa 
de computador, do ponto de vista do usuário: como utilizar um aplicativo já criado.
Um dos conceitos mais importantes da orientação a objetos é a abstração. É um 
conceito que possui vários níveis e cada um pensa e codifica de uma maneira diferente.
Lógica, programação, abstração, conhecimento.
Ex
pl
or
A abstração é tão importante que se não for bem pensada, o código pode se tornar 
uma catástrofe, tanto na criação quanto na manutenção. Por isso, conhecer bem a 
abstração e seus níveis é essencial. São eles:
Abstração nível 1 (básico):
• Todos os objetos representados são objetos da vida real.
• Vantagens: É bem simples.
• Desvantagens: Não é muito flexível.
Entenda: Se fosse necessário inserir uma Galinha de Brinquedo, que bica e come, 
mas que não voa, seria necessário fazer várias adaptações.
Abstração nível 2 (detalhamento):
• Conceitos também são representados como objetos.
• Vantagens: Possui boa simplicidade; possui alguma flexibilidade.
• Desvantagens: Flexibilidade apenas parcial.
Entenda: Se fosse necessário inserir várias galinhas, teria que se implementar, 
normalmente, o mesmo comportamento em todas elas, tendo assim muita du-
plicação de código.
14
roger
Realce
roger
Realce
roger
Realce
15
Abstração nível 3 (aprimoramento):
• Comportamentos e conceitos também são representados como objetos.
• Vantagens: Alto nível de flexibilidade; boa reutilização de código.
• Desvantagens: Possui baixa simplicidade (arquitetura mais complexa); é difícil 
mapear, de início, os pontos extensíveis do projeto.
Entenda: Ao criar o projeto de galinhas, não se sabe se amanhã terão outros animais 
e que características eles têm em comum.
Abstração nível 4 (aprofundamento):
• Comportamentos, conceitos e atributos também são representados como ob-
jetos (Tiny Types).
• Vantagens: Alto nível de flexibilidade; alta reutilização de código.
• Desvantagens: Muitos frameworks não suportam esse formato de abstração. 
Alguns que suportam, necessitariam de muitas configurações.
Algoritmos
Vamos recapitular um pouco:
Lógica é a técnica utilizada para desenvolver instruções em uma sequência para 
atingir determinado objetivo. Ela também é a organização e planejamento deins-
truções, em um algoritmo, com o objetivo de tornar viável a implementação de um 
programa ou software.
A lógica de programação nada mais é do que a organização coerente das instru-
ções do programa para que seu objetivo seja alcançado.
Por trás dela, temos um grande desafio para o programador: montar a estrutura 
do programa para ser executado pelo computador. É preciso partir do princípio de 
que o computador não pensa da mesma forma que nós e não é inteligente para saber 
o que precisa ser feito, nem compreender as mensagens subjetivas.
A abstração é um conceito fundamental em ciência da computação porque está 
diretamente ligada ao conceito de modelagem. No entanto, é difícil de explicar, e 
difícil de exemplificar. Em qualquer disciplina que lida com complexidade, abstrair de-
talhes é de fundamental importância.
Para o engenheiro de software, saber lidar com diferentes níveis de abstração é, 
ao mesmo tempo, um requisito da profissão e um desafio sempre presente.
Um questionamento presente em quase todos os processos de desenvolvimento é: 
Qual o nível correto de abstração devo usar nesse caso? Essa é uma pergunta recor-
rente para o profissional consciente de que lidar com níveis de abstração é importante.
Vamos lá, então o que é abstração? Pura e simplesmente é a subtração de deta-
lhes, ou seja, é a capacidade de expressar algo de maneira concisa, abstrata, sem 
que os detalhes fiquem à mostra.
15
roger
Realce
roger
Realce
roger
Realce
roger
Realce
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
Agora vamos ao algoritmo.
Embora às vezes não percebamos, utilizamos algoritmos no nosso dia-a-dia e não 
sabemos. Para a execução de alguma tarefa ou mesmo para resolver algum problema, 
muitas vezes, inconscientemente, executamos algoritmos. Mas o que é Algoritmo?
Algoritmo é simplesmente uma “receita” para executarmos uma tarefa ou re-
solver algum problema. E como toda receita, um algoritmo também deve ser 
finito. Se seguirmos uma receita de bolo corretamente, conseguiremos fazer o 
bolo. A computação utiliza muito esse recurso, então, se você pretende aprender 
programação, obviamente deve saber o que é algoritmo.
Algoritmo: Sequência de passos ordenados que visam atender a um objetivo previamente 
determinado. Além disso, é parte da documentação. Ex
pl
or
O computador, para que possa resolver um problema, ou executar uma tarefa, 
precisa de instruções ordenadas de forma lógica, e escritas em uma linguagem que 
ele possa compreender (programa).
Exemplo de Desenvolvimento 
com Algoritmos
Exemplo de Algoritmo
Imagine o trabalho de um recepcionista de cinema: ele deve conferir os bilhetes e 
direcionar o cliente para a sala correta. Além disso, se o cliente estiver 30 minutos 
adiantado, o recepcionista deve informar que a sala do filme ainda não está aberta. 
E quando o cliente estiver 30 minutos atrasado, o recepcionista deve informar que 
a entrada não é mais permitida.
Essas regras não são 100% verdadeiras. Foram assim definidas para fins didáticos!
Ex
pl
or
Vamos escrever um algoritmo para descrever a atividade do recepcionista. 
Algoritmo Recepcionista de Cinema
Inicio
1. Solicitar ao cliente o bilhete do filme.
2. Conferir a data e o horário do filme no bilhete.
16
roger
Realce
17
Se data/hora atual > data/hora do filme + 30 minutos Então
3. Informar ao cliente que o tempo limite para entrada foi excedido.
4. Não permitir a entrada.
Senão Se data/hora atual < data/hora do filme - 30 minutos Então
5. Informar ao cliente que a sala do fi lme ainda não foi liberada para entrada.
6. Não permitir a entrada.
Senão
7. Permitir a entrada.
8. Indicar ao cliente onde fi ca a sala do fi lme.
Fim-Se
Fim
Qualquer pessoa que seguir esses passos executará a função do recepcionista 
do cinema. Concorda? É importante notar que o algoritmo tem um fluxo que pode 
seguir diferentes caminhos, dependendo da situação em que se encontra. Outro 
aspecto interessante é que o algoritmo é finito, uma hora ele tem que acabar!
Pseudocódigo: tipo de algoritmo que utiliza uma linguagem fl exível, intermediária entre 
a linguagem natural e a linguagem de programação. É utilizado para organização do racio-
cínio lógico a ser seguido para execução de uma tarefa, bem como para documentação de 
uma rotina em um sistema.
Ex
pl
or
Exemplo: leia nome, idade e salário de uma pessoa e exiba na tela.
Programa exemplo_1 (Nome do pseudocódigo);
Var nome: caracter → Declaração das variáveis – todas as variáveis a 
serem utilizadas devem ser previamente declaradas
Idade: inteiro
salário: real
Início
Leia (nome); → Corpo do pseudocódigo – onde as ins-
truções e as condições são indicadas.Leia (idade);
Leia (salário);
Escreva (‘Nome:...’, nome);
Escreva (‘Idade:...’, Idade);
Escreva (‘Salário:...’, Salário);
Fim
17
roger
Realce
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
VARIÁVEL:
Uma informação que tem a possibilidade de ser alterada em algum dado mo-
mento. Em programação, representa espaços na memória do computador reser-
vados para armazenamento temporário de dados.
Toda variável deve ser identificada, para isso:
• Não utilize espaços entre as letras;
• Não inicie o nome com números;
• Não utilize palavras reservadas à linguagem (em caso de programação);
• Não utilize caracteres especiais;
• Seja sucinto e utilize nomes coerentes.
Cada linguagem de programação tem suas particularidades para declaração de 
variáveis e atribuição de tipos de dados.
Tipos de Dados:
• Numérico: Real ou Inteiro.
• Real: qualquer número positivo ou negativo, inteiro ou fracionário (com pon-
to flutuante).
• Inteiro: qualquer número inteiro positivo ou negativo. 
Caracter:
• Letras, números e caracteres especiais.
• Recebe também as seguintes denominações: literal, texto ou string.
• Dica: números armazenados em variáveis do tipo caracter não podem ser 
utilizados em cálculos. 
Lógico: 
• Aceita apenas um entre dois valores – verdadeiro ou falso.
Faça um pseudocódigo que receba três valores que representarão os lados de um 
triângulo, e serão fornecidos pelo usuário, verifique se os valores formam um triân-
gulo e classifique este triângulo como:
• equilátero: 3 lados iguais;
• isósceles: 2 lados iguais;
• escaleno: 3 lados diferentes.
Lembre-se para formar um triângulo: 
• nenhum dos lados pode ser igual a zero;
• um lado não pode ser maior do que a soma dos outros dois.
18
roger
Realce
roger
Realce
roger
Realce
roger
Realce
roger
Realce
roger
Realce
19
Programa triangulo;
Var
 A,B,C: inteiro;
Inicio
 Leia (A);
 Leia (B);
 Leia (C) ;
 Se (A<B+C) .e. (B<A+C) .e. (C<A+B) então
 Se (A = B) .e. (B = C) então
 Escreva (‘Triângulo equilátero’);
 Senão
 Se (A = B) .ou. (A = C) .ou. (C = B) então
 Escreva (‘Triângulo isósceles’);
 Senão
 Escreva (‘Triângulo escaleno’);
 Fim_se
 Fim_se
Senão
 Escreva (‘Os valores fornecidos não formam um triângulo’);
 Fim_se
Fim. 
• Fluxograma – Descreve a sequência de passos para a resolução de um proble-
ma através de símbolos gráficos. A seguir, os símbolos mais comuns:
Marca o início e o �nal da rotina processamento;
Processamento pré-de�nido;
Saída de dados via tela;
Entrada de dados via teclado;
Tomada de decisão;
Conector.
Seta de orientação do �uxo; 
Figura 6 
19
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
O fluxograma pode ser feito horizontalmente ou verticalmente.
Ex: Leia nome e idade de uma pessoa e mostre na tela.
Inicio Nome Idade Fim
Nome:’, Nome
‘Idade:’, Idade
Figura 7 – Exemplo de Fluxograma
20
21
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Livros
Computer Science Unplugged Teachers’ Edition
BELL, T.; WITTEN, I. H.; FELLOWS, M. Computer Science Unplugged Teachers’ Edition 
em Português. Computer Science Unplugged, 2011.
Arquitetura de Computadores
CARTER, N. Arquitetura de Computadores. Porto Alegre: Ed. Bookman, 2003. ColeçãoSchaum.
Administração de Recursos de Informática
CIA - Centro de Informática Aplicada - Pesquisa Anual - Administração de Recursos de 
Informática. 4. edição de 1993 e resultados preliminares da 5ª edição de 1994, São Paulo, FGV.
Introdução à Ciência da Computação
MOKARZEL, F.; SOMA, N. Introdução à Ciência da Computação. São Paulo: Campus 
Elsevier, 2008.
Novas Aplicações com Microcomputadores
MEIRELLES. F. S. Informática: Novas Aplicações com Microcomputadores. 2. Ed. Atualizada 
e Ampliada. São Paulo: McGraw-Hill/Makron Books, 2008.
Redes e Sistemas de Comunicação de Dados
STALLINGS, W. Redes e Sistemas de Comunicação de Dados. São Paulo: Campus Elsevier, 2005.
Sistemas Operacionais Modernos
TANENBAUM, A. Sistemas operacionais modernos. Rio de Janeiro: LTC. 1999. 
Sistemas Operacionais: Projeto e Implementação
TANENBAUM, A. S.; WOODHULL, A. S. Sistemas Operacionais: Projeto e Implementação, 3. Ed. 
Porto Alegre: Bookman, 2008.
21
UNIDADE Introdução à Lógica, Abstrações e Algoritmos
Referências
BROOKSHEAR, J. G. Ciência da Computação: uma visão abrangente. 11. ed. 
Porto Alegre: Bookman, 2013. (e-book)
LOUREIRO, C.A.H. et al. Redes de Computadores III: níveis de enlace e físico. 
Porto Alegre: Bookman, 2014. (e-book)
GERSTING, J. L. Fundamentos Matemáticos para a Ciência da Computação. 
7. ed. Rio de Janeiro: LTC, 2016. (e-book)
SOUSA, L. B. Administração de Redes Locais. São Paulo: Erica, 2014. (e-book)
STALLINGS, W. Arquitetura e Organização de Computadores. 5. ed. São Paulo: 
Pearson. (e-book)
22

Continue navegando