Capgemini

1 - Introdução a Lógica de Programação

1 - Uma breve História do Computador

1 - Ábaco: Máquina de calcular utilizada pelos pastores para contar ovelhas.
Origem chinesa criado no século V a.C

2 - 1640: Primeira máquina de calcular automática. Inventado por: Blaise Pascal

3 - Wilhelm Leibniz (matemático alemão): Criou a primeira calculadora de bolso que realizava as quatros operações matemáticas. e desenvolveu
o primeiro sistema de numeração binário moderno que ficou conhecido como Roda de Leibniz


4 - Máquina de Leibniz: Concebida em
1673 e construída em 1694. Propósito: Multiplicar

5 - Joseph-Marie Jacquard: Matemático francês que introduziou a Primeira máquina mecânica programável. Tratava-se de um tipo de tear, capaz de controlar a confecção dos tecidos através de cartões perfurados

6 - George Boole (1815-1864): Foi um dos fundadores da lógica matemática.

7 - Charles Babbage: Matemático Inglês, criou uma máquina analítica, que a grosso modo, é comparada com o computador atual com memória e programas.

2 - A histórica Evolução da Computação Moderna

1 - 1ª Geração (1951-1959): Funcionavam por meio de circuitos e válvulas eletrônicas. Possuíam o uso restrito, além de serem imensos e consumirem muita energia.

2 - ENIAC: Eletronic Numerical Integrator and Computer, consumia cerca de 200 quilowatts e possuía 19.000 válvulas

3 - 2ª Geração (1959-1965): Funcionavam por meio de transistores, os quais substituíram as válvulas que eram maiores e mais lentas: Exemplo: IBM 1401, computador mais menor em relação ao da 1ª Geração, mas ainda sim, muito grande.

4 - 3ª Garação (1965-1975): Funcionavam por circuitos integrados, que substituíram os transistores e já apresentavam uma dimensão menor e maior capacidade de processamento.

5 - 4ª Geração (1975 até hoje): O computadores diminuíram de tamanho e aumentaram a velocidade e capacidade de processamentos de dados. São criados os microprocessadores com gasto cada vez menor de energia. Surgem os softwares integrados e a partir da virada do milênio, começam a surgir os computadores de mão. Ou seja, os smartphones, iPode e Tablets, que incluem conexão móvel com navegação na web.

3 - A lógica no mundo

1 - A lógica consiste na construção racional e coerente do raciocínio.

2 - A lógica só passou a ser uma área da Matemática a partir dos trabalhos de George Boole (1815-1864) e Augustus de Morgan (1806-1871), quando eles apresentaram os fundamentos da lógica algébrica.

3 - Na lógica simbólica e lógica matemática, demonstrações feitas por humanos podem ser auxiliadas por computador. Usando prova automática de teoremas, os computadores podem achar e verificar demonstrações.

4 - A lógica está diretamente relacionada tanto com a construção de softwares como com a construção de hardwares.

4 - Hardware

1 - Processador: Circuito integrado que realiza as funções de cálculo e tomada de decisão de um computador (executa comandos).

2 - Placa Mãe: Parte do computador responsável por conectar e interligar todos os componentes do computador.

3 - Memórias Primárias (RAM): Responsáveis por armazenar temporariamente os dados que estão em uso nesse momento. (Memórias geralmente voláteis).

4 - Memórias Secundárias (HD): Responsáveis por armazenar os dados por tempo indeterminado. (Memórias geralmente não voláteis)

5 - Software

1 - É o conjunto de instruções dadas a um computador, de modo que ele execute determinada tarefa. É a parte intangível de uma máquina, desenvolvida por meio de códigos e linguagem de programação.

1 - Linguagem de Programação Compilada

É uma linguagem de programação em que o código fonte, nessa linguagem é executado diretamente pelo sistema operacional ou pelo processador, após ser traduzido por meio de uma processo chamado compilação, usando um programa de computador chamado compilador

2 - Linguagem de Máquina, Assembly e Assembler

1 - Assembly: É uma linguagem de programação composta por comandos simples. Escrevendo código Assembly você sabe exatamente o que o processador está fazendo.

2 - Assembler: É um programa que lê o arquivo contendo os comandos simples da linguagem Assembly e transforma em linguagem de márquina.

3 - Linguagem de Máquina: É a única coisa que o processador consegue interpretar, e são apenas códigos, não dá para ser lidos por humanos.

3 - Linguagem de Programação Interpretada

É uma linguagem de programação em que o código fonte nessa linguagem é executado por um programa de computador chamado interpretador, que em seguida é executado pelo sistema operacional ou processador.

