Disciplina: Lógica de ProgramaçãoConceito de Lógica São as premissas básicas de escritas de...

Post on 14-Oct-2020

6 views 0 download

Transcript of Disciplina: Lógica de ProgramaçãoConceito de Lógica São as premissas básicas de escritas de...

Faculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoDisciplina: Lógica de Programação

Introdução a lógica e a Linguagem de Programação

1

Linguagem de Programação

Site : http://www1.univap.br/~wagner/ec.htmlProf. Responsáveis

Wagner Santos C. de Jesus

Conceito de Lógica de ProgramaçãoProgramação

Conceito de Lógica

São as premissas básicas de escritas deinstruções para se executar instruções decomputador.

A lógica tem dois significados principais: discute oA lógica tem dois significados principais: discute ouso de raciocínio em alguma atividade e é oestudo normativo, filosófico do raciocínio

Lógica define um Processo

Conceito de Processos

Processo: É uma conexão em série deatividades com objetivo de atingir resultados.atividades com objetivo de atingir resultados.

Conceito de Algoritmo Algoritmo

Algoritmo

Vem a ser uma seqüência finitade instruções bem definidas e não ambíguas,cada uma das quais devendo ser executadasmecânica ou eletronicamente em ummecânica ou eletronicamente em umintervalo de tempo finito e com umaquantidade de esforço finita.

Simbologia de representação de Lógica representação de Lógica

de Programação

Diagrama de Blocos

Problema exemplo-1

Em uma balançaprecisa ser realizada apesagem de seis bolinhas,iguais em tamanho e emiguais em tamanho e emcor apenas uma dasbolinhas e mais leve;Como você faria paradescobrir a bolinha maisleve pesando apenas duasvezes.

Conceito de Linguagem de Programação (LP)Programação (LP)

Mecanismos de Hardware

Lógica e Abstração

A lógica de programação vemda abstração de umdeterminado processo dodeterminado processo domundo real.

Exemplo de Abstração e Lógica

Função de uma LP

Algoritmo

AplicativoLinguagem de Programação

Mundo Externo

Sistema Operacional

AplicativoProgramação

Processador

Definição de Linguagem de ProgramaçãoProgramação

Definição

Uma linguagem de programação é um métodopadronizado para comunicar instruções paraum computador. É um conjunto de regrassintáticas e semânticas usadas para definirum programa de computador. Permite que umum programa de computador. Permite que umprogramador especifique precisamente sobrequais dados um computador vai atuar, comoestes dados serão armazenados ou transmitidos equais ações devem ser tomadas sob váriascircunstâncias.

Característica principais de uma LP

– Sintaxe

– Semântica– Semântica

– Pragmática

Exemplo de Características de uma LP

=

Sintaxe

program simplesvar x : integer := 3Begin

x := x + 5end.

?Semântica

Pragmática

end.

Formato da Escrita

Significado

Raciocínio Lógico

Mercado das Linguagens de Programação

•Cientifico

•Comercial

Processamento de Dados

Comercial :

E SE SP

Processamento de Dados

Científica :

SE P SE P

Problema exemplo-2

RioRio

Motivação para uso de uma Linguagem de ProgramaçãoLinguagem de Programação

Porque usar uma LP

Uma das principais metas das linguagensde programação é que programadorestenham uma maior produtividade, permitindoexpressar suas intenções mais facilmente doexpressar suas intenções mais facilmente doque quando comparado com a linguagem queum computador entende nativamente (códigode máquina).

Mapeamento Hexadecimal

Classificação das LP

Baixo Nível

Médio Nível

Linguagem Assembler

Linguagem C++, Pascal e Java

26

Alto Nível VB, C#, PHP

Linguagens de Script ActionScript,

JavaScript

Objetivo prático

Linguagens de programação sãoferramentas importantes paraque programadores e engenheiros desoftware possam escrever programas maissoftware possam escrever programas maisorganizados e com maior rapidez.

Evolução das Linguagens de Programação

(1946-1954)

Primeira geração

(1955-1964)

Segunda geração

(1964-1977)

Terceira geração

(1977-1991)

Quarta geração

(1991- ....)

Quinta geração

Primeira geração - linguagem de máquina

Segunda geração - linguagens de montagem (assembly).

Terceira geração - Linguagens procedurais.

Quarta geração - Linguagens aplicativas

Quinta geração - Linguagens voltadas a Inteligência artificial como as linguagens

lógicas (Prolog) e as linguagens funcionais (Lisp).

Classificação da LP

• Genéricas • Específicas• Específicas

Genérica

Possibilitam o desenvolvimento para qualquer tipo de aplicação. (Cientifica e ou Comercial).

