Algoritmos e programação

Documentos relacionados
Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

Organização de programas em Python. Vanessa Braganholo

Introdução a Computação

Algoritmos e Programação Parte Teórica

Introdução à Programação Aula 2 Introdução à linguagem Python

7. Estrutura de Decisão

Conceitos básicos da linguagem C

A Linguagem Python: Uma visão geral. Prof. Alberto Costa Neto Programação em Python

5 Apresentando a linguagem C

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

ALGORITMOS E FLUXOGRAMAS

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

e à Linguagem de Programação Python

Organização de Computadores Software

Processamento da Informação Teoria. Algoritmos e Tipos de dados

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

Objetivos do mini curso. Conhecer a linguagem. Noção de programação utilizando Python. Aprender o báscio.

INTRODUÇÃO AO JAVA PARA PROGRAMADORES C

TUTORIAL AMBIENTE WEB PORTUGOL

ILP - Introdução à Linguagem de Programação. Plano de estudo: - Constantes e variáveis. - Atribuindo valores às variáveis.

Lógica para a Programação - 1º semestre AULA 01 Prof. André Moraes

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação

Programando em C++ Histórico da Linguagem C

Oficina de Programação em Python direcionada para o desenvolvimento de jogos

Linguagens de programação

Variáveis, Expressões e Comandos. Prof. Alberto Costa Neto Programação em Python

Implementando uma Classe e Criando Objetos a partir dela

9 Comandos condicionais

Programação Orientada a Objeto

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

- Aulas 57, 58, 59 e 60 - Técnicas de programação. Funções

O que é um algoritmo? O que é um programa? Algoritmos. Programas. Aula 1 Tipo Abstrato de Dados

CURSO B SICO DE PERL

OBI2012 Caderno de Tarefas

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo

Computação II Orientação a Objetos

Fábio Rodrigues Jorge.

Programação WEB II. Conhecendo o PHP. Prof: Kelly E. Medeiros Bacharel em Sistema de Informação. Módulo III

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

Programação científica C++

Orientação a Objetos. Conceitos Iniciais Introdução a Linguagem Java. Gil Eduardo de Andrade

2 echo "PHP e outros.";

Aula 14: Instruções e Seus Tipos

UNIDADE 6 - PROGRAMAÇÃO MODULAR

Algoritmos e Programação. Curso de Engenharia de Produção Prof. Ms. Rogério Cardoso rogerio.cardoso@aedu.com professor@rogeriocardoso.com.

Convertendo Algoritmos para a Linguagem C

Definição de Programas de Computadores e Linguagem de Programação de Comutadores

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TÉCNICO EM INFORMÁTICA DISCIPLINA:

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Sessão 2 UFCD 0804 Algoritmos

Ruby. Simplicidade e produtividade

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes

Estrutura de Dados Básica

LÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL

Linguagem de Programação

Aprendendo Python na Prática. Dante Moreira Zaupa Mestrando em Computação Aplicada Bolsista de Pesquisa

Figure 2 - Nós folhas de uma árvore binária representando caracteres ASCII

1 Expressões, valores e tipos 1. 2 Variáveis e atribuições 5. cálculo de expressões segue a estrutura de parênteses e as prioridades dos operadores

Python. Introdução à Programação SI1 - BSI

Algoritmos e Técnicas de

QUITETURA AVANÇADA DE SISTEMAS

Lógica de programação Instrução Algoritmo Diferença entre algoritmo e programa

Programação: Estruturas de seleção

Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos

MAB224 Programação de Computadores II. Prof. Franklin Marquezino Universidade Federal do Rio de Janeiro

Aula 10 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

TÉCNICAS DE PROGRAMAÇÃO

Tipo Abstrato de Dados

Simulado Informática Concurso Correios - IDEAL INFO

Introdução à Engenharia ENG1000

Carga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java

Python Intermediário. terça-feira, 4 de agosto de 15

TÉCNICAS DE PROGRAMAÇÃO 1 INTRODUÇÃO A ALGORITMOS

Programação Estruturada

Aula 4: adivinhe o número

Python: Comandos Básicos. Claudio Esperança

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

insfcanceof new public switch transient while byte continue extends for int null

Arquivos. Prof. Alberto Costa Neto Programação em Python

Estruturas de Repetição

2 Orientação a objetos na prática

Universidade Federal de Minas Gerais Instituto de Ciências Agrárias

Programando com Python. Prof. Diemesleno Souza Carvalho

ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

INTRODUÇÃO À LINGUAGEM C++

Python Funções. Introdução à Programação SI1

Virtual Box. Guia. Instalação E Utilização. Criado por Wancleber Vieira wancleber.vieira@ibest.com.br

