PRC Bruno Correa.

Slides:



Advertisements
Apresentações semelhantes
Algoritmo e Programação
Advertisements

Data: 10 a 12 de fevereiro de 2009 e
Construção de Aplicativos Computacionais METEOROLOGIA
Marco Antonio Montebello Júnior
INTRODUÇÃO – LOGICA E ALGORITMOS
Programação para Geociências
Paradigmas de Linguagens Conceitos Básicos
Algoritmos.
Introdução a Algoritmos Seqüenciais
Lógica de Programação Módulo II
THOBER CORADI DETOFENO, MSC. Aula 06
Estruturas de Controle
Universidade Federal do Espírito Santo
ALGORITMO E ESTRUTURA DE DADOS
Introdução aos Algoritmos
Lógica de Programação Módulo II
INTRODUÇÃO À PROGRAMAÇÃO
Algoritmos Prof. Kelly E. Medeiros.
Professor Fernando Luís
CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
Processamento da Informação BC-05045
O Portal do Estudante de Computação
Lógica de Programação Introdução.
Introdução à Programação
Fluxogramas e Pseudo-código
Introdução Capítulo 1 Lógica de Programação
INTRODUÇÃO – LOGICA E ALGORITMOS
Representação de Algoritmos
Estrutura de dados, pseudocódigo
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação Versão: _01.
ENGENHARIA DE AUTOMAÇÃO INDUSTRIAL
Algoritmos e Programação de Computadores
LINGUAGENS DE PROGRAMAÇÃO PROF. DANIELA PIRES
Introdução a Programação
Algoritmos e Programação de Computadores
TÉCNICAS DE PROGRAMAÇÃO
INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO
2. Lógica de Programação Definição de Lógica Definição de Algoritmo
ALGORITMOS Intensivo Janeiro e Fevereiro de 2011
Introdução a Algoritmos
Fábio de Oliveira Borges
Igor Steinmacher, MSc. O maravilhoso mundo da Lógica de Programação.
Algoritmos Estruturados
Programação de PIC em C Exposição das funções básicas para
Algoritmos e Estrutura de Dados I
ENGENHARIA DE CONTROLE E AUTOMAÇÃO COMPUTAÇÃO PARA ENGENHARIA Aula /02/2013 Professor Leomir J. Borba- –
Algoritmo e Programação
Algoritmos e Estrutura de Dados I
Linguagens de Programação
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos Aquiles Burlamaqui UERN
Fundamentos de linguagens de programação
Programação de Computadores - 1
Algoritmos e Programação MC102
Autor: Francisco Airton Professor: André Didier
Algoritmos e Programação I
ALGORITMOS.
Linguagens de Programação MÓDULO 1- Introdução à Programação e Algoritmia Pedro Lopes.
Faculdades Integradas Camões
Exercícios Faça um algoritmos para trocar uma lampada queimada.
Curso Engenharia Química Modalidade Superior Instituto Federal do Sul de Minas, câmpus Pouso Alegre Professora Michelle Nery Programação de Computadores.
Algoritmos e Estruturas de Dados I - Introdução
Disciplina: Lógica de Programação
Projeto e Desenvolvimento de Algoritmos
INTRODUÇÃO THOBER CORADI DETOFENO, MSC. Aula 01 JOINVILLE 2015 Universidade do Estado de Santa Catarina – CCT/UDESC.
Introdução à Lógica de Programação (2)
Lógica de Programação { para iniciantes }. O que é { lógica de programação }? é a técnica de organizarmos nossos pensamentos de forma clara e sequencial.
Introdução a Programação Aula 01 Jackson Eduardo
Linguagem de Programação Prof. Fabricio Roulin Bittencout
Adriano A. Ribeiro. O que é Lógica de Programação Lógica de programação nada mais é do que uma forma de se escrever um programa de computador com uma.
Lógica de programação Introdução à lógica de programação
Transcrição da apresentação:

PRC Bruno Correa

Professor Bruno Correa Formação Ocupação Contatos Mestrado: IME - Instituto Militar de Engenharia Graduação: IST- Petrópolis Ocupação Bolsista no LNCC Professor ISTs Paracambi e Petrópolis Contatos brunos@lncc.br

Disciplina PRC – Programação de Computadores 42 aulas Algoritmos Apenas caneta e papel Linguagem C Turbo C DEV 42 aulas

Avaliação Trabalhos C Provas 05 ou 06 de Outubro 01 de Dezembro

