ESTRUTURA DE DADOS (TCC ) Cristina Boeres
|
|
- Kevin Ximenes Salazar
- 6 Há anos
- Visualizações:
Transcrição
1 ESTRUTURA DE DADOS (TCC ) Cristina Boeres
2 Estrutura de Dados (TCC ) 2 Tópicos Principais! Introdução! Tipo Abstrato de Dado (TAD)! Noções inicias de algoritmos! Listas, Pilhas e Filas (sequencial e encadeada)! Listas ordenadas! Heap: lista de prioridades! Árvores binárias e árvores binárias de busca
3 Estrutura de Dados 3 Bibliografia:! J. Szwarcfiter e L. Markeson, Estrutura de Dados e Algoritmos, Editora LTC.! Cormen, Leiserson and Rivest, Introduction to Algorithms, MIT Press. Informações da disciplina! (
4 4 Introdução! Implementação de uma Aplicação! representa uma abstração da realidade! consiste de um conjunto selecionado de dados relacionados com o problema a ser resolvido! deste conjunto, é possível a obtenção dos resultados esperados
5 Introdução 5 Modelo Abstrato! Cadastro de Pessoal de uma Empresa! Empregado - conjunto de dados! os que são relevantes para o empregador e para os procedimentos contábeis da empresa! identificação, salário, dependentes,...! abstraímos dos dados irrelevantes! cor do cabelo, estatura, peso
6 Introdução 6 Resolução de um problema! escolher uma abstração da realidade! o que é relevante para resolver o problema! informação! um conjunto de dados! comportamento! um conjunto de operações a forma como se representa informação e suas operações estão intimamente ligadas
7 Introdução 7 Dados Relevantes em um Problema! escolher um conjunto de dados! uma representação possível da situação real! orientada às características do problema! os dados precisam ser representados! a etapa seguinte é a escolha de uma forma de representação
8 Algoritmo 8! Um processo sistemático para a resolução de problemas! Computa uma saída (o resultado do problema) a partir de uma entrada! durante o processo, manipula dados gerados a partir de sua entrada! dados dispostos e manipulados de forma homogênea: Tipo Abstrato de dados! um conjunto de dados + operações que podem ser executadas sobre esses dados
9 Tipo Abstrato de Dados 9! Variável! armazena um dado que pode ser operado ao longo da execução do algoritmo! É uma abstração, que tem associado alguns atributos:! nome! endereço: local de memória! valor: o que está armazenado em um determinado momento! duração: tempo durante a execução do algoritmo em que a variável está ativa (alocada)! escopo: a variável está visível para uma série de regiões do programa (local ou global).! tipo: qual conjunto de valores pode ser associado e consequentemente, o conjunto de operações pode ser definido! tamanho: tamanho do espaço de memória que armazena os valores da variável
10 Tipo Abstrato de Dados 10! int! é um tipo abstrato de dados! o programador abstrai de todos os detalhes dos atributos! estrutura aluno struct aluno{ int matricula; int nome; char outras_info[1024]; }! operação: procura_aluno_matricula ( aluno.matricula );
11 Algoritmo e Estrutura de Dados 11! Um algoritmo é projetado em termos de Tipos Abstratos de Dados! Para implementá-lo em uma linguagem de programação:! temos que saber como representar os tipos na linguagem! quais são as operações suportadas pelo computador na sua representação emprega-se Estruturas de Dados
12 12 Algoritmos e Estruturas de Dados! Resolução de um Problema! Algoritmo! representação do comportamento! Estrutura de Dados! representação da informação
13 13 Algoritmos e Estruturas de Dados! No processo de construção de programas: formulação do algoritmo definição de estruturas de dados estão intimamente ligadas
14 14 Algoritmos e Estruturas de Dados! Decisões sobre estruturas de dados não podem ser tomadas sem conhecimento dos algoritmos aplicados e vice-versa! Num algoritmo vamos distinguir dois aspectos complementares:! estático e dinâmico
15 15 Estrutura de Dados! Como a informação é organizada, como será manipulada e como será utilizada! estudo envolve dois objetivos complementares:! Identificar e desenvolver entidades matemáticas e operações! Determinar que classes de problemas podem ser resolvidas usando essas entidades e operações
16 16 Algoritmo! Um texto contendo comandos (instruções)! devem ser executados na ordem especificada! corresponde a representação concreta e tem caráter estático! esse texto nos interessa pelos efeitos que causa decorrentes de sua execução dado um conjunto de valores iniciais! execução: evento dinâmico " evolui no tempo
17 Algoritmo 17! Uma dificuldade na concepção e no entendimento de algoritmos é o relacionamento dos aspectos estático e dinâmico! como entender as estruturas dinâmicas das possíveis execuções do algoritmo a partir da estrutura estática
18 18 Algoritmo! Através da utilização de Estruturas Básicas de controle! formas naturais de pensar e adequadas à construção de algoritmos inteligíveis. Por exemplo:! SE (... ) ENTÃO {...} SENÃO {...}
19 Algoritmo 19! Estado de um dado sistema é o conjunto de propriedades desse sistema que são relevantes na situação considerada! conjunto de valores de variáveis de um programa! Ação - evento que ocorre num período de tempo finito estabelecendo um efeito desejado e bem definido! ação: o interesse é decorrente do efeito produzido! execução de uma operação
20 20 Algoritmo! Em todo evento pode-se reconhecer um padrão de comportamento, fazendo-se abstração de diferentes estados iniciais e efeitos! cada vez que o padrão de comportamento é seguido, o evento ocorre! seu efeito é totalmente determinado pelo padrão de comportamento e pelo estado inicial
21 Algoritmo 21! É a descrição de um padrão de comportamento, em termos de um repertório bem definido e finito de ações primitivas, que podem ser executadas! possui um caráter imperativo! uma ação no algoritmo: um comando! é uma norma executável para estabelecer um certo efeito desejado
22 22 Apresentação dos Algoritmos! formato livre com comandos das linguagens estruturadas! estrutura de blocos! indentação! funções! Linguagem C-like
23 Processamento de um Programa 23 ( a>b ) If { ( maior printf ( A é } else { ( maior printf ( B é } Tradutor: Compilador + Linkeditor A é maior
24 Processamento de Linguagens 24! Linguagens de Programação: são projetadas em função da facilidade na construção e confiabilidade dos programas! Como executar em arquiteturas diferentes?! Duas alternativas:! Interpretação! Tradução
25 Interpretação 25 1) Obter o próximo comando do programa 2) Determinar que ações devem ser executadas 3) Executar essas ações! Esta seqüência é bastante semelhante àquela executada por processadores tradicionais: 1 Obter a próxima instrução (PC) 2 Incrementar o PC 3 Decodificar a instrução 4 Executar a instrução
26 Tradução 26! Programas escritos em LP de alto nível são traduzidos para versões equivalentes em linguagem de máquina antes de serem executados meuprog.c tradução meuprog.exe
27 Tradução 27! Essa tradução pode ser dita ser realizada nos passos! Compilação! Linkedição! Loader (carga)
28 Compilação 28! Pode ser dividida em 2 grandes partes:! análise do programa fonte (dados de entrada)! síntese do programa objeto executável! cada arquivo do programa fonte deve ser compilado separadamente, e um arquivo objeto é gerado meuprog.c compilação meuprog.obj
29 29 Síntese do programa objeto! A saída da compilação! programas quase executáveis (*.obj)! podem fazer referências a dados externos ou outros programas! Linkedição: une diversos *.obj em um programa executável pronto para rodar
30 30 Programa executável (aplicação) pgm1.c compilação pgm1.o pgm2.c ( a>b ) If { ( maior printf ( A é } else { ( maior printf ( B é } pgm3.c compilação ( a>b ) If { ( maior printf ( A é } else { ( maior printf ( B é } compilação pgm2.0 pgm3.0 linkedição programa.exe
31 31 Programa executável (aplicação)! Linkedição! um procedimento para finalizar a resolução de referências! programas podem ser traduzidos separadamente! ou utiliza-se uma biblioteca
32 32 Visão Geral de um Programa! O Problema: calcular a soma de três números requisita a entrada dos números a serem somados Calcular a soma de três números Imprimir o resultado
33 33 Visão Geral de um Programa! Este programa não faz muita coisa! Como seleciona os números a somar?! Não imprime nenhuma mensagem explicativa?! Que tipos de números soma?
34 Visão Geral de um Programa 34 Definindo melhor o problema Exibir para o usuário o que faz o programa Exibir o que espera como entrada Pedir os três valores (A, B,C) e armazenar Somar A + B + C e guardar em SOMA Exibir o valor SOMA ao usuário
35 35 Modelo de um Programa Entrada Processa a Entrada Saída! Este é um modelo seguido pelos programas! Um programa tem que ser capaz de armazenar sua entrada em algum lugar
36 36 Modelo de um Programa! Para executar um programa: MP CPU disco meuprog.exe
37 37 Modelo de um Programa! o executável contém: meuprog.exe! comandos em linguagem que a CPU entende! espaço para armazenar os dados: variáveis e constantes! as estrutura de dados
38 38 Modelo de um Programa! Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada! Dados são armazenados em variáveis! posições de memória com um nome que podem conter dados! as variáveis podem conter tipos diferentes de dados
39 39 Variáveis e Tipos de Dados! Variáveis podem conter valores diferentes durante a execução do programa! os valores são consistentes com o tipo da variável! Alguns valores não devem ser alterados durante a execução! Constantes
40 40 Variáveis e Tipos de Dados! Dados em variáveis ou constantes podem ser de diferentes tipos! inteiros ( curtos / longos)! reais - ponto flutuante! precisão simples ou dupla! caracteres isolados! string de caracteres
41 41 Variáveis! Variável é algo que se altera! Dados armazenados em uma variável podem se modificar! Em um programa! definir uma variável significa reservar uma memória para armazenar seus valores
42 42 Variáveis! Deve-se atribuir às variáveis nomes que o ajudem a lembrar a finalidade de cada uma delas! Nomes mais longos tornam seu programa mais claro! outros podem ter que revisar seu código! pode ser necessário revisar o programa daqui a 6 meses
43 43 Nomes! Elemento básico da Linguagem! Identificadores dão nomes a:! Variáveis! Trechos de Programa
44 44 Nomes! C- Padrão ANSI: nomes de variáveis, funções, rótulos == identificadores! Tamanho! 1 a diversos caracteres: pelo menos os 61ºs são válidos! 1o. caracter! letra ou sublinhado! letras maiúsculas e minúsculas são tratadas diferentemente
45 45 Blocos! um conjunto de comandos com uma função bem definida! serve para definir os limites onde as variáveis declaradas em seu interior são conhecidas! Variáveis locais a blocos e globais a blocos! Blocos podem possuir um nome: sub-programas (funções no C) ou não! são delimitados por { }
46 46 Tipo de Dados! Existe distinção entre! variáveis reais, complexas e lógicas! valores individuais e conjunto de valores! funções
47 47 Tipo de Dados! Esta noção de classificação é muito importante! Cada constante, variável, expressão ou função é de um certo tipo! refere-se ao conjunto de valores que pode assumir
48 Tipo de Dados 48! Em programas (em geral), não é possível deduzir o tipo da variável a partir do seu contexto! é necessário explicitar o tipo de cada variável! a cada tipo de dados está associada uma representação na computador! é necessário conhecer o tipo de dados para saber qual a sua representação
49 49 Tipo de Dados! A cada tipo de dados está associado:! uma representação! o tamanho de células de memória para armazenar esta representação! a área de memória onde ficará o valor da variável tem que ter dimensões compatíveis com a sua representação! conjunto de valores que variáveis de um dado tipo podem assumir
50 Tipo de Dados 50! As operações exigem argumentos de um dado tipo e produzem resultados do mesmo tipo! É importante para o compilador saber o tipo de cada variável antes de empregá-la em uma operação
51 51 Definição de Variáveis! int X1! float A, B;! char Nome;
52 Definição de Variáveis 52! A semântica da declaração de uma variável corresponde a! criação de locais na memória rotulados com o nome da variável (identificador)! o tipo de valores que ela pode conter! tamanho e forma de representação! No exemplo:! X1: é o nome do local de memória que só pode conter variáveis do tipo inteiro! A e B só podem conter variáveis do tipo real
53 53 Compatibilidade de Tipos! É importante observar que:! o resultado da expressão do lado direito de um comando de atribuição deve ser coerente com o tipo declarado para a variável do lado esquerdo! a = b+c; b e c float então a deve ser float
54 Expressões 54! forma linearizada usada na matemática! Operadores Aritméticos! +, -, *, / ( inteiros (divisão de 1 = 3/2!! Precedência: da matemática! uso de parênteses! a = b+c * (x*y-5);! a = a+2;! mod : resto da divisão inteira
55 55 Expressões! Operadores Lógicos! E (&&)! OU ( )! NEGAÇÃO (!)! Conectivos relacionais! >, <, >=, <=, ==,!=
56 Expressões 56! Prioridades para operações mistas! 1o. : parênteses e funções! 2o. : expressões aritméticas *, / +, - (binários)! 3o. : comparações! 4o. :!! 5o. : &&! 6o. : >, >=, <, <=, ==,!=
57 57 Comentários! Uma anotacão! Servem para ajudar a explicar a codificação! Seu programa deve ser compreendido por qualquer outro programador! /* COMENTÁRIO..*/! // comentário até o fim da linha
58 Comentários 58! Devem ser utilizados com liberalidade em todo o programa! Devem explicar seu algoritmo! Estão relacionados com a solução do problema! Não devem ser óbvios
59 59 Atribuição! Atribuição! designam valores a uma variável! A = B; /* Faz A = B */! /* Este é um comentário óbvio - desnecessário */! os valores atribuídos a uma variável devem ser compatíveis com seu tipo! Sintáxe: identificador = valor ;
60 60 Operações Especiais do C! Incrementando 1:! i++;! ++i;! Decrementando 1:! i--;! --i;
61 61 Fluxo de Controle! o que deve ser executado: processo dinâmico! determina em cada passo da execução, qual o próximo comando a ser executado! a ordem de execução das ações é a chave para entender o funcionamento do algoritmo! depende dos dados de entrada
62 62 Estruturas Básicas de Controle! Um algoritmo deve ser determinístico:! dada as mesmas condições iniciais deve produzir a final da execução os mesmos resultados! só estamos interessados em algoritmos que terminam em um tempo finito! Programas:! uma certa espécie de algoritmos
63 63 Estruturas Básicas de Controle! Seqüenciamento:! Separa um comando do outro e determina a execução em seqüência dos comandos! estrutura de controle mais simples: seqüência simples traz a cesta com batatas; traz a panela do armário; coloca o avental; descasca batatas; devolve a cesta;
64 Estruturas Básicas de Controle 64! condicional: se... então traz a cesta com batatas; traz a panela do armário; se roupa é clara então coloca avental; descasca batatas; devolve a cesta; if ( condição) {...} else {...}
65 Instruções Condicionais 65 ( NaoAguentaCalor )! if { } ( JanelaNaoAbre ) if { } FiqueForaDaCozinha; else { LavePratos;}
66 66 Comandos Básicos do C! <condição> é qualquer expressão cujo resultado é um valor booleano! está relacionado um bloco de comandos (limitados por { / }) pode ser usado um único comando! bloco: como um novo comando / extensão da linguagem
67 67 Comandos Básicos do C! Repetição! quando um conjunto de ações é executado repetidamente enquanto uma determinada condição permanece válida! condição é uma expressão cujo resultado é um valor lógico
68 68 Comandos Básicos do C! Repetição enquanto <condição> faça C1; C2; C3; C4; fim enquanto;
69 69 Comandos Básicos do C! Repetição - C while ( <condição> ) { } C1; C2; C3; C4;
70 70 Comandos Básicos do C! Repetição faça C1; C2; C3; C4; enquanto <condição>;
71 71 Comandos Básicos do C! Repetição C do { C1; C2; C3; C4; } while (<condição>);
72 72 Comandos Básicos do C! Repetição { (++ i for (i=0; i<n; }; C1; C2; C3; C4;
73 Comandos Básicos do C 73! Repetição! while(condição) {...}! se já da primeira vez a condição for falsa, os comandos não são executados nenhuma vez! do { } while (condição)! se da primeira vez a condição for falsa, os comandos são executados uma vez! Enquanto a condição for verdadeira os comandos são executados, quando for falsa, o comando é abandonado
74 Tipos de Dados Simples Inteiros 74! Qualquer valor do conjunto dos números inteiros! inteiros curtos - int - 4 bytes! inteiros longos - long - 8 bytes! operações! = ( inteiros /(divisão de *, -, +,!! mod
75 75 Reais! Também chamados de ponto flutuante! Qualquer valor do conjunto dos números reais! estão limitados no número de dígitos decimais - float ou double! sua representação: mantissa e expoente! operações :=, +, -, *, /
76 Usando Tipos 76! Se tenho que definir uma variável para conter idades, que tipo usar?! inteiros, e curtos são suficientes! É função do:! conjunto de valores que a variável pode assumir! da precisão que se deseja no resultado de operações
77 77 Caracteres! É qualquer caracter isolado representado no computador! letras e números são caracteres! caracteres especiais - &, %! caracteres especiais e não visíveis - ESC, CR, LF,! ocupam 1 byte - ASCII! char a = A ;
78 78 Strings de Caracteres! Um número arbitrário de ocorrências de caracteres! deixa em aberto o número de ocorrências! não possui uma representação direta no C! char a[50]! #define nome Maria
79 79 Exercício - algoritmo! Descreva um algoritmo que compute o somatório de 1 até N, sendo N o número de entrada! Descreva um que compute a potência x i, onde i varia de 1 até N, sendo x e N, números de entrada
80 80 Exercício cálculo da média final! Considere uma disciplina que adota o seguinte critério de aprovação: alunos fazem duas provas, P1 e P2, sendo obtida a média M = (P1+P2)/2. Se a média for maior ou igual a 5.0, e nenhuma das notas for inferior a 3.0, o aluno passa direto (tendo média final MF igual a M). Caso contrário, o aluno faz uma terceira prova P3 e a MF é calculada considerando a terceira nota:! se P3 for maior ou igual a 3.0, MF = (P3+max(P1,P2))/2! caso contrário, MF = (M + P3)/2! Escreva um programa que leia inicialmente as notas do aluno fornecidas via teclado. Se as notas não forem suficientes para o aluno passar direto, será pedido a nota da P3. Em seguida, o programa deve ter como saída a mensagem Aprovado ou Reprovado, de acordo com o critério descrito, mostrado ao lado a MF calculada.
81 81 Exercícios calcula média final #include <stdio.h> int main ( ) { float P1,P2,P3,M,MF; printf ("Entre com as notas de P1 e P2: "); scanf (" %f %f ",&P1,&P2); M=(P1+P2)/2; if ( (P1>=3) && (P2>=3) && (M>=5.0)) MF=M; else { printf( \n Entre com a nota de P3: "); scanf(" %f ",&P3); if (P3>=3) { float Paux = (P1>P2)? P1:P2; MF=(P3+Paux)/2; } else MF=(M+P3)/2; } if (MF>=5) printf( \n %.1f Aprovado\n",MF); else printf( \n %.1f Reprovado\n",MF); return (0; }
Estrutura de Dados e Algoritmos ( )
Estrutura de Dados e Algoritmos ( www.ic.uff.br/~boeres/ed.html ) Tópicos! Introdução/Revisão! Algoritmos, Noções de Complexidade! Listas, Pilhas e Filas! Tabelas Hash ( etc! Árvores (binárias, AVL, B,!
Leia maisAlgoritmos e Programação
Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;
Leia maisEstruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.
1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras
Leia maisAula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU
Aula 5 Oficina de Programação Introdução ao C Profa. Elaine Faria UFU - 2017 Linguagem de Programação Para que o computador consiga ler um programa e entender o que fazer, este programa deve ser escrito
Leia maisProgramação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio
Leia maisAlgoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi
Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se
Leia maisLinguagem C: Introdução
Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais
Leia maisAmbiente de desenvolvimento
Linguagem C Ambiente de desenvolvimento Um programa em C passa por seis fases até a execução: 1) Edição 2) Pré-processamento 3) Compilação 4) Linking 5) Carregamento 6) Execução Etapa 1: Criação do programa
Leia maisProgramação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem
Leia maisMétodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados
Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de
Leia maisProgramação I A Linguagem C. Prof. Carlos Alberto
Programação I A Linguagem C Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br 2 Origem A linguagem C foi desenvolvida em 1972, nos Laboratórios Bell, por Dennis Ritchie. Implementada
Leia maisProgramação Estruturada
Programação Estruturada Introdução à linguagem C Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Programação estruturada
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação
Leia maisIntrodução à Programação Estruturada Parte 3. Material da Prof. Ana Eliza
Introdução à Programação Estruturada Parte 3 Material da Prof. Ana Eliza Arquitetura do Computador Digital MEMÓRIA Armazena dados e comandos UNIDADE DE ENTRADA UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA
Leia maisLinguagem C Princípios Básicos (parte 1)
Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos
Leia maisAlgoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza
Algoritmos: Conceitos Fundamentais Slides de autoria de Rosely Sanches e Simone Senger de Souza DADOS E EXPRESSÕES Uso da Informação Computador manipula informações contidas em sua memória. Classificadas
Leia maisAlgoritmos: Conceitos Fundamentais. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza
Algoritmos: Conceitos Fundamentais Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza DADOS E EXPRESSÕES 3 Uso da Informação Computador manipula informações contidas em sua memória.
Leia maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição
Leia maisConhecendo a Linguagem de Programação C
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Conhecendo a Linguagem de Programação C DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Como
Leia maisCapítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática
Capítulo 1: Introdução à Linguagem C Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso caso, a linguagem C.
Leia maisIntrodução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados
Introdução à Programação Operadores, Expressões Aritméticas e Entrada/Saída de Dados Programa em C #include int main main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius
Leia maisIntrodução a programação Visão geral
Instituto Federal de Minas Gerais Campus Ponte Nova Introdução a programação Visão geral Professor: Saulo Henrique Cabral Silva Conceitos lógica/algoritmo A lógica é usada no dia a dia das pessoas para
Leia maisEstrutura do programa
Linguagem C Estrutura do programa Exemplo: #include #include main() { printf( Ola, mundo! ); system( pause ); }
Leia maisIntrodução à Programação
Programação de Computadores Introdução à Programação Prof. Helton Fábio de Matos hfmatos@dcc.ufmg.br Agenda Algoritmo & Programa Variáveis Declaração de tipos Comando de entrada ou de leitura Comando de
Leia maisLinguagem de Programação I. Aula 06 Linguagem C: Tipos de Dados
Linguagem de Programação I Aula 06 Linguagem C: Tipos de Dados Da Aula Anterior Linguagens de Programação A Linguagem C: Como tudo começou Principais características da Linguagem C O primeiro programa
Leia maisLinguagem C. André Tavares da Silva.
Linguagem C André Tavares da Silva dcc2ats@joinville.udesc.br Variáveis Posição nomeada de memória que é usada para guardar um valor que pode ser modificado pelo programa. Todas as variáveis devem ser
Leia mais#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C
#include Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C ANTES DO C ERA A LINGUAGEM B B foi essencialmente uma simplificação da linguagem BCPL. B só tinha um tipo de dado, que
Leia maisInstruções, dados e expressões
Instruções, dados e expressões Marina Andretta ICMC-USP 1 de março de 2016 Marina Andretta (ICMC-USP) sme0230-ipc 1 de março de 2016 1 / 50 Dados Um computador manipula informações presentes em sua memória.
Leia maisProgramação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Leia maisSSC304 Introdução à Programação Para Engenharias. Introdução a Linguagem C. GE4 Bio
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Introdução a Linguagem C GE4 Bio GE4Bio Grupo de Estudos
Leia maisAula 3: Algoritmos: Formalização e Construção
Aula 3: Algoritmos: Formalização e Construção Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de
Leia maisIntrodução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes
Introdução à Programação Introdução a Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Introdução Variáveis Tipos de dados Operadores e Expressões: Operadores
Leia maisWorking 03 : Conceitos Básicos I
Working 03 : Conceitos Básicos I Objetivos: Dominar os conceitos básicos da linguagem de programação C; Aprender a utilizar o compilador, identificando os erros de sintaxe do código fonte; Prazo de Envio:
Leia maisIntrodução a Linguagem C. Prof. Me. Hélio Esperidião
Introdução a Linguagem C Prof. Me. Hélio Esperidião Características de um programa De forma geral a maioria dos programas são compostos por dados de entrada, processamento e dados de saída. Entrada de
Leia maisPROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@gmail.com
Leia maisAlgoritmos e Introdução à Programação. Lógica e Linguagem de Programação
Algoritmos e Introdução à Programação Lógica e Linguagem de Programação Prof. José Honorato Ferreira Nunes honoratonunes@softwarelivre.org http://softwarelivre.org/zenorato/honoratonunes Linguagem C Prof.
Leia maisConceitos Básicos de Programação
BCC 201 - Introdução à Programação Conceitos Básicos de Programação Guillermo Cámara-Chávez UFOP 1/53 Conceitos básicos I Variável 2/53 Conceitos básicos II Posição de memoria, identificada através de
Leia maisIntrodução à Linguagem C Variáveis e Expressões
INF1005: Programação 1 Introdução à Linguagem C Variáveis e Expressões 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Programando em C Funções Variáveis Define Operadores e Expressões Entrada e Saída
Leia maisProgramação Básica. Estrutura de um algoritmo
Programação Básica Estrutura de um algoritmo Código-fonte Como vimos na aula anterior um algoritmo pode ser representado usando um fluxograma Um algoritmo pode também ser representado usando texto Esse
Leia maisProgramação Estruturada Aula VisualG
Programação Estruturada Aula VisualG Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br 2 CRIANDO ALGORITMO CRIANDO ALGORITMO Passos para construir Algoritmos Ler enunciado do problema, compreendendo-o
Leia maisConceitos Básicos Linguagem C
Conceitos Básicos Linguagem C PROF. MAURÍCIO A DIAS MACDIASPAE@GMAIL.COM 2 Método Método básico para construção de algoritmos 1. Compreender completamente o problema a ser resolvido, se possível dividindo
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO E DO DESPORTO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CEFET-MG UNIDADE DE ENSINO
SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO E DO DESPORTO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CEFET-MG UNIDADE DE ENSINO DESCENTRALIZADA DE VARGINHA CAMPUS VIII 1 Algoritmo, Contexto
Leia maisConceitos básicos de programação
Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1
Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores Aula - Tópico 1 1 Problema 1 Considere o seguinte problema: Determinar o valor de y = seno(1,5). 2 Definições Para
Leia maisEstruturas de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números
Leia maisProgramação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO
Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Dados em Algoritmos Quando escrevemos nossos programas, trabalhamos com: Dados que nós fornecemos ao programa Dados
Leia maisWeb site. Profa. Patrícia Dockhorn Costa.
Estruturas de Dados Aula 1: Introdução e conceitos básicos Web site http://www.inf.ufes.br/~pdcosta/ensino/ Profa. Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br Monitoria: Alexandro alexandrosouzaramos@gmail.com
Leia maisEstrutura de Dados Conceitos Iniciais
Engenharia de CONTROLE e AUTOMAÇÃO Estrutura de Dados Conceitos Iniciais Aula 01 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador
Leia maisMétodos Computacionais
Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento
Leia maisDisciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo
Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer Índice: Aula1 - Introdução Programa Algoritmo Aula 2 - Variáveis Tipos de dados Identificadores Aula 3 - Programação
Leia maisRevisão. Profa Marina Gomes
Revisão Profa Marina Gomes Algoritmos Na construção de um programa, o problema que o algoritmo representa é composto por três fases. Entrada: dados de entrada do algoritmo. Processamento: ações sobre os
Leia maisINSTITUTO FEDERAL DE! EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE Algoritmos ANSI C - Introdução Copyright 2014 IFRN Agenda Conceitos básicos ANSI C Hello World Funções em C Exercícios 2 /26 A linguagem
Leia maisEstruturas de Dados Aula 1: Introdução e conceitos básicos 28/02/2011
Estruturas de Dados Aula 1: Introdução e conceitos básicos 28/02/2011 Web site http://www.inf.ufes.br/~pdcosta/ensino/ Profa. Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br Introdução O que são estruturas
Leia maisIntrodução à Linguagem C
Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br
Leia maisSSC 0301 IC para Engenharia Ambiental
SSC 0301 IC para Engenharia Ambiental Tipos, variáveis e expressões Prof. Márcio Delamaro e Prof. Jorge Luiz e Silva delamaro@icmc.usp.br; jsilva@icmc.usp.br SSC 0301 IC para Engenharia Ambiental ICMC/USP
Leia maisProgramação Estruturada Aula - Tipos, Constantes, Variáveis e Identificadores
Programação Estruturada Aula - Tipos, Constantes, Variáveis e Identificadores Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br TIPOS DE DADOS EM LINGUAGEM C 2 TIPOS DE DADOS EM LINGUAGEM
Leia maisIntrodução à Programação
Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5
Leia maisNoções de algoritmos - Aula 1
Noções de algoritmos - Aula 1 Departamento de Física UFPel Definição de algoritmo Sequência ordenada e finita de operações para a realização de uma tarefa. Tarefa: Experimento de Física I. Passo 1: Reunir
Leia maisLinguagens de Programação
Linguagens de Programação 128 13 129 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 3.3. Conceitos Básicos de C: Expressões, Operadores e Bibliotecas
Leia maisAula 03: Introdução a C
Aula 03: Introdução a C Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aula Anterior O que é um computador Organização de um
Leia maisSlide 01 16/03/2017. Estruturas de Dados. Prof. Cleziel Franzoni da /Cleziel.
Slide 01 16/03/2017 Estruturas de Dados Prof. Cleziel Franzoni da Costa 1 @Cleziel /Cleziel cleziel@hotmail.com 42 3 EMENTA Listas lineares e suas variações. Filas e pilhas. Árvores binárias e suas variações.
Leia maisECT1203 Linguagem de Programação
Universidade Federal do Rio Grande do Norte Escola de Ciências e Tecnologia ECT1203 Linguagem de Programação Prof. Aquiles Burlamaqui Profa. Caroline Rocha Prof. Luiz Eduardo Leite Prof. Luciano Ferreira
Leia maisPORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA
PORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA SUMÁRIO Introdução Conceitos básicos Formato básico Tipos primitivos Variáveis Constantes Operadores Operações
Leia maisIntrodução à Ciência da Computação
Créditos Introdução à Ciência da Computação Tópicos Preliminares em Programação Exceto por adaptações e complementos menores, o material a seguir é composto de slides gentilmente cedidos por: Prof. Rudinei
Leia maisLÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO
LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Primeiro programa em C #include int main() { int num1, num2, result; scanf("%d",&num1); scanf("%d",&num2); result = num1 + num2; printf("%d",
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4
Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para
Leia maisTÉCNICO DE INFORMÁTICA - SISTEMAS
782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar
Leia maisProgramação de Computadores II
Programação de Computadores II 1. Programação Básica 2019.1 Slides adaptados do material de Karina Mochetti Problema, Algoritmo, Programa Um programa de computador é a implementação de um algoritmo para
Leia maisIntrodução aos Algoritmos
Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado
Leia maisA Linguagem C. A forma de um programa em C
A Linguagem C Criada em 1972 por D. M. Ritchie e K. Thompson. Tornou-se uma das mais importantes e populares, principalmente pela portabilidade e flexibilidade. Foi projetada para o desenvolvimento de
Leia maisPROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S
PROGRAMAÇÃO I VA R I Á V E I S, C O N S TA N T E S, O P E R A D O R E S E N T R A DA E S A Í DA D E DA D O S Variáveis 2 Variáveis são locais onde são armazenados os valores na memória. Toda variável é
Leia maisCONCEITOS DE ALGORITMOS
CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são
Leia maisIntrodução à Programação. Expressões Booleanas e Comandos Condicionais
Introdução à Programação Expressões Booleanas e Comandos Condicionais Comandos Condicionais Misture os ingredientes Unte forma com manteiga Despeje a mistura na forma Algoritmo para preparação de bolo
Leia maisComputação Eletrônica. Tipos de dados, constantes, variáveis, operadores e expressões. Prof: Luciano Barbosa
Computação Eletrônica Tipos de dados, constantes, variáveis, operadores e expressões Prof: Luciano Barbosa Site da disciplina: www.cin.ufpe.br/~if165/ Recapitulando num cubo = n * n * n cubo Algoritmo
Leia maisPuca Huachi Vaz Penna
Aula 3 C++: variáveis e expressões aritméticas 2017/1 BCC201 Introdução à Computação Turmas 61, 62, 63, 64, 65 e 66, 32 e 33 Puca Huachi Vaz Penna Departamento de Computação Universidade Federal de Ouro
Leia maisEstruturas condicionais
Estruturas condicionais David Déharbe 1 1 Objetivos da aula Revisar os primeiros elementos de linguagem C já vistos. Condicionais simples Condicionais compostas Operadores lógicos 2 2 Objetivos da aula
Leia maisLinguagem de Programação
Linguagem de Programação aula 4 Engenharia Elétrica e Engenharia de Automação Introdução à Computação 1.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) Programas Programas são seqüências de instruções
Leia maisProgramação científica C++
Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 2 Expressões Combinação de dados e operadores que resulta em um valor. expressão x = 2 * y + 4; variável operador constante Memória do computador
Leia maisLaboratório de Introdução à Ciência da Computação I
Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professores: Vanderlei Bonato (responsável) - vbonato@icmc.usp.br Roberto de M. F. Filho (aluno PAE) - rmdff@icmc.usp.br>
Leia maisPrincípios de Desenvolvimento de Algoritmos MAC122
Princípios de Desenvolvimento de Algoritmos MAC122 Prof. Dr. Paulo Miranda IME-USP Aula de Revisão: Variáveis e Atribuições Introdução Memória Principal: Vimos no curso anterior que a CPU usa a memória
Leia maisLaboratório de Programação II
Laboratório de Programação II Aula 02 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... 01 Introdução à linguagem C;
Leia maisCURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS
CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS PROFESSOR : Romilson Lopes Sampaio Introdução a Lógica de Programação
Leia mais6 Alguns conceitos e comandos em programação
6 Alguns conceitos e comandos em programação 6.1 Diretivas Diretivas são instruções que permitem ao programador efetuar algum tipo de modificação à compilação, sendo analisadas e executadas pelo pré-compilador,
Leia maisLaboratório de Introdução à Ciência da Computação I
Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professores: Vanderlei Bonato (responsável) - vbonato@icmc.usp.br Luiz Henrique Kiehn (aluno PAE) - lhkiehn@icmc.usp.br
Leia maisIntrodução aos Algoritmos
Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado
Leia maisIntrodução à Programação
Introdução à Programação Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina.
Leia maisProgramação Procedimental
Programação Procedimental Maria Adriana Vidigal de Lima Universidade Federal de Uberlândia - 2013 1 Escrita de Algoritmos 1.1 Técnicas de Programação e Algoritmos Na elaboração de programas maiores e complexos
Leia maisProgramação Estruturada Aula 2 - Introdução
Programação Estruturada Aula 2 - Introdução Prof. Luis Carlos Retondaro Técnico em Telecomunicações 2 o Ano CEFET/RJ - Centro Federal de Educação Tecnológica Celso Suckow da Fonseca Campus Petrópolis 2017
Leia maisINF1005: Programação I. Capítulo 2. Ivan Mathias Filho Algoritmo
INF1005: Programação I Capítulo 2 Ivan Mathias Filho ivan@inf.puc-rio.br 1 Algoritmo Devido às características da CPU, a solução de um problema tem a forma de uma seqüência finita de instruções elementares;
Leia maisProgramação de Computadores IV
Programação de Computadores IV Introdução ao C - Variáveis Slides de Bruno Augusto Dorta Marques 1 Roteiro da aula Introdução a linguagem C Organização do código-fonte Método main Variável Tipos básicos
Leia maisVariáveis, Tipos de Dados e Operadores
! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória
Leia maisConceitos básicos. Computação eletrônica: Gurvan Huiban
Computação eletrônica: Conceitos básicos Gurvan Huiban ghuiban@cin.ufpe.br Plano de aula 1 Estrutura de um programa em C 2 Variáveis e constantes 3 Comandos de entrada e saída Estrutura de um programa
Leia maisIntrodução a Programação. Curso: Sistemas de Informação Programação I José R. Merlin
Introdução a Programação Curso: Sistemas de Informação Programação I José R. Merlin Programas Programas são instruções para o computador executar uma tarefa Estas instruções seguem uma lógica Lógica: modo
Leia maisSistemas Operacionais e Introdução à Programação. Programação com linguagem C
Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Entrada e saída: escrevendo na tela Veja uma comparação entre um programa Portugol e seu equivalente em C: Inicio Inteiro
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos
Leia maisENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais. Prof. Luiz Fernando Laguardia Campos FMS
ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais Prof. Luiz Fernando Laguardia Campos FMS lflcampos@machadosobrinho.com.br Compilação/Interpretação Um compilador ao receber como entrada
Leia mais