Tipos de Dado Abstrato: Listas, Filas e Pilhas

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Revisão Aula Anterior Estruturas de Decisão (If e Switch)

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Transcrição:

Algoritmos e programação Introdução à Programação Prof. Bonadia dos Santos

Conceitos básicos Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho. Dentre essas máquinas o computador vem se mostrando uma das mais versáteis, rápidas e seguras!

Conceitos básicos Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho. Dentre essas máquinas o computador vem se mostrando uma das mais versáteis, rápidas e seguras! O computador pode auxiliá-lo em qualquer tarefa! É consciente, trabalhador, possui muita energia, não reclama, MAS não tem iniciativa, nenhuma independência, não é criativo nem inteligente, por isso precisa receber instruções nos mínimos detalhes!!!

Linguagens de Programação Um programa é uma sequência de instruções escritas em alguma linguagem compreendida pelo computador. A função de uma linguagem de programação é ser Ajudando um meio a Riley de comunicação (personagem do entre filme computadores Divertida Mente ) e a resolver alguns pequenos humanos. problemas da vida sua vida. https://www.madewithcode.com/projects/insideout Desde que o computador eletrônico foi inventado centenas de linguagens já foram criadas.

Linguagens de Programação Um programa é uma sequência de instruções escritas em alguma linguagem compreendida pelo computador. A função de uma linguagem de programação é ser um meio de comunicação entre computadores e humanos. É através delas que podemos escrever nosso programas Desde que o computador eletrônico foi inventado centenas de linguagens já foram criadas.

Linguagens de Programação Podemos classificar as linguagens de programação em dois tipos: as de baixo nível e as de alto nível. Uma linguagem de programação de baixo nível compreende as características da arquitetura do computador (utiliza somente instruções do processador). Já as linguagens de programação de alto nível são aquelas que se encontram mais próximas à linguagem natural (são mais fáceis de se trabalhar e de entender).

Linguagens de Programação O computador só consegue executar programas escritos em linguagens de baixo nível. Deste modo, programas escritos em linguagens de alto nível precisam ser processados antes que possam rodar. Este processamento toma algum tempo, mas possui várias vantagens!

Linguagens de Programação 1) É mais fácil e rápido escrever programas em uma linguagem de alto nível; 2) Programas escritos em uma linguagem de alto nível são mais curtos e mais fáceis de ler; 3) As linguagens de alto nível são portáveis, o que significa que podem rodar em diferentes tipos de computador, com pouca ou nenhuma modificação. Neste curso, utilizaremos a linguagem Python para implementarmos os algoritmos!

Algoritmos O que é um algoritmo? (Relembrando...) Algoritmo é uma sequência de passos que visa atingir um objetivo bem definido. (Forbellone, 1999) Algoritmo é a descrição de uma sequência de passos que deve ser seguida para a realização de uma dada tarefa. (Assencio, 1999) Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas para resolver um problema ou realizar algum objetivo.

Algoritmos O que é um algoritmo? (Relembrando...) Algoritmo é uma sequência de passos que visa atingir um objetivo bem definido. (Forbellone, 1999) Algoritmo Algoritmo é a descrição é de uma sequência receita de passos que deve ser seguida para a realização de uma para resolução de um dada tarefa. (Assencio, 1999) problema! Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas para resolver um problema ou realizar algum objetivo.

Algoritmos Problema: Preparar Bife à milanesa : 1. Limpar a peça de carne 2. Fatiar a carne em bifes 3. Colocar farinha de rosca em um prato 4. Juntar 2 ovos e mexer 5. Repetir, para cada bife 5.1) passar o bife na mistura de farinha, nos 2 lados 5.2) levar bife à frigideira 5.3) aguardar dourar, virando ambas as faces 5.4) retirar bife e colocar sobre papel toalha até secar 5.5) retirar do papel toalha e juntar numa travessa 6. Servir

DESCRIÇÃO NARRATIVA * Solução (passo-a-passo) escrita em linguagem natural Algoritmos e programação Tipos de algoritmos (Relembrando...) Vantagem: não é necessário aprender nenhum conceito novo Desvantagem: ocorrência de ambiguidades FLUXOGRAMA * A solução é expressa por símbolos gráficos pré-definidos Vantagem: compreensão mais simples que texto Desvantagem: necessário aprender a simbologia; ausência de detalhes que podem dificultar a implementação PSEUDOCÓDIGO OU PORTUGOL * A solução (passo-a-passo) é expressa por meio de regras pré-definidas Vantagem: implementação é quase imediata Desvantagem: aprender as regras do pseudocódigo

