Algoritmos e Estruturas de Dados I
|
|
|
- Maria Clara de Carvalho da Silva
- 9 Há anos
- Visualizações:
Transcrição
1 Algoritmos e Estruturas de Dados I Prof. Daniel M. Martin ([email protected]) Aula 9 (laboratório)
2 O Labirinto
3 Descrição do problema O problema é achar o caminho entre dois pontos de interesse num labirinto Os dois pontos de interesse são o rato e o queijo Você deve ajudar o rato a achar o queijo
4 Exemplo
5 Descrição do problema O labirinto é um dado do problema e pode ser visto como uma matriz m x n m = número de linhas; n = número de colunas (no exemplo anterior m = n = 6) Você pode sempre supor que o labirinto é fechado, isto é, que há paredes ao redor do labirinto para impedir o rato de sair O labirinto será dado na entrada padrão codificado como um arquivo texto
6 Descrição do problema Codificação genérica de um labirinto: m n a 11 a 12 a a 1m a 21 a 22 a a 2m... a n1 a n2 a n3... a nm Cada a ij vale: 0 posição livre 1 posição rato 2 posição queijo 3 parede
7 Codificação do labirinto do exemplo Salvar o texto abaixo num arquivo teste.txt
8 Lendo o labirinto da entrada O arquivo main.c (antigo labirinto.c) contém uma função que lê um labirinto da entrada Os dados lidos são armazenados numa estrutura labirinto que é definida por: struct s_labirinto { int linhas; int colunas; int **M; } typedef struct s_labirinto labirinto;
9 Já implementado (em main.c) /* le os dados da entrada e devolve variável do tipo labirinto */ labirinto le_labirinto_da_entrada(); /* aloca espaço para uma matriz de inteiros com m linhas e n colunas */ // usada em le_labirinto_da_entrada() int **aloca_matriz(int m, int n); /* libera uma matriz M com m linhas que havia sido alocada dinamicamente */ void libera_matriz(int **M, int m);
10 Já implementado (em main.c) /* imprime o labirinto na saída padrão */ void imprime_labirinto(labirinto L); /* uma função main de exemplo de uso das funções de labirinto */ int main() { labirinto L = le_labirinto_da_entrada(); imprime_labirinto(l); } libera_matriz(l.m, L.linhas); return 0;
11 Compilando e rodando o exemplo No linux linux$ gcc main.c pilha.c item.c -o lab linux$ lab < teste.txt linux$
12 Compilando e rodando o exemplo No windows Crie um projeto no Dev C++ (ou Code::blocks) Inclua os arquivos main.c, item.c e pilha.c (e também item.h e pilha.h) Compile seu programa (suponha que o executável receba o nome de lab.exe) Coloque o arquivo teste.txt no mesmo diretório do programa executável lab.exe
13 Compilando e rodando o exemplo No windows Clique no menu iniciar e digite o comando cmd e aperte a tecla ENTER Um prompt de comando se abre Navegue (usando o comando cd) até o diretório do seu executável (o mesmo do teste.txt)
14 Compilando e rodando o exemplo No windows C:\SeuProjeto> lab.exe < teste.txt C:\SeuProjeto>
15 O que você deve fazer? Achar o caminho do rato ao queijo usando a estrutura de dados pilha e o algoritmo que será explicado mais adiante Para isso você deve usar os arquivos pilha.h, pilha.c, item.h e item.c que estão em labirinto.tar.gz Você não pode modificar esses arquivos! (O pessoal das 8:00 pode, mas é preferível que, em vez disso, usem a nova versão no site.) Estude o arquivo main.c (antigo labirinto.c) Você deverá começar o trabalho a partir dele
16 Usando a estrutura labirinto labirinto L = le_labirinto_da_entrada(); // para acessar as dimensões // do labirinto L você pode fazer int m = L.linhas, n = L.colunas; /* para acessar o código (0, 1, 2 ou 3) da linha i e coluna j do labirinto, usar a matriz L.M */ codigo = L.M[i][j]; Veja, por exemplo, o código da função imprime_labirinto() em labirinto.c
17 Como explorar o labirinto? Você precisará uma variável P do tipo pilha A pilha armazena objetos do tipo item O tipo item, para nós, será uma posição no labirinto, e será declarado em item.h: struct s_ponto { int i; // num da linha int j; // num da coluna }; typedef struct s_ponto item;
18 Arquivo: item.h #ifndef ARQUIVO_ITEM_H #define ARQUIVO_ITEM_H struct s_ponto { int i; int j; }; typedef struct s_ponto item; // imprime um item na tela (não pula linha) void imprime_item(item x); #endif
19 Arquivo: item.c #include "item.h" #include <stdio.h> void imprime_item(item x) { printf(" (%d, %d)", x.i, x.j); }
20 Primeiros passos Fazer uma função cujo cabeçalho é: item posicao_do_rato(labirinto L); que recebe um labirinto e devolve a posição do rato (devolve um item com o campo i contendo a linha do rato e o campo j contendo a coluna do rato) (Turma das 10:00) Criar aloca_matriz_itens baseada na função aloca_matriz que aloca uma matriz de item em vez de int
21 Primeiros Passos (Turma das 10:00) Alocar matriz de item D com as mesmas dimensões do labirinto para guardar os predecessores (Turma das 8:00) Alocar matrizes de inteiros Di e Dj com as mesmas dimensões do labirinto para guardar cada coordenada dos predecessores O pessoal das 8:00 também pode fazer o que o pessoal das 10:00 fez. Venha na minha sala se você precisar de ajuda
22 Como explorar o labirinto? declarar variáveis t e pos_atual do tipo item lê labirinto L da entrada criar pilha vazia P colocar posição inicial do rato em P alocar matriz D (turma das 10) alocar matrizes Di e Dj (turma das 8) enquanto pilha P não está vazia faça pos_atual = pop(p) /* o trecho a seguir tenta explorar o norte */ t.i = pos_atual.i 1; t.j = pos_atual.j; se posição t não é parede (e não foi processada) então push(p, t) por em D (ou Di e Dj) que se chegou em t por pos_atual
23 Como explorar o labirinto? /* o trecho a seguir tenta explorar o sul */ t.i = pos_atual.i + 1; t.j = pos_atual.j; se posição t não é parede (e não foi processada) então push(p, t) guarda na matriz D que o predecessor de t é pos_atual /* o trecho a seguir tenta explorar o oeste */ t.i = pos_atual.i; t.j = pos_atual.j 1; se posição t não é parede (e não foi processada) então push(p, t) guarda na matriz D que o predecessor de t é pos_atual
24 Como explorar o labirinto? /* o trecho a seguir tenta explorar o leste */ t.i = pos_atual.i; t.j = pos_atual.j + 1; se posição t não é parede (e não foi processada) então push(p, t) guarda na matriz D que o predecessor de t é pos_atual marca pos_atual como processada (ou como parede) // por exemplo fazendo L.M[pos_atual.i][pos_atual.j] = 3; fim do enquanto
25 Exemplo de tradução do início do pseudo-código para linguagem C pilha P; labirinto L = le_labirinto_da_entrada(); item t, pos; push(p, posicao_do_rato(l)); while(!pilha_vazia(p)) { pos = pop(p); t.i = pos.i 1; t.j = pos.j; if (L.M[t.i][t.j]!= 3) { push(p, t); D[t.i][t.j] = pos; } etc...
26 Como usar a matriz D para imprimir o caminho? Pessoal, o mais fácil de fazer (com a matriz D) é imprimir o caminho do queijo até o rato, ou seja o caminho inverso ao desejado. Vamos fazer isso primeiro e depois modificamos a função para imprimir o caminho certo
27 Como usar a matriz D para imprimir o caminho reverso? IMPRIME_CAMINHO_REV pos pos_queijo enquanto pos!= pos_rato faça imprime pos pos D[ pos.i][pos.j]; imprime pos_rato
28 Como usar a matriz D para imprimir o caminho do rato até o queijo? IMPRIME_CAMINHO_CERTO cria pilha vazia Q pos pos_queijo push(q, pos); enquanto pos!= pos_rato faça pos D[ pos.i][pos.j]; push(q, pos); enquanto pilha Q não está vazia faça imprime pop(q)
29 Como usar a matriz D para imprimir o caminho do rato até o queijo? IMPRIME_CAMINHO_CERTO cria pilha vazia Q pos pos_queijo push(q, pos); enquanto pos!= pos_rato faça // A turma das 8 pode fazer t pos pos.i Di[ t.i][t.j]; pos.j Dj[ t.i][t.j]; push(q, pos); enquanto pilha Q não está vazia faça imprime pop(q)
30 Instruções Entregar somente o seu arquivo main.c (não é para entregar nenhum outro arquivo junto) Não enviar compactado A turma das 8:00 deve adaptar o programa para usar os arquivos pilha.h, pilha.c, item.h e item.c em labirinto.tar.gz (seu programa deveria funcionar automaticamente, exceto se você definiu o tipo ponto que deve ser a mesma coisa que item e se você usou x,y em vez de i,j na struct s_ponto)
31 Instruções Entregar até meia noite de quarta-feira 14/03 Entrega posterior fica com zero O assunto do deve ser AED1-EL4
Algoritmos e Estruturas de Dados I
Algoritmos e Estruturas de Dados I Prof. Daniel M. Martin ([email protected]) Aula 8 Aplicação de Fila Calcular a distância entre pessoas no Facebook Aplicação de Fila Calcular a distância entre
Algoritmos e Estruturas de Dados I
Algoritmos e Estruturas de Dados I Prof. Daniel M. Martin ([email protected]) Aula 6 Modularização Método que consiste em organizar programas grandes em pequenas partes (módulos) Cada módulo tem
MC-102 Aula 21 Registros
MC-102 Aula 21 Registros Instituto de Computação Unicamp 27 de Outubro de 2016 Roteiro 1 Registros Declarando um novo tipo de Registro Acessando os campos de um Registro Lendo e Escrevendo Registros Atribuição
Algoritmos e Programação
Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes [email protected] 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;
Matrizes. Marina Andretta. 17 de abril de 2017 ICMC-USP. Marina Andretta (ICMC-USP) sme0230-ipc 17 de abril de / 30
Matrizes Marina Andretta ICMC-USP 17 de abril de 2017 Marina Andretta (ICMC-USP) sme0230-ipc 17 de abril de 2017 1 / 30 Matrizes Uma matriz é uma variável composta bidimensional. Você pode pensá-la como
TAD: Tipo Abstrato de Dados (parte 2)
TAD: Tipo Abstrato de Dados (parte 2) SCC0502 Algoritmos e Estruturas de Dados I Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c Denominados de módulos Cada módulo deve
Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função.
Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função. Funções e estruturas básicas 1. Faça uma função que recebe a idade de uma
IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias
1 IDES E PROGRAMAÇÃO Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias {claudio,macdias}@icmc.usp.br 2 Agenda Conceitos Instalação e Configuração Compilação e Execução de Código IDEs Exemplo
No Windows há basicamente dois tipos de programas de usuário:
Introdução O que vem a ser um programa em C? Você talvez já tenha ouvido falar que um compilador é um programa ou ferramenta que transforma um programa fonte escrito em uma linguagem de programação de
Trabalho 2 Matriz Esparsa
Trabalho 2 Matriz Esparsa SCC-502 Algoritmos e Estruturas de Dados 1 M. Cristina/Jorge 1 Introdução O trabalho deverá ser feito individualmente e submetido para o sistema SSP (Sistema de Submissão de Programas),
INF 1007 Simulado P2 Nome: Instruções
INF 1007 Simulado P2 Nome: Matrícula: Turma: Instruções 1. Tempo de prova: 1 hora e 30 minutos. 2. Entregue a solução de sua prova em um ÚNICO arquivo texto, com o nome Turma_Matricula_P2.txt (por exemplo
1 Como compilar seu código? 2 Comandos de terminal:
Manual Básico 2 COMANDOS DE TERMINAL: 1 Como compilar seu código? É necessário compilar seu código para testar seu programa e saber se a lógica utilizada está correta para solucionar todas as possíveis
void push(int i){ if (num<max) vet[num++]=i; else { printf(">>> Erro: overflow na pilha!!!\n"); printf("%d nao foi empilhado!!!
Estruturas de Dados Lista 2: soluções J. L. Rangel 1. Suponha que uma pilha é representada através de um vetor vet e de um inteiro num. As declarações podem ser #define MAX 100 int vet[max], num; Escreva
Estrutura de dados 2. Ponteiro. Prof. Jesuliana N. Ulysses
1 3 Estrutura de dados 2 Ponteiro Ponteiro 2 O ponteiro é um tipo de dado como int, char ou float. A diferença do ponteiro ponteiro guardará um endereço de memória. Por meio deste endereço pode-se acessar
A regra de acesso aos dados de uma fila é a seguinte: O primeiro elemento que entra (na fila) é o primeiro que sai (FIFO first in, first out).
Fila Algumas aplicações impõem regras de acesso às informações armazenados em estruturas de dados, restringindo como os dados são inseridos e removidos da estrutura. A fila, também conhecida como QUEUE,
Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU
Aula 8 Oficina de Programação Vetores Profa. Elaine Faria UFU - 2017 Variáveis Compostas Homogêneas O que uma variável composta homogênea? - Conjunto de variáveis do mesmo tipo - É chamada de forma geral
Computadores Digitais 2. Prof. Rodrigo de Souza Couto
Computadores Digitais 2 Linguagens de Programação DEL-Poli/UFRJ Prof. Miguel Campista Tópicos Listas Encadeadas Introdução às listas encadeadas Manipulação de elementos Implementações recursivas Listas
Curso de Programação C em Ambientes Linux Aula 05
Curso de Programação C em Ambientes Linux Aula 05 Centro de Engenharias da Mobilidade - UFSC Professores Gian Berkenbrock e Giovani Gracioli http://www.lisha.ufsc.br/c+language+course+resources Conteúdo
Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Primeira Aula Prática
Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Primeira Aula Prática 1 Introdução No Unix não existe uma interface padrão. Você pode escolher, alterar, tirar e muito mais com diversas
Revisão de Programação em C++ Leandro Tonietto Estruturas de Dados em C++ Segurança da Informação
Revisão de Programação em C++ Estruturas de Dados em C++ Segurança da Informação [email protected] http://www.inf.unisinos.br/~ltonietto mar-09 Sumário Revisão de conceitos básicos de programação Diretiva
1. Faça um programa que leia uma string digitada pelo usuário e salve em um arquivo em branco.
Segunda lista de exercícios v100 Engenharia Elétrica - Eletrônica 2º Semestre de 2015 Prof: Daniel Rodrigo Ferraz Bonetti SSC0300 Linguagem de Programação e Aplicações 1 Faça um programa que leia uma string
Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia Elétrica Profa. Maria Cristina Rangel
Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia Elétrica Profa. Maria Cristina Rangel Considere o esboço do estado do ES e n = 30 cidades enumeradas de 1, 2,...,
Algoritmos, Estruturas de Dados e Tipos Abstratos de Dados (TADs)
Algoritmos, Estruturas de Dados e Tipos Abstratos de Dados (TADs) SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic
Programaçã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
Figura 1: Operações para gerar um programa executável.
Uma jornada de mil milhas começa sempre com um simples passo. Lao Tse. PRIMEIROS PASSOS Para poder construir programas em C é necessário utilizar um ambiente de desenvolvimento. Por ambiente de desenvolvimento
1 O filtro da mediana
Departamento de Ciência da Computação IME-USP MAC0115 Introdução à Computação para Ciências Exatas e Tecnologia Instituto de Física Turma 21 Segundo Semestre de 2008 Quarto Exercício-Programa Prazo de
Atividade de laboratório listas encadeadas simples
Atividade de laboratório listas encadeadas simples 1. Estrutura básica Uma lista encadeada simples é uma estrutura de dados composta de uma seqüência de estruturas elementares chamadas nós. Cada nó contém
Tipos Abstratos de Dados. Estrutura de Dados
Tipos Abstratos de Dados Tipo Abstrato de Dados ou TAD Idéia principal: desvincular o tipo de dado (valores e operações) de sua implementação: O que o tipo faz e não como ele faz! Vantagens da desvinculação:
SCC 202 Algoritmos e Estruturas de Dados I. Pilhas (Stacks) (implementação dinâmica)
SCC 202 Algoritmos e Estruturas de Dados I Pilhas (Stacks) (implementação dinâmica) Operações alocação encadeada dinâmica typedef struct elem{ tipo_info info; struct elem *lig; tipo_elem; typedef struct{
Prova 2 - Computação
Prova 2 - Computação A prova consiste na elaboração de um programa utilizando a linguagem C. Seu programa deve estar correto (sintática e semanticamente), além de organizado (nomes de variáveis, identação
TAD: Tipo Abstrato de Dados (parte 2)
TAD: Tipo Abstrato de Dados (parte 2) SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Modularização em C Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c
Estruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C
Estruturas de Dados Revisão de Ponteiros Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros e Arranjos
Guia Rápido: GCC, Makefile e Valgrind.
Guia Rápido: GCC, Makefile e Valgrind. Alexandro Ramos 10 de setembro de 2015 1 Sumário 1 Introdução 3 2 GCC 3 2.1 Outros parâmetros úteis no GCC....................... 4 3 Makefiles 6 3.1 Makefile 1....................................
INF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 9 Tipos Abstratos de Dados (c) Dept. Informática - PUC-Rio 1 Tópicos Módulos e compilação em separado Tipo abstrato de dados Exemplo 1: TAD Ponto Exemplo 2: TAD Círculo Exemplo 3:
3.1 - Funções para manipular dados de entrada e saída padrão
1616161616161616161616161616161616161616161616161616 3- ENTRADA E SAÍDA EM C Os principais meios para executar operações de entrada e saída (E/S) são: Entrada e saída pelo console (ou padrão): teclado
UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA
Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais
1. Escreva um programa que imprima a ordem reversa de caracteres de uma string digitada pelo usuário. Ex: Entrada: Hello World. Saída:.
Primeira lista de exercícios v1.02 Linguagens de Programação e Aplicações SSC0300 Prof: Daniel Rodrigo Ferraz Bonetti 1. Escreva um programa que imprima a ordem reversa de caracteres de uma string digitada
Introdução a Programação. Tipos Estruturados de Dados
Introdução a Programação Tipos Estruturados de Dados Tópicos da Aula Hoje aprenderemos a trabalhar com tipos de dados mais complexos Tipos Primitivos x Tipos Estruturados Conceito de Tipos Estruturados
Métodos Computacionais. Tipos Estruturados
Métodos Computacionais Tipos Estruturados Tipos Estruturados C oferece tipos primitivos que servem para representar valores simples Reais (float, double), inteiros (int), caracter (char) C oferece também
1ª Lista de Exercícios
Universidade Federal do Rio de Janeiro Data: 26/04/05 Disciplina: Computação I 1ª Lista de Exercícios 1) Faça um programa, em pseudo-código, que peça ao usuário que informe n números reais e então calcule
Exercício. Alocação Dinâmica. Alocação dinâmica de memória. Alocação de memória. Alocação da Memória Principal. Alocação da Memória Principal
Exercício Crie uma função que recebe o número de dias até um determinado evento e calcula e retorna o equivalente em meses, semanas e dias, sem usar vetor ou o conceito de vetor. Considerar que todos os
Fundamentos de Programação
Fundamentos de Programação CP41F Aula 2 Prof. Daniel Cavalcanti Jeronymo Conceito de algoritmo. Raciocínio lógico na construção de algoritmos. Estrutura de algoritmos. Universidade Tecnológica Federal
Listas Ligadas (Encadeadas) Listas Simplesmente Encadeadas
Listas Ligadas (Encadeadas) Matrizes são estruturas de dados muito úteis fornecidas nas linguagens de programação. No entanto, elas têm pelo menos duas limitações: 1- Seu tamanho tem que ser conhecido
Disciplina de Lógica e Linguagem de Programação Desenvolvido pelo professor Danilo Giacobo Ferramenta Code::Blocks
Disciplina de Lógica e Linguagem de Programação Desenvolvido pelo professor Danilo Giacobo Ferramenta Code::Blocks Manual de utilização LISTA DE FIGURAS Figura 1 - Tela Inicial do software Code::Blocks...
1. Para cada pergunta selecione uma opção. Resposta correta +2, incorreta -1. [12 pontos]
* Universidade Federal do ABC Avaliação: Prova 01 (40 pontos) Disciplina: MCTA028 - Programação Estruturada Turma: Noturno A1 e A2 Professor: Jesús P. Mena-Chalco Data: 25/10/2016 Nome completo: RA: Instruções:
Computação 2. Aula 2. Profª. Fabiany Vetores e Matrizes
Computação 2 Aula 2 Vetores e Matrizes Profª. Fabiany [email protected] Vetores Vetor também é conhecido como variável composta homogênea unidimensional; Um vetor computacional é um variável composta
LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.
LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado
Aula 4 Introdução ao C
Considere o nosso MSC. O Processador Central, entende o conjunto de instruções, leia, imprima, atribuição e condicional e com ela resolvemos vários problemas, construindo vários algoritmos. As instruções
Módulo 1 Conceitos Fundamentais
Estruturas de Dados Módulo 1 Conceitos Fundamentais 7/3/2007 (c) Marco A. Casanova - PUC-Rio 1 Preliminares Referência básica: Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas
Aula 3 Primeiros programas
Aula 3 Primeiros programas FACOM-UFMS 2012 OBJETIVOS DA AULA Introdução ao CodeBlocks; Criação dos primeiros programas; Esta aula foi baseada nos capítulos 3 e 4 da apostila de Programação de Computadores
PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15
Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2017-1 Aula Prática 15 No jogo Inventei, cada posição do tabuleiro é representada por suas coordenadas x e y e contém um número. O tabuleiro pode ser representado
Lista Encadeada (Linked List)
Lista Encadeada (Linked List) As listas ou listas encadeadas são a estrutura de dados mais simples concebível excetuando-se naturalmente os arrays. Listas encadeadas nada mais são que uma seqüência de
1 O filtro da mediana
CCM0118 Computação I Departamento de Ciência da Computação IME-USP Curso de Ciências Moleculares Turma 22 Segundo Semestre de 2012 Quarto Exercício-Programa Prazo de entrega: até 4 de dezembro de 2012.
5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios.
3636363636363636363636363636363636363636363636363636 5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios. 5.1 - Comandos
Linguagem C: diretivas, compilação separada. Prof. Críston Algoritmos e Programação
Linguagem C: diretivas, compilação separada Prof. Críston Algoritmos e Programação Diretivas do pré processador Permite que o programador modifique a compilação O pré processador é um programa que examina
Estrutura de Dados Básica
Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 2: Revisão dos itens básicos O objetivo desta aula é revisar os conceitos envolvidos na abordagem da Programação Estruturada. Representações
Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?
Introdução à Ciência da Computação Ponteiros em C Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros
Programação Estruturada Prof. Rodrigo Hausen Organização e Gerenciamento de Memória
Programação Estruturada Prof. Rodrigo Hausen http://progest.compscinet.org Organização e Gerenciamento de Memória 1 AULA PASSADA - vetores ou arrays Declaração de um vetor (array) em C: tipo nome[tamanho];
Introduçã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
Vetores. e o programa deverá ler os valores separadamente:
Vetores Vetor é um tipo de dado usado para representar uma certa quantidade de variáveis de valores homogêneos (do mesmo tipo). Imagine o seguinte problema: calcular a média das notas da prova de 5 alunos.
Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?
Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Programação de Computadores 1 de 28 Funções Na Programação, funções são conjuntos
Tipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas
Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Estruturas de Dados Aula 2: Estruturas Estáticas 03/03/2010 Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa
Linguagem 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
Anhanguera Educacional S.A. Centro Universitário Ibero-Americano
O C++ foi inicialmente desenvolvido por Bjarne Stroustrup durante a década de 1980 com o objetivo de melhorar a linguagem de programação C, mantendo a compatibilidade com esta linguagem. Exemplos de Aplicações
CCO 016 / COM 110 Fundamentos de Programação
CCO 016 / COM 110 Fundamentos de Programação Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 05 Entrada de dados Leia scanf Entrada dos dados Entrada de dados compreende a operação
Microsoft Word 2010 NORMA ABNT para Trabalhos Acadêmicos Conceitos Básicos
Microsoft Word 2010 NORMA ABNT para Trabalhos Acadêmicos Conceitos Básicos [email protected] SUMÁRIO Iniciando o Word... 1 Conhecendo a Ferramenta... 1 Menu Layout da Página... 2 Capa... 3 Folha
Abaixo seguem os comandos e suas particularidades, bem como exemplos para o indicador de linha
Trabalho II de CI067 - Oficina de Computação 2º Semestre - 2018 Tema: Editor compactador de arquivos Data de Entrega: 1. Introdução O editor a ser implementado edit([arquivo]) edita arquivos de texto ASCII.
Métodos Computacionais. Vetores e Matrizes Dinâmicas
Métodos Computacionais Vetores e Matrizes Dinâmicas Vetores Um programa para o cálculo da média Média m n i= = 1 n x i Variância v n i= = 1 ( x i n m) 2 A forma mais simples de estruturar um conjunto de
