sobre a Lísias

nosso e-mail

venda de produtos/serviços


Livro de Algoritmos

forma de venda

Preço nas livrarias:
R$ 35,00 ou compra pela internet direto da Lísias: R$ 29,00 (cobrança via boleto bancário. Você recebe o livro e o boleto pelo correio e depois paga em qualquer banco). Você também pode utilizar seu cartão de crédito.



ISBN: 85-87147-01-3

Formato: 15x21 cm

Páginas: 165

Colorido: sim

Todos os programas fontes dos exemplos e mais os fontes dos exercícios resolvidos, você os receberá gratuitamente pela internet, basta informar o número de série do seu livro

 

Este livro é a base para a formação do desenvolvedor profissional de software que quer construir os seus aplicativos utilizando ferramentas tais como C/C++, Delphi, Java ou Visual Basic. Com o livro algoritmos você aprende na prática os fundamentos do fascinante mundo do desenvolvimento de software

Algoritmos de computação em português
Pelo exemplo de programa, colocado a seguir e que faz parte do quarto capítulo do livro, perceba que não é difícil começar a criar software. Saiba que o programa abaixo executa em um computador exatamente como ele está escrito.

 

Com o livro é fácil entender os comandos
Muitas vezes quando você estiver criando um algoritmo (programa) você perceberá a seguinte situação: você sabe a parte teórica, porém não lembra como aplicar esta teoria em termos práticos. Ou seja, não lembra claramente da sintaxe de cada instrução ou a sequência que as instruções devem ser escritas. No livro da Lísias Editora, você verá que para cada tópico que está sendo ensinado, a um exemplo prático de como implementar a teoria e juntamente a este código haverá um destaque em vermelho mostrando como o tópico é aplicado na prática. Observe no exemplo acima,onde o tópico que está sendo ensinado é "Comando de seleção sem alternativa" (Comando "Se" sem alternativa)

Você aprenderá quais as perguntas que deve fazer para criar variáveis
Uma grande dificuldade que os alunos de algoritmos encontram é a forma de equacionar uma tarefa a ser implementada algoritmicamente. Para resolvê-la você aprenderá como deve fazer perguntas para encontrar as "variáveis" que a solução de uma determinada tarefa requer. Por exemplo, para resolver o problema colocado no tópico anterior, o livro ensina a você quais as perguntas a serem feitas:

1) Quais são os dados fornecidos pelo usuário?
__Lembrete: para cada dado fornecido pelo usuário deve haver uma definição de variável.
- Primeira nota » variável » rNota1
- Segunda nota » variável » rNota2

2) O problema fornece algum dado?
___Não.

3) Haverá algum cálculo cujo resultado será utilizado em mais de um ponto no programa?
___SIm. - Média das duas notas » variável » rMedNotas

4) Há necessidade de algum tipo de contador?
___Não.

Você aprenderá a técnica da programação estruturada
Aprender a criar algoritmos estruturados é fundamental. Apesar da divisão de problemas em problemas menores (síntese da estruturação) ser uma tarefa da Análise/Projeto, você terá que aprender a implementar os seus programas de forma estruturada. O Livro Desenvolvedor Profissional - Algoritmos, possui um capítulo inteiramente dedicado a mostrar como implementar estruturadamente. Este é um aprendizado importante, pois todos os bons compiladores do mercado fazem uso da estruturação. Ou seja, para que você possa efetivamente criar um programa e que este programa possa ser executado por um computador é necessário que você utilize um compilador/tradutor do mercado. Os mais famosos são o C++ e o Delphi como compiladores e o Java e Visual Basic como tradutores. Em sendo necessário utilizar uma destas ferramentas ou outras que trabalhem de forma estruturada, você só conseguirá fazê-lo, caso você saiba criar algoritmos estruturados. Você já deve estar cansado de ouvir falar em Orientação a Objetos. Pois saiba que para poder utilizar esta técnica, conhecer a estruturação de programas é fundamental. Veja nos dois tópicos a seguir como o livro demonstra e trata a estruturação de um problema

Você aprenderá como criar gráficos para estruturar um problema
O livro propõe uma tarefa a ser equacionada de forma a possibilitar a sua implementação algorítmica e demonstra como fica o desenho das funções (cada função realiza uma tarefa para equacionar o problema todo) e os dados que devem ser passados entre as funções e isto de forma gráfica.

/* Programa: Funcoes.cpp
Objetivo..: Ler o valor unitário de um quilo de feijão e a quantidade de quilos vendidos para um determinado freguês. Calcular o valor total a ser cobrado, sabendo que sobre o valor total vendido temos que aplicar 45% de impostos, mais 10% de lucro. Depois de ter calculado o valor total, exibir o código do produto vendido, o valor unitário do produto, a quantidade vendida e o valor total que o freguês terá que pagar.*/

 

Você terá uma visualização gráfica do código
A partir do problema proposto no tópico anterior, o livro então demonstra como implementar algoritmicamente a solução proposta para o mesmo. Observe que a separação de cada tarefa (função) é demonstrada graficamente através da utilização de cores.

 