Lógica de programação Relembrando... Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. 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.

Programando em Python...

Programando em Python Python é uma linguagem de programação poderosa e de fácil aprendizado. Alto nível Interpretada Criada em 1989 por Guido van Rossum Python 2 e Python 3 (versões)

Programando em Python O que nós precisamos para começar a programar? Um computador O interpretador Python instalado no computador

Interpretador de comandos Um recurso interessante do Python é o interpretador interativo, nele você vai digitando os comandos da linguagem e recebendo as respostas na hora. 1) Abra o terminal (atalho no linux: ctrl + alt + t) 2) Digite python $ python Python 2.7.6 (default, Jun 22 2015, 17:58:13) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>

Python como uma calculadora O interpretador pode ser usado como uma calculadora bem simples: você pode digitar uma expressão e o resultado será apresentado. Operadores: + (soma), - (subtração), / (divisão), * (multiplicação), % (módulo), ** (potência) >>> 2+2 4 >>> (50-5*6)/4 5 >>> 7/3 2 >>> 7/-3-3

Tipos básicos de dados Números inteiros Números fracionários Strings Booleanos (verdadeiro ou falso) >>> type(2) <type 'int'> >>> type(2.2) <type 'float'> >>> type("introdução") <type 'str'> >>> type(true) <type 'bool'>

Variáveis Variáveis são locais onde armazenamos informações do programa na memória. Toda variável deve possuir um nome que a identifica no programa. Algumas regras para nomes de variáveis: Nomes podem ser compostos de números, letras ou _ O primeiro caractere não pode ser um número Palavras reservadas (if, for e outras palavras que representam comandos da linguagem) são proibidas

Variáveis Palavras reservadas: and, def, exec, if, not, return, assert, del, finally, import, or, try, break, elif, for, in, pass, while, class, eles, from, is, print, yield, continue, except, global,lambda, raise

Variáveis Variáveis são criadas dinamicamente e destruídas quando não mais necessárias O tipo (int, float, string, etc) de uma variável muda conforme o valor atribuído a ela. O comando de atribuição ( = ) cria novas variáveis e dá a elas valores: >>> var_exemplo = 2

Variáveis >>> var_exemplo = 2 >>> var_exemplo + 1 3 >>> var_outroexemplo = "exemplo" >>> var_outroexemplo 'exemplo' >>> var_exemplo + var_outroexemplo Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str' >>> type(var_exemplo) <type 'int'> >>> type(var_outroexemplo) <type 'str'>

Variáveis >>> var_exemplo = 2 >>> var_exemplo + 1 3 >>> var_outroexemplo = "exemplo" >>> var_outroexemplo 'exemplo' >>> var_exemplo + var_outroexemplo Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str' >>> type(var_exemplo) <type 'int'> >>> type(var_outroexemplo) <type De 'str'> maneira geral, você não pode executar operações matemáticas em strings

O comando print O comando print imprime uma expressão na tela. Um texto, uma variável... >>> print "Hello World" Hello World >>> print 'Hello World' Hello World >>> print ('Hello World') Hello World >>> print ("Hello World") Hello World >>> curso = "Computação" >>> print (curso) Computação

O comando print Imprimindo múltiplas mensagens: >>> print ('Hello', 'World') Hello World >> firstname = ''Harry'' >> lastname = ''Potter'' >> print (firstname, lastname) ('Harry', 'Potter') >> print (''Hello '', firstname) >> ('Hello ', 'Harry')

O comando print Concatenando mensagens >>> print ('Hello' + 'World') HelloWorld >> print ('Hello' + ' ' + 'World') >> Hello World >> firstname = "Harry" >> lastname = "Potter" >> print (firstname+lastname) HarryPotter >> print (firstname + ' ' + lastname + 'and the Chamber of Secrets') Harry Potterand the Chamber of Secrets

O comando input O comando input permite perguntar ao usuário um valor. Este comando espera que se digite algo que faça sentido. Normalmente o valor digitado pelo usuário é atribuído a uma variável. >>> mes = input("em que mes estamos? ") Em que mes estamos? "maio" >>> print(mes) maio

Criando um programa Utilize um editor de sua preferência para escrever seu código; Salve o arquivo com extensão.py Exemplo: primeiro.py Para rodar o programa vá no terminal e digite: $ python primeiro.py

Algumas referências Aprenda Computação com Python s documentation! http://www3.ifrn.edu.br/~jurandy/fdp/doc/aprenda-python/index.html Notas de aula do professor Fábio Mascarenhas http://www.dcc.ufrj.br/~fabiom/mab225/ Aulas de Python do InFog http://blog.evaldojunior.com.br/aulas-de-python.html