Exemplo (Java, C++, C# e Basic)Exemplo (Java, C++, C# e Basic)

Específica

Possibilitam o desenvolvimento para qualquer um tipo de aplicação.

Exemplo (Php, ActionScript, CSS e HTML)Exemplo (Php, ActionScript, CSS e HTML)

LP – Compiladas ou Interpretadasou Interpretadas

Compilador

Programa

Arquivo - Máquina

Compilador

Interpretador

Programa

Execução Programa

Interpretador

Problema exemplo-3

Um fazendeiro deixoucomo herança um terrenopara seus quatro filhos,terreno no qual possui oformato ao lado; Suaformato ao lado; Suatarefa será dividir esseterreno em quatro partesiguais.

Origem de Algumas

LinguagensLinguagens

Criador da LP (Pascal)

Criada Tendo emmente encorajar ouso de códigoestruturado.

Niklaus Wirth 1970 (Suiço)

estruturado.

Exemplo Programa Pascal program Soma_Pares;

uses crt;

var superior, soma, num: integer;

begin

soma:=0;

write ('Entre com o limite superior');

readln (superior);readln (superior);

num:=2;

repeat

soma:=soma+num;

num:=num+2;

until (num > superior);

writeln('A soma dos números pares de 2 até ', superior,' é ', soma);

readln;

end.

Os criadores da linguagem C

Linguagem criada paradesenvolvimento dokernell do sistemaoperacional Unix

Ken Thompson e Dennis Ritchie (da esquerda pra direita)

Exemplo de Programa Cmain(){

int superior, soma, num, i;

soma = 0;

printf("Entre com limite Superior:");

scanf("%d",&superior);

num = 2;

do {

soma += num;soma += num;

num += 2;

} while(num <= superior);

printf("Soma dos numeros pares de 2 ate %d = %d \n",superior,soma);

printf("------------- Fim ------------");

int d;

scanf("%s",&d);

}

A Linguagem Java

• Desenvolvida nadécada de 90 por umaequipe deprogramadoreschefiada por Jameschefiada por James

Gosling, na empresaSun Microsystems.

Programador Canadense

Foto 2005

Os mentores do projeto eram Patrick Naughton, Mike Sheridan, e James Gosling.

Exemplo de Programa Javaimport java.util.Scanner;

public class Somapar {

public static void main(String args[]){

int superior, soma, num, i;

soma = 0;

Scanner entrada = new Scanner(System.in);

System.out.println("Entre com limite Superior:");

superior = entrada.nextInt();superior = entrada.nextInt();

num = 2;

do {

soma += num;

num += 2;

} while(num <= superior);

System.out.printf("Soma dos numeros pares de 2 ate %d = %d \n",superior,soma);

}

}

(Hardware/Software) Linguagem Residente

Conceito:

Linguagens residentes são ferramentas gravadas emmáquinas em equipamentos e programas decomputador para que se desenvolva programascomputador para que se desenvolva programasespecíficos para softwares ou hardwares.

Exemplo de Linguagens Residentes

Blender3D (Python)

AutoCAD

(AutoLisp/VBA)

Programação para MicrocontroladorMicrocontrolador

Exemplo de Microcontrolador

#include <8051.h>void main(void) {while(true) {if(P1_0 == 1){{

P2_0 = ~P2_0;}

}}

Exemplo de Linguagem para Desenvolvimento de JogosDesenvolvimento de Jogos

Exemplo ActionScript

onClipEvent (enterFrame) {if(Key.isDown (Key.RIGHT )){

_root["Atirador"]._x+=10}

if(Key.isDown (Key.LEFT )){ _root["Atirador"]._x-=10

}}

if(Key.isDown (Key.SPACE)) { _root["Tiro"]._x = _root["Atirador"]._x _root["Tiro"]._y = _root["Atirador"]._y

_root["Tiro"]._visible = true;_root.pontos = 140;//_root.controle_tiro = 1;

}}

Linguagens API (Interface de Aplicação de Programas)Aplicação de Programas)

Conceito de API

São ferramentas compostas porbibliotecas ou pacotes que podem seracoplados com recursos para estender acapacidade de uma linguagens.capacidade de uma linguagens.

Exemplo:

• Swing (Java)

• OpenGL (C++)

• Google Cloud Vision

Linguagem para Computação Gráfica

class Cone {

public static void main(String[] args) {

Navegation.NavegationInfo("Cone");

Materialpr material = new Materialpr();material.setdiffuseColor("0 1 0");BaseCirclepr basecircle = new BaseCirclepr();

basecircle.setheight("2");basecircle.setbottomRadius("1");basecircle.setside("TRUE");basecircle.setbottom("TRUE");

Conepr cone = new Conepr (material,basecircle,"Cone");

Viewpr.display("Cone");

}}