Todos os exercícios propostos que constam do livro estão também resolvidos pelo autor
Da mesma forma que estão demonstrados graficamente os exemplos do livro, também os exercícios propostos estão resolvidos e documentados conforme estes exemplos.

Por que tantos inciantes tem dificuldade em algoritmos?
Você sabia que mais de 80% dos universitários brasileiros reprovam nesta disciplina que é lecionada no primeiro ano de qualquer curso de computação?

O autor construiu o livro, depois de lecionar para mais de 5.000 alunos e aprendeu com os mesmos onde estão as suas dificuldades:

Este livro cria código de exemplos reais, ou seja, você não terá que gastar um tempo enorme para entender como um problema proposto deve ser equacionado, para então resolvê-lo com um algoritmo computacional. Neste ponto reside uma das grandes dificuldades dos inicantes. Pois estes se perdem em meio a necessidade de entender um problema complexo quando o que se pretende com algoritmos é ensinar a criar programas.

Para o iniciante é dificil entender como um algoritmo é executado pelo computador, que comandos ele deve programar para que determinada tarefa seja executada. é particularmente difícil visualizar como estes comandos serão respondidos pela máquina. Muitos, no início, tem inclusive dificuldade em enxergar o que são variáveis (conceito fundamental). Com este livro você ficará surpreso em perceber com que facilidade você passará a entender os conceitos e a visualizar resultados de instruções.

Por que este livro é bom?
Porque todos os algoritmos (exemplos e exercícios) construídos por ele podem ser executados em um computador. Você programará em portugol e poderá verificar este código sendo executado pelo computador. Isto é possível graças ao Tradutor© construído pelo autor e que você recebe como parte do livro. Este é o ponto central do aprendizado. Pois podendo implementar o algoritmo no computador, este dirá a você onde está um eventual erro. O computador exibirá a você o resultado de uma instrução. VOCê TERá CERTEZA ABSOLUTA SE A LóGICA ESTá CORRETA OU NãO.

E mais: pelo fato de você estar construindo o algoritmo no computador, você poderá errar, tentar outras formas algorítmicas, fazer testes, entre outras atitudes, inúmeras vezes, pois a máquina é impessoal. Ela não se enerva, ela não tem pressa. Nada irá pressionar o seu aprendizado. Você seguirá o seu ritmo.

Alguns críticos dirão que implementar algoritmos no computador não está correto, pois seria necessário primeiro desenhar a planta do edifício para depois construí-lo. Em primeiro lugar, aprender a criar algoritmos não significa aprender tudo de uma só vez com relação a criação de um aplicativo. Esta crítica esquece de todo o escopo de desenvolvimento de um aplicativo. Ou seja, o desenho de um sistema não deve ser feito na disciplina de algoritmos e sim na de Análise de Sistemas.

Segundo, depois da fase de análise ainda existe a fase de projeto físico, onde então procuramos desenhar todos os componentes de solução de um problema que deve ser resolvido via aplicativo de computador. Terceiro, você cria algoritmos para resolver pequenas tarefas, que devem ser claras e curtas na resolução de uma tarefa algorítmica, pois um dos fundamentos na criação de software é a programação estruturada e nesta você aprende a dividir um problema proposto em vários problemas menores e assim sucessivamente. Esta tarefa de dividir problemas, cabe ao analista de sistemas. A você agora (como aprendiz de algoritmos) cabe pegar uma tarefa (e somente uma tarefa), que faz parte da solução do problema apresentado, e implementá-la via codificação. E nisto o livro da Lísias Editora é inigualável.

Uma outra crítica que é feita, é que as escolas e faculdades brasileiras não podem colocar todos os alunos no computador para implementarem os algoritmos. Com relação a isso leve três coisas em consideração: primeiro, se uma escola não possui máquinas suficientes para os alunos aprederem a programar no computador, então não deveria oferecer a cadeira de informática; em segundo, como é que fazem estas escolas para ensinarem planilhas, processadores de texto e assim por diante (tudo no papel?); e em terceiro lugar, todo aquele que deseja fazer uma carreira na área de desenvolvimento de software é ponto fundamental que está pessoa ou possua um computador ou tenha um próximo a ela.

Sumário do livro de algoritmos
1. Memória

1.1 O que é a memória?

1.2 Como localizar informações (dados) na memória?

1.3 Reservando memória (Tipos de Dados)

1.4 Como dar nome a uma variável?

1.4.1 Variáveis começam com prefixo(s) minúsculo(s)

1.4.1.1 Descrição de prefixos de variáveis

1.4.1.2 Nome da variável propriamente dito

1.4.2 Declarando variáveis

1.4.2.1 Representação gráfica da memória após a declaração

1.4.3 Atribuição de valores à variáveis

2. Entrada e saída de dados

2.2.1 Sintaxe do comando "leia"

2.2.1.1 Exemplo executável de "leia"

3. Operadores aritméticos

3.1 Prioridade de avaliação dos operadores aritméticos

3.2 Exemplo de atribuição de cálculos a uma variável

3.2.1 Representação gráfica da memória para o exemplo

3.2.2 Como definir uma variável

4. Comandos de seleção

4.1 Operadores relacionais

4.2 Comandos de seleção única