O que são Algoritmos Um algoritmo é uma seqüência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema O termo algoritmo está muito ligado à Ciência da Computação, mas, na realidade, ele pode ser aplicado a qualquer problema cuja solução possa ser decomposta em um grupo de instruções. Exemplo São exemplos de algoritmos instruções de montagem, receitas, manuais de uso, etc.

Algoritmos Um algoritmo é uma solução para um problema. Em geral, existem muitos (senão infinitos) caminhos que levam a uma solução satisfatória.

Exemplo de Algoritmo Ligação telefônica

Exemplo de Algoritmo O algoritmo acima, no entanto, poderia ser mais detalhado e completo.

Exemplo Algoritmo

Pergunta Um algoritmo não pode conter um comando para como: “Escreva todos os termos da sequencia Fibonacci”. por quê?

Representações de Algoritmos Linguagem Natural Os algoritmos são expressos diretamente em linguagem natural (ex.o português como no exemplo do bolo). Fluxograma Esta é um representação gráfica que emprega formas geométricas padronizadas para indicar as diversas acções e decisões que devem ser executadas para resolver o problema. Pseudo-linguagem Emprega uma linguagem intermediária entre a linguagem natural e uma linguagem de programação para descrever os algoritmos.

Linguagem Natural Algoritmo para trocar uma lâmpada 1 – verifico se a lâmpada realmente está queimada 2 – compro uma lâmpada nova 3 – subo na escada 4 –retiro a lâmpada queimada 5 – coloco a lâmpada nova

Fluxograma

Pseudo-linguagem Para que o algoritmo possa ser executado por uma máquina é importante que as instruções sejam corretas e sem ambigüidades. Portanto, a forma especial de linguagem que utilizaremos é bem mais restrita que o Português e com significados bem definidos para todos os termos utilizados nas instruções. Essa linguagem é conhecida como Português Estruturado (às vezes também chamada de Portugol).

Portugol O Portugol é, na verdade, uma simplificação extrema do Português, limitada a umas poucas palavras e estruturas que têm um significado muito bem definido. Ao conjunto de palavras e regras que definem o formato das sentenças válidas chamamos sintaxe da linguagem. Aprender as palavras e regras que fazem parte dessa sintaxe é fundamental; no entanto, não é o maior objetivo deste curso.

Exemplo Portugol

Algoritmos Computacionais O computador, a princípio, é uma máquina burra. Para que ele faça uma determinada tarefa - calcular uma folha de pagamento, por exemplo -, é necessário que ele execute um programa. Um programa é um conjunto de milhares de instruções que indicam ao computador, passo a passo, o que ele tem que fazer.

Algoritmos Computacionais Uma linguagem de programação contém os comandos que fazem o computador escrever algo na tela, realizar cálculos aritméticos, receber uma entrada de dados via teclado, e milhares de outras coisas, mas estes comandos precisam estar em uma ordem lógica.

Linearização de Expressões Para a construção de algoritmos que realizam cálculo matemáticos, todas as expressões aritméticas devem ser linearizadas

Operadores Aritméticos

Operadores Relacionais Exemplo: 2+5>4 resulta VERDADEIRO 3<>3 resulta FALSO

Operadores Lógicos Os operadores lógicos atuam sobre expressões e também resultam em valores lógicos VERDADEIRO ou FALSO.

Operadores Lógicos Exemplos (2+5>4) e (3<>3) resulta FALSO, pois VERDADEIRO e FALSO resulta FALSO. (2+4>8) ou (3=3) resulta VERDADEIRO, pois VERDADEIRO ou FALSO resulta VERDADEIRO

Tabela Verdade A tabela abaixo – chamada tabela-verdade – mostra os resultados das aplicações dos operadores lógicos conforme os valores dos operadores envolvidos.

Exercícios Usando as informações da tabela verdade reponda se as seguintes operações são verdadeiras ou falsas: 8 é par OU 6 é ímpar 8 para E 6 é ímpar (8+3) > 4 (8 <> 0) E (6>7) E ( 7 = 7)

Prioridade nas operações Operações Aritméticas (2 + 2)/2 resulta 2 e 2 + 2/2 resulta 3

Prioridade nas operações (2>3) ou (3<2) e (2<3) //resultado seria Falso (2>3) e (3<2) ou (2<3) //resultado seria Verdadeiro

Exercícios (2>3) ou (3<2) e (2<3) (2>3) e (3<2) e (2<3) (44>3) ou (3<2) e (2<3) (1<3) e(3<2) ou (2<3) (4<>3) ou (3=3) ou (2<3)