6 - Lógica e Solução de Problemas

1 - Lógica Formal:

Ferramenta para desenvolver cadeia de pensamentos, que permitem reconhecer contradições e eliminar possibilidades de erros. Visa desenvolver a capacidade de discernimento: identificar raciocínios válidos e não válidos baseados em: Proposições que é uma frase que é declarativa e que pode receber uma valor lógico ou seja, pode ser verdadeira ou falsa.

2 - Princípios da Lógica Formal

Nem todo raciocínio é lógico. Para ser lógico é necessário 3 princípios:

1 - Princípio da identidade: Cada coisa é igual a si mesma. Exemplo: Cadeira é uma cadeira

2 - Princípio da não contradição: Uma proposição é verdadeira ou falsa, mas nunca verdadeira e falsa ao mesmo tempo. Exemplo: Pedro é médico

3 - Princípio do 3º Excluído: Uma proposição é verdadeira ou falsa, não há uma terceira opção. Exemplo: Maria está grávida.

3 - Álgebra Booleana Lógica Matemática

Desenvolveu-se no século XIX, sobretudo por meio das ideias de George Boole, criador da Álgebra Booleana, que utiliza símbolos e operações algébricas para representar proposições e suas inter-relações. A Lógica Matemática (ou álgebra booleana), trata-se do estudo das sentenças declarativas também conhecidas como proposições.

Leis Fundamentais

Lei do meio excluído: Uma proposição é falsa (F) ou verdadeira (V): não há meio termo

Lei da contradição: Uma proposição não pode ser simultaneamente V e F.

Lei da funcionalidade: O valor lógico (V ou F) de uma proposição composta é unicamente determinada pelo valores lógicos de suas proposições constituintes.

Tabela Verdade

A Tabela verdade é uma estrutura lógica que facilita o raciocínio humano. É utilizada por programadores como forma de facilitar a construção de algoritmos de programação.

O nome "tabela verdade" é apenas intuitivo. Ela é muito útil para representar as proposições e combinações entre elas (negação, conjunção e disjunção).

Para todos os exemplos a seguir, vamos considerar duas proposições, p e q. Para cada operação, será mostrada a tabela com explicações e exemplos.

Operadores

Negação: O operador de negação quando aplicado a uma proposição, faz com que o valor desta proposição inverta.

Conjunção: Requer que todas as partes de uma proposição composta sejam verdadeiros para que o resultado final da proposição seja verdadeiro. Caso haja uma falsidade, a sentença como um todo torna-se falsa.

Disjunção: Requer que apenas umas das partes da proposição composta seja verdadeira para que o resultado final da proposição composta seja verdadeiro.

7 - Algoritmos

Conjunto de regras e procedimentos lógicos perfeitamente definidos que levam à solução de um problema em um número finito de etapas.

1 - Representar um algoritmo

Fluxograma: É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam ações (instruções e comandos) distintos. Tal propriedade facilita o entendimento das ideias contidas nos algoritmos e justifica sua popularidade.

2 - Lógica de Programação e Algoritmos

Siglas

CPU: Central Processor Unit / Unidade Central de Processamento

ULA: Unidade Lógica e Aritmética

UC: Unidade de Controle

RAM: Random Access Memory

ROM: Read Only Memory

Bit: Binary Digit

ASCII: American Standard Code for Information Interchange

Visual G

Linguagem: Portugol baseada no Pascal

Porcentagens:

Acréscimo:

10% => N x 1.1

20% => N x 1.2

Assim por diante

Desconto:

10% => N x 0.9

20% => N x 0.8

Assim por diante

Tipos de Triângulo

Isósceles

Escaleno

Equilátero

(lado1 = lado2) E (lado2 = lado3)

(lado1 = lado2) OU (lado2 = lado3) OU (lado1 = lado3)

É quando as outras condições são falsas, ou seja, todos os lados são diferentes

Não é Triângulo

(lado1 > lado2 + lado3) OU (lado2 > lado1 + lado3) OU (lado3 > lado1 + lado2)

Ímpar ou Par

Par

x % 2 = 0

Ímpar

Se a condição anterior for falso, ou seja, x % 2 = 1

Número Múltiplo

Múltiplo de 3 => x % 3 = 0

Técnica para saber o mais novo e mais velho

maisNovo => 999 maisVelho => 0

3 - Lógica de Programação e Algoritmos III

Utilizado para programação Web

Linguagem multiplataforma - Funciona no Mac, Win e Linux

Linguagem compilado em Byte Code (.class)

JVM - Interpreta o Byte Code