4.2.1 Comando de seleção sem alternativa

4.2.1.1 Sintaxe do comando de seleção simples

4.2.1.2 Exemplo de seleção sem alternativa

4.2.1.2.1 O que definir como variável no exemplo?

4.2.1.2.2 Representação gráfica da memória para o exemplo

4.2.2 Comando de seleção com uma alternativa

4.2.2.1 Sintaxe do comando de seleção com uma alternativa

4.2.2.2 Exemplo de seleção com uma alternativa

4.2.2.2.1 O que definir como variável no exemplo?

4.2.2.2.2 Representação gráfica da memória para o exemplo

4.2.3 Comando de seleção com mais de uma alternativa

4.2.3.1 Sintaxe do comando de seleção com mais de uma alternativa

4.2.3.2 Exemplo de seleção com mais de uma alternativa

4.2.3.2.1 O que definir como variável no Exemplo?

4.2.3.2.2 Representação gráfica da memória para o exemplo

4.2.4 Segundo comando de seleção com muitas alternativas

4.2.4.1 Sintaxe do comando de seleção múltipla

4.2.4.1.1 Exemplo de multiplasOpcoes...caso...casoContrario

4.2.4.1.1.1 O que definir como variável no exemplo?

4.2.4.1.2 Representação gráfica da memória para o exemplo

4.3 Operadores lógicos

4.3.1 Exemplo de expressão com operador lógico ‘e’

4.3.1.1 O que definir como variável no exemplo

4.3.1.2 Representação gráfica da memória para o exemplo

5. Comandos de repetição de bloco

5.1 Repetir um bloco sem conhecer quantas vezes

5.1.1 Repetição com teste no início

5.1.1.1 Exemplo de comando com teste no início

5.1.1.1.1 O que definir como variável no exemplo?

5.1.1.1.2 Representação gráfica da memória para o exemplo

5.1.2 Repetição com teste no final

5.1.2.1 Sintaxe do comando Execute ... enquanto

5.1.2.2 Exemplo de comando com teste no final

5.1.2.2.1 O que definir como variável no exemplo?

5.1.2.2.2 Representação gráfica da memória para o exemplo

5.2 Repetir um bloco conhecendo a quantidade de vezes

5.2.1 Exemplo de repetição sabendo-se quantas vezes repetir

5.2.1.1 O que definir como variável no exemplo?

5.2.1.2 Representação gráfica da memória para o exemplo

6 Comandos de saída e volta em laços

6.1 Saindo do bloco de repetição

6.1.1 Exemplo de saída do bloco de repetição

6.1.1.1 O que definir como variável no exemplo

6.1.1.2 Representação gráfica da memória para o exemplo

6.2 Voltando para o início do bloco de repetição

6.2.1 Voltando com o comando enquanto

6.2.1.1 Exemplo de desvio com o comando voltar

6.2.1.1.1 O que definir como variável no exemplo

6.2.1.2 Representação gráfica da memória para o exemplo

6.2.2 Voltando com o comando para

6.2.2.1 Exemplo de desvio com o comando voltar

6.2.2.1.1 O que definir como variável no exemplo

6.2.2.1.2 Representação gráfica da memória para o exemplo

7 Variáveis indexadas (matriz)

7.1 Quando devemos utilizar variáveis matriciais?

7.2 Matriz unidimensional

7.2.1 Exemplo de matriz unidimensional

7.2.1.1 O que definir como variável no exemplo?

7.2.1.2 Representação gráfica da memória para o exemplo

7.3 Matriz bidimensional

7.3.1 A sintaxe de matriz bidimensional:

7.3.2 Exemplo de matriz bidimensional

7.3.2.1 O que definir como variável no exemplo?

8 Estruturas complexas de dados

8.1 Como definir uma estrutura

8.2 Criando instâncias de uma estrutura

8.3 Demonstração gráfica de instâncias

8.4 Acessando um membro de uma estrutura

8.5 Exemplo de utilização de estruturas de dados

8.5.1 O que definir como variável no exemplo?

8.5.2 Representação gráfica do exemplo na memória

8.6 Criando matriz de estrutura

8.6.1 Exemplo de matriz de estrutura

8.6.1.1 O que definir como variável no exemplo

8.6.2 Representação gráfica do exemplo na memória

9 Funções

9.1 Como definir uma função

9.2 Funções que chamam funções

9.3 Retornando dados a partir de uma função

9.4 Definindo uma função que não retorna dados

9.5 Utilizando funções na prática

9.5.1 Como conseguir reutilizar código?

9.5.2 Identificando um programa fonte

9.6 Variáveis locais

9.7 Variáveis globais

9.7.1 Exemplo de utilização de variável Global

9.7.2 Variáveis globais devem ser evitadas

Apêndice A
Exercícios propostos

Apêndice B
Exercícios resolvidos

Apêndice C
Como executar os programas
Definição do tradutoró da Lísias
Erros que podem ocorrer na resolução de Exercícios

Apêndice D
Como receber os exercícios resolvidos via internet
O suporte gratuito via internet
Uma oportunidade para você com a Lísias

Bibliografia

índice Remissivo