Linguagem C Desenvolvida a partir de duas linguagens anteriores: BCPL B Hoje é a segunda linguagem mais utilizada no mundo Compiladores GCC G++ Dev-C++ C++ Builder – Borland Visual C++ - Microsoft

Linguagem C O C é "Case Sensitive“ vamos começar o nosso curso ressaltando um ponto de suma importância: o C é "Case Sensitive", isto é, maiúsculas e minúsculas fazem diferença. Se declararmos uma variável com o nome soma ela será diferente de Soma

Um programa simples – Imprimir uma linha de texto

Compilando um programa em C Utilizando o compilador GCC via terminal gcc <nome do arquivo>.c –o <nome do executavel> Exemplo: gcc main.c –o main A extensão dos arquivos de código do C são sempre .c

Executando um programa em C Chamamos o executavel que foi gerado na compilação main ./main

Aspectos importantes Apesar de ser um programa simples ele já apresenta alguns aspectos interessantes A primeira linha começando /* e terminando com */ apresenta um comentário Os comentários são ignorandos pelos compiladores

Aspectos importantes A linha main() Os programas em C possuem uma ou mais funções e uma delas deve ser chamada main Todos os programas em C começam a ser executados pela função main

Aspectos importantes A chave esquerda, {, deve começar o corpo de todas as funções. Uma chave direita, }, equivalente deve terminar cada função. Este par de chaves e a parte do programa entre elas também é chamado um bloco.

Aspectos importantes A linha printf("Bem-vindo ao C!\n"); manda o computador realizar uma ação, especificamente imprimir na tela a string de caracteres limitada pelas aspas A linha inteira, incluindo printf, seus argumentos dentro dos parênteses e o ponto-e-vírgula (;), é chamada uma instrução.

Aspectos importantes Todas as instruções devem terminar com um ponto-e-vírgula Observe que os caracteres \n não são impressos na tela. A seqüência de escape \n significa nova linha e faz com que o cursor se posicione no início da nova linha na tela.

Algoritmos X C

Variáveis

Variáveis Uma variável pode ser vista como uma caixa com um rótulo ou nome colado a ela, que num dado instante guarda um determinado objeto. O conteúdo desta caixa não é algo fixo, permanente. Na verdade, essa caixa pode ter seu conteúdo alterado diversas vezes Contudo, o conteúdo deve ser sempre do mesmo tipo.

Variáveis Variáveis são palavras que tem um significado bem específico em um algoritmo. Para que o computador possa executar comandos que envolvem variáveis da maneira correta, ele deve conhecer os detalhes das variáveis que pretendemos usar. Esses detalhes são: identificador desta variável (nome) tipo de valores que essa variável irá conter

Variáveis A identificação ou nomeção de variáveis segue algumas regras: nomes de variáveis não podem ser iguais a palavras reservadas; nomes de variáveis devem possuir como primeiro caractere uma letra ousublinhado '_' (os outros caracteres podem ser letras, números e sublinhado); nomes de variáveis devem ter no máximo 127 caracteres; nomes de variáveis não podem conter espaços em branco; na sintaxe do Português Estruturado, não há diferença entre letras maiúsculas de minúsculas (NOME é o mesmo que noMe).

Variáveis Exemplos Inválidos Válidos NOME, TELEFONE, IDADE_FILHO, IdadeFilho, NOTA1, Inválidos 3Endereco, Estado Civil, PARA, algoritmo, numero/complemento

Palavras Reservadas

Tipos de Dados

ASCII ASCII (acrônimo para American Standard Code for Information Interchange, que em português significa "Código Padrão Americano para o Intercâmbio de Informação“) é uma codificação de caracteres de sete bits baseada no alfabeto inglês. Os códigos ASCII representam texto em computadores, equipamentos de comunicação, entre outros dispositivos que trabalham com texto.

ASCII Desenvolvida a partir de 1960, grande parte das codificações de caracteres modernas a herdaram como base A codificação define 128 caracteres, preenchendo completamente os sete bits disponíveis Desses, 33 não são imprimíveis, como caracteres de controle atualmente não utilizáveis para edição de texto porem amplamente utilizado em dispositivos de comunicação, que afetam o processamento do texto.

Caracteres não imprimíveis

Caracteres não imprimíveis

Caracteres imprimíveis

Testando caracteres

Lendo valores

Exercício Construa um algoritmo que lê as notas de um aluno e calcule e exibe a média harmônica das provas.

Resposta

Exercício Construa um algoritmo que lê o valor do raio e calcule a área do círculo correspondente. Etapa 1: o cálculo da área do círculo é

Resposta