Entrada: M ind

Tamanho: px
Começar a partir da página:

Download "Entrada: M ind"

Transcrição

1 Ordenação O objetivo deste capítulo é o de estudar algoritmos de ordenação (ou classificação) de uma sequência de números, em ordem crescente, ou decrescente. De um modo geral tal sequência pode ser uma lista extensa como a lista telefônica de S. Paulo, ou a lista de assinantes de TV, etc. No caso de uma lista telefônica, tem-se nomes de pessoas a serem ordenados em ordem alfabética. Dados um inteiro positivo N e uma sequência M de N números em ponto flutuante, ordenar esta sequência em ordem crescente. Por exemplo: N 4 Entrada: M ind

2 Saída: M ind Idéia do algoritmo-solução: Este algoritmo é chamado de bubble-sort, i.e., ordenação por bolha: o porquê deste nome ficará claro mais tarde. A idéia do algoritmo é a seguinte: primeiro compare M 0 com M 1 ;sem 0 M 1 então troque os valores entre si para tê-los em ordem crescente. Em seguida faça o mesmo com M 1 e M 2,e depois com M 2 e M 3 etc., até M N 2 e M N 1. Durante a sequência de comparações e possíveis trocas os números maiores vão sendo deslocados para a direita em M. De fato o maior número em M é deslocado para a direita até se tornar M N 1 e então ele deve permanecer nesta posição. Repetimos então o processo descrito acima para a sub-sequência

3 M 0,M 1,...,M N 2 deslocando o número apropriado para a posição M N 2. Repetindo este processo para as sub-sequências cada vez mais curtas, acabaremos ordenando todos os números em ordem crescente (a rigor é em ordem não-decrescente).

4 1inteiroi, j, /* variáveis índice */ 2 N; /* número de elementos na sequência */ 3 real M 50 ; /* vetor de até 50 elementos */ 4leiaN; 5parai 0atéN 1 faça 6 leia M i ; 7paraj N 2até0faça 8 para i 0atéjfaça /* supor que M 0, M 1,,...,M j 1 */ /* não estão em ordem */ 9 se M i M i 1 então 10 troque os valores de M i e M i 1 entre si ; 11 para i 0atéN 1 faça 12 escreva M i ;

5 N 4 j i M i M i 1 sequência resultante , 47. 0, 0. 6, , 0. 6, 47. 0, ,0.6, 9. 5, , 5. 1, 9. 5, , 9. 5, 5. 1, , 0. 6, 5. 1, 47. 0

6 Programa em linguagem C: algoritmo bubble /* * ORDEBOL. C-- Ordenacao por Bolha * Problema: dada uma sequencia de N numeros reais (tipo float) * ordena -la em ordem crescente. */ #include stdio.h #define Nmax 100 /* Numero maximo de elementos a ordenar */ void main() { int N, /* numero de elementos a ordenar */ i, j; float M[Nmax], /* vetor de N elementos */ temp; /* variavel temporaria */ /* * Leitura dos parametros */ printf("\ndigitar o numero de elementos a ordenar - "); scanf("%d", &N); printf("\nn %d\n", N); if(n Nmax){ printf("\nnumero maximo de elementos foi excedido\n"); exit(0); } /*end if */ printf("digitar os elementos a serem ordenados - "); for(i 0; i N-1; i i 1) scanf("%f", &M[i]); printf("\n"); for(i 0; i N-1; i i 1){ printf(" M[%d] %f", i, M[i]); } /* end for i */ /* * Ordenacao dos elementos em M[], em tempo proporcional a N*N */ if(n 2) for(j N-2; j 0; j j-1) for(i 0; i j; i i 1) if(m[i] M[i 1]){ temp M[i 1]; M[i 1] M[i]; M[i] temp; } /* end for i */ /* * Dar resposta final */ printf("\n Elementos em ordem crescente:\n"); for(i 0; i N-1; i i 1){ printf(" M[%d] %f ", i, M[i]); } /* end for i */ } /* end main */

7 Idéia de um outro algoritmo-solução: ordenação por seleção direta Vamos lembrar qual é o problema original: Dados um inteiro positivo N e uma sequência R de N números em ponto flutuante, ordenar esta sequência em ordem crescente. Vamos ver um outro algoritmo chamado de ordenação por seleção direta do mínimo: o porquê deste nome ficará claro mais tarde. A idéia do algoritmo é a seguinte: 1. Dentro de um laço no qual uma variável indexadora i variade0 a N 1, é mantida uma outra variável indexadora IndMin que é o índice do elemento mínimo sendo procurado. R i IndMin 0 2. No início de cada execução do laço, IndMin é inicializado para i, ou seja, supõe-se por enquanto que o elemento mínimo seja o

8 primeiro na sequência R i,r i 1,...,R N A seguir compara-se R IndMin com cada um dos elementos na sequência R i, R i 1,...,R N 1 : a. se R IndMin R i 1 então efetuamos IndMin i 1, ou seja, o novo elemento mínimo passa a ser R i 1. b. se R IndMin R i 2 então efetuamos IndMin i 2, e assim por diante. c. no final, compara R IndMin e R N 1, d. e então trocamos entre si os elementos R IndMin e R i,istoé,r i deve conter o elemento mínimo da sequência R i,r i 1,...,R N A seguir o mesmo processo deve ser feito para a sequência R i 1,R i 2,...,R N 1. R i IndMin 1

9 1inteiroi, j, /* variáveis índice */ 2 N; /* número de elementos na sequência */ 3 real R 50 ; /* vetor de até 50 elementos */ 4leiaN; 5parai 0atéN 1 faça 6 leia R i ; 7parai 0atéN 2 faça 8 IndMin i; /* por enquanto o mínimo é R i */ 9 para j i 1atéN 1 faça /* procurar o mínimo em */ 10 /* R i 1,R i 2,,...,R N 1 */ 11 se R IndMin R j então IndMin j; 12 troque entre si R IndMin e R i ; 13 para i 0atéN 1 faça 14 escreva R i ; Simulação do algoritmo por seleção direta: Vamos supor que a sequência de entrada seja a mesma descrita no

10 exemplo acima, com N 4. i IndMin j R IndMin R j sequência resultante R ,R , R ,R R 0-9.5, R , R ,R

11 i IndMin j R IndMin R j sequência resultante R ,R 1 0.6, R ,R R ,R , R 2 5.1, R Programa em linguagem C: algoritmo de ordenação por seleção direta

12 /* * ORDEDIR.C--Exemplo de Ordenacao por Selecao Direta * Problema: dada uma sequencia de N numeros reais (tipo float) * ordena -la em ordem crescente. */ #include stdio.h #define Nmax 100 /* Numero maximo de elementos em R[] */ void main() { int N, /* numero de elementos em R[] */ i, j, IndMin; /* indice do minimo temporario */ float R[Nmax], /* vetor de N elementos */ temp; /* variavel temporaria */ /* * Leitura dos parametros */ printf("\ndigitar o numero de elementos de R[] - "); scanf("%d", &N); printf("\nn %d\n", N); if(n Nmax){ printf("\nnumero maximo de elementos foi excedido\n"); exit(0); } /*end if */ printf("digitar os elementos de R[] a serem ordenados - "); for(i 0; i N; i i 1) scanf("%f", &R[i]); printf("\n"); for(i 0; i N; i i 1){ printf("r[%d] %f", i, R[i]); } /* end for i */ /* * Ordenacao dos elementos em R[], em tempo proporcional a N*N */ for(i 0; i N-2; i i 1){ IndMin i; /* indice do Minimo temporario */ for(j i 1; j N-1; j j 1){ if(r[indmin] R[j]) IndMin j; } /* end for j */ temp R[IndMin]; R[IndMin] R[i]; R[i] temp; } /* end for i */ /* * Dar resposta final */ printf("\n Elementos de R[], em ordem crescente:\n"); for(i 0; i N; i i 1){ printf(" R[%d] %f ", i, R[i]); } /* end for i */ } /* end main */

13 Idéia de um terceiro algoritmo-solução: ordenação por inserção direta Vamos lembrar qual é o problema original: Dados um inteiro positivo N e uma sequência R de N números em ponto flutuante, ordenar esta sequência em ordem crescente. Vamos ver um terceiro algoritmo chamado de ordenação por inserção direta: o porquê deste nome ficará claro mais tarde. A idéia do algoritmo é a seguinte: R R R R i 1 i 1 temp R 1 1. Dentro de um laço no qual uma variável indexadora i variade1 a N 1, é considerada a sequência R 0,R 1,...,R i 1, R i eé mantida uma variável temporária temp. Noiníciodecada execução do laço, temp é inicializado para R i.

14 2. A seguir compara-se temp com cada um dos elementos na sequência R 0, R 1,...,R i 2,R i 1,dadireita para a esquerda:se R i 1 temp então efetuamos R i R i 1,ouseja,oelemento maior que temp migraparaadireitaepassaaserr i ; o antigo valor de R i está guardado em temp. Parai 1 temos: R R R R i 1 i 1 R i 1 0 temp? temp R 1 se R i 1 0 temp:r i 1 R i 1 0 (R 0 migra p/ direita) e depois R 0 temp 3. Para i 2, j i 1 temos:

15 R R R R i 1 i 2 j i 1 temp R 2 se R i 1 1 temp:r i 2 R i 1 1 (R 1 migra p/ direita). A seguir, para i 2, j i 2temos R R R R i 2 i 2 j i 2 temp R 2 se R i 2 0 temp:r i 1 1 R i 2 0 (R 0 migra p/ direita)

16 R R R R i 2 i 1 i 2 j i 2 temp R 2 e depois R 0 temp. R R R R i 2 i 1 i 2 j i 2 temp R 2 Ou seja, se R i 2 temp então efetuamos R i 1 R i 2 : de novo o elemento maior que temp migra para a direita (o valor antigo de R i 1 já havia migrado para R i ). E assim por diante, há uma migração dos elementos maiores que temp de uma posição para a direita. 4. Depois de, no pior caso, comparar temp com

17 R i 1,R i 2,...,R 1,R 0 pode ocorrer uma das duas situações seguintes: a. Ou R j temp para um j entre i 1e0eentãoovalorde temp deve ser colocado em R j 1 e o processo migrar para a direita termina (pois temp que guarda o antigo valor de R i foi colocado no lugar certo); b. Ou depois de verificar que R 0 temp, efetuamosr 1 R 0 e temp deve ser colocado em R A seguir o mesmo laço deve ser executado para a sequência R 0,R 1,...,R i, R i 1 até considerar toda a sequência R 0,R 1,...,R N 2, R N 1.

18 1inteiroi, j, /* variáveis indexadoras */ 2 N; /* número de elementos na sequência */ 3 real R 50 ; /* vetor de até 50 elementos */ 4leiaN; 5parai 0atéN 1 faça 6 leia R i ; 7parai 1atéN 1 faça 8 temp R i ;/*temp guarda R i */ 9 j i 1; /* j i 1,i 2,...,1,0 */ 10 enquanto j 0eR j temp faça /* deslocar R j uma posição p/ direita */ 11 R j 1 R j ; 12 j j 1 ; /*p/esquerda*/ 13 R j 1 temp; /* temp no local adequado */ 14 para i 0atéN 1 faça 15 escreva R i ;

19 Simulação do algoritmo por inserção direta: Vamos supor que a sequência de entrada seja a mesma descrita no exemplo acima, com N 4. linha 10 i temp R j j R j R i temp? sequência resultante não R R ,R , R ,R R ,R , R ,R

20 i linha 11 temp R j j R j R i temp? sequência resultante sim R ,R , R 2 R 1 R ,R sim R ,R , R 1 R 0 R ,R R R ,R , R ,R

21 i temp R j j R j R i temp? sequência resultante sim R ,R , R 3 R 2 R ,R sim R ,R , R 2 R 1 R ,R sim R ,R , R 1 R 0 R ,R R ,R , R R ,R Programa em linguagem C: algoritmo de ordenação

22 por Inserção Direta /* * ORDEINS.C--Exemplo de Ordenacao por Insercao Direta * Problema: dada uma sequencia de N numeros reais (tipo float) * ordena -la em ordem crescente. */ #include stdio.h #define Nmax 100 /* Numero maximo de elementos em R[] */ void main() { int N, /* numero de elementos em R[] */ i, j, IndMin; /* indice do minimo temporario */ float R[Nmax], /* vetor de N elementos */ temp; /* variavel temporaria */ /* * Leitura dos parametros */ printf("\ndigitar o numero de elementos de R[] - "); scanf("%d", &N); printf("\nn %d\n", N); if(n Nmax){ printf("\nnumero maximo de elementos foi excedido\n"); exit(0); } /*end if */ printf("digitar os elementos de R[] a serem ordenados - "); for(i 0; i N-1; i i 1) scanf("%f", &R[i]); printf("\n"); for(i 0; i N-1; i i 1){ printf("r[%d] %f", i, R[i]); } /* end for i */ } /* * Ordenacao dos elementos em R[], em tempo * proporcional a N*N */ /* for(i 1; i N-1; i i 1){ temp R[i]; /* elemento a ser inserido no local adequado */ j i-1; while(j 0 && R[j] temp){ R[j 1] R[j]; /* desloca elemento maior para direita */ j j-1; } /* end while j */ R[j 1] temp; } /* end for i */ /* elemento temp no local adequado */ * Dar resposta final */ printf("\n Elementos de R[], em ordem crescente:\n"); for(i 0; i N-1; i i 1){ printf(" R[%d] %f ", i, R[i]);

23 } /* end for i */ } /* end main */ Exercícios adicionais recomendados: Problema adicional 1: Dados: um inteiro positivo n euma sequência de n números reais ordenados em ordem crescente, inserir um elemento novo mantendo a ordem. Problema adicional 2: Diz-se que uma sequência de n elementos (n par) é balanceada se as seguintes somas são todas iguais: a soma do maior elemento com o menor elemento; a soma do segundo maior elemento com o segundo menor elemento; a soma do terceiro maior elemento com o terceiro menor elemento; e assim por diante. Exemplo: 2,12,3,6,16,15 é balanceada pois Dados n (n par) e uma sequência de n números inteiros, elaborar um programa que verifica se ela é balanceada.

24 Fim

Notas de Aula Exemplos em C (2)

Notas de Aula Exemplos em C (2) Notas de Aula (2) Routo Terada www.ime.usp.br/~rt Depto. C. da Computação - USP N=8, X= 55 2 3 4 5 6 7 BUSCASEQ.C /* BUSCASEQ.C--Exemplo de Busca Sequencial * Problema: dada uma sequencia de N numeros

Leia mais

Exercícios de Laboratório de ICC Engenharia Ambiental 2º Semestre de 2004

Exercícios de Laboratório de ICC Engenharia Ambiental 2º Semestre de 2004 Exercícios de Laboratório de ICC Engenharia Ambiental 2º Semestre de 2004 1. Cada um dos métodos de ordenação tem uma eficiência associada que depende fortemente de quão ordenada está a seqüência entrada.

Leia mais

Linguagem C vetores multidimensionais

Linguagem C vetores multidimensionais Linguagem C vetores multidimensionais IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Introdução à linguagem C... Operadores aritméticos, de comparação

Leia mais

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C 1 Instruções de Entrada Entrada/Leitura de dados Introduzir um valor inteiro/real para X 2 Instruções de Entrada Entrada/Leitura de dados Introduzir um valor inteiro/real

Leia mais

Aula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler

Aula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler Aula 3 Listas Lineares Sequenciais Ordenadas prof Leticia Winkler 1 Listas Lineares Sequenciais Ordenadas Elementos da lista estão dispostos num vetor (contíguos na memória) e ordenado de acordo com alguma

Leia mais

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C 1 2 Repetição 1 Enquanto 'C' é verdadeira Fazer? 3 Repetição 1 Enquanto 'C' é verdadeira Fazer? while (C)?; 4 Enunciado: Construa um algoritmo para mostrar os 100

Leia mais

ESTRUTURAS COMPOSTAS. Variáveis Compostas Unidimensionais VETOR. Baseado nos slides de Rosely Sanches e Simone Senger de Souza

ESTRUTURAS COMPOSTAS. Variáveis Compostas Unidimensionais VETOR. Baseado nos slides de Rosely Sanches e Simone Senger de Souza ESTRUTURAS COMPOSTAS Variáveis Compostas Unidimensionais VETOR Baseado nos slides de Rosely Sanches e Simone Senger de Souza 2 ESTRUTURAS COMPOSTAS Pode-se organizar os dados dos tipos simples em tipos

Leia mais

Programação: Vetores

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

Leia mais

MÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA. George Gomes Cabral

MÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA. George Gomes Cabral MÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA George Gomes Cabral MÉTODOS DE CLASSIFICAÇÃO EM MEMÓRIA PRIMÁRIA Métodos Elementares Classificação por Trocas Método da Bolha Bubblesort Método de Partição

Leia mais

1ª Lista de Exercícios

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

Leia mais

MC102 - Algoritmos e programação de computadores. Aula 16: Busca e Ordenação em vetores

MC102 - Algoritmos e programação de computadores. Aula 16: Busca e Ordenação em vetores MC102 - Algoritmos e programação de computadores Aula 16: Busca e Ordenação em vetores Busca Dada uma coleção de n elementos, pretende-se saber se um determinado elemento valor está presente nessa coleção.

Leia mais

INF111 Programação II Aulas 11, 12, 13 Ordenação

INF111 Programação II Aulas 11, 12, 13 Ordenação INF Programação II Aulas,, Ordenação Departamento de Informática UFV Ordenação A ordenação é o processo de organizar um conunto (vetor) de n obetos ou registros segundo uma determinada ordem crescente

Leia mais

Linguagem C. Prof.ª Márcia Jani Cícero

Linguagem C. Prof.ª Márcia Jani Cícero Linguagem C Prof.ª Márcia Jani Cícero A estrutura Básica de um Programa em C Consiste em uma ou várias funções ou programas. main( ) // primeira função a ser executada // inicia a função // termina a função

Leia mais

ponteiros INF Programação I Prof. Roberto Azevedo

ponteiros INF Programação I Prof. Roberto Azevedo ponteiros INF1005 -- Programação I -- 2016.1 Prof. Roberto Azevedo razevedo@inf.puc-rio.br ponteiros tópicos o que são ponteiros operadores usados com ponteiros passagem de ponteiros para funções referência

Leia mais

Exercícios em C 1 Saulo O. D. Luiz

Exercícios em C 1 Saulo O. D. Luiz Exercícios em C 1 Saulo O. D. Luiz Exercícios 1. Faça um programa em C para receber três notas e seus respectivos pesos, calcule e mostre a média ponderada dessas notas. 2 Saulo O. D. Luiz #include

Leia mais

MC-102 Aula 10 Vetores

MC-102 Aula 10 Vetores MC-102 Aula 10 Vetores Instituto de Computação Unicamp 15 de Setembro de 2016 Roteiro 1 Introdução 2 Vetores Definição de Vetores Vetores Como usar Vetores e a Memória Vetores Exemplos 3 Informações Extras:

Leia mais

MC102 Algoritmos e Programação de Computadores

MC102 Algoritmos e Programação de Computadores MC102 Algoritmos e Programação de Computadores Instituto de Computação UNICAMP Primeiro Semestre de 2014 Roteiro 1 Maior número 2 Soma de n números 3 Fatorial 4 Máximo Divisor Comum (MDC) 5 Números primos

Leia mais

Linguagem C (repetição)

Linguagem C (repetição) Linguagem C (repetição) André Tavares da Silva andre.silva@udesc.br Exercício Escrever um programa que conte (mostre na tela) os números de 1 a 100. Comandos aprendidos até o momento: printf, scanf, getchar,

Leia mais

O Problema da Ordenação Métodos de Ordenação Parte 1

O Problema da Ordenação Métodos de Ordenação Parte 1 Métodos de Ordenação Parte 1 SCC-201 Introdução à Ciência da Computação II Rosane Minghim 2010 Ordenação (ou classificação) é largamente utilizada Listas telefônicas e dicionários Grandes sistemas de BD

Leia mais

INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 6 Ordenação de Vetores 01/10/2015 (c) Dept. Informática - PUC-Rio 1 Tópicos Introdução Ordenação bolha (bubble sort) Ordenação por seleção (selection sort) 01/10/2015 (c) Dept. Informática

Leia mais

6. Pesquisa e Ordenação

6. Pesquisa e Ordenação 6. Pesquisa e Ordenação Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 6. Pesquisa e Ordenação Estruturas de Dados 1 / 30 Pesquisa de Informação A pesquisa eficiente de informação

Leia mais

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza ESTRUTURAS CONDICIONAIS Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURA CONDICIONAL ESTRUTURA DE REPETIÇÃO 2 Estruturas Condicionais

Leia mais

ESTRUTURA DE DADOS VETORES E LISTAS LINEARES

ESTRUTURA DE DADOS VETORES E LISTAS LINEARES ESTRUTURA DE DADOS VETORES E LISTAS LINEARES Prof. Dr. Daniel Caetano 2012-2 Objetivos Conhecer os vetores Compreender as Listas Sequenciais Implementar uma Lista Sequencial com Vetor GRUPOS? Até o fim

Leia mais

1 Exercícios com ponteiros

1 Exercícios com ponteiros Computação para Informática Funções e Ponteiros1 EXERCÍCIOS COM PONTEIROS Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Funções e ponteiros O objetivo desta aula prática

Leia mais

Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função.

Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função. Engenharia informatica Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função. #include Int e_caracter (char c) { Return(

Leia mais

double pcompra[1000], pvenda[1000], codclient[1000]; //sempre que o usuário voltar ao menu principal ele poderá

double pcompra[1000], pvenda[1000], codclient[1000]; //sempre que o usuário voltar ao menu principal ele poderá /*Algortimo de Controle de Estoque e Cadastro*/ #include #include main(){ int i, op, op2, qtd, entradaestoque, consulproduto, consulcliente,cod[1000],estoque[1000]; double pcompra[1000],

Leia mais

Estrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática

Estrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática Estrutura de Dados Algoritmos de Ordenação Prof. Othon M. N. Batista Mestre em Informática Roteiro Introdução Ordenação por Inserção Insertion Sort Ordenação por Seleção Selection Sort Ordenação por Bolha

Leia mais

Medida do Tempo de Execução de um Programa. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP

Medida do Tempo de Execução de um Programa. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Medida do Tempo de Execução de um Programa Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Medida do Tempo de Execução de um Programa O projeto de algoritmos é fortemente influenciado pelo estudo

Leia mais

Vetores(Arrays) Olimpíadas de Informática. Aulas preparatórias Introdução a Programação em C.

Vetores(Arrays) Olimpíadas de Informática. Aulas preparatórias Introdução a Programação em C. Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C. Vetores(Arrays) Prof. Gemilson George gemilson@colegiogeo.com.br Blog: informaticageo.wordpress.com GEO.OBI Aula 05 Definição:

Leia mais

Métodos de Ordenação Parte 3

Métodos de Ordenação Parte 3 Estrutura de Dados II Métodos de Ordenação Parte 3 Prof a Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Material baseado nos materiais do Prof. Robson Lins Classificação em Memória Primária

Leia mais

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1 Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação Lista de Exercícios 1 1. O programa seguinte tem vários erros em tempo de compilação. Encontre-os. Main() int a=1; b=2,

Leia mais

Arrays. IPC2 1999/2000 F. Nunes Ferreira. Acetatos baseados no livro C: How to Program (second edition) H. M. Deitel P. J. Deitel Prentice Hall, 1994

Arrays. IPC2 1999/2000 F. Nunes Ferreira. Acetatos baseados no livro C: How to Program (second edition) H. M. Deitel P. J. Deitel Prentice Hall, 1994 Arrays IPC2 1999/2000 F. Nunes Ferreira Acetatos baseados no livro C: How to Program (second edition) H. M. Deitel P. J. Deitel Prentice Hall, 1994 Arrays Introdução 2 Array é uma estrutura de dados, todos

Leia mais

Introdução Métodos de Busca Parte 1

Introdução Métodos de Busca Parte 1 Introdução Métodos de Busca Parte 1 SCC-201 Introdução à Ciência da Computação II Rosane Minghim 2009 Importância em estudar busca Busca é uma tarefa muito comum em computação? Vários métodos e estruturas

Leia mais

Aula 15 Variáveis Indexadas (vetores)

Aula 15 Variáveis Indexadas (vetores) Aula 15 Variáveis Indexadas (vetores) Além das variáveis normais já conhecidas, podemos ter também variáveis indexadas. Tais variáveis são referenciadas por um nome e um índice. Especialmente úteis para

Leia mais

ESTRUTURAS DE CONTROLE

ESTRUTURAS DE CONTROLE ESTRUTURAS DE CONTROLE ESTRUTURA SEQUENCIAL E ESTRUTURAS CONDICIONAIS Introdução à Ciência da Computação Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples

Leia mais

Module Introduction. Programação. Cap. 4 Algoritmos e Programação Estruturada

Module Introduction. Programação. Cap. 4 Algoritmos e Programação Estruturada 5374 : Engenharia Informática 6638 : Tecnologias e Sistemas de Informação 9099 : Bioengenharia 10135 : Ciências Biomédicas Cap. 4 Algoritmos e Estruturada Module Introduction Algoritmos e Estruturada Objectivos:

Leia mais

Exercícios - Questões Objetivas

Exercícios - Questões Objetivas Exercícios - Questões Objetivas Apresentação 02 - Tipos de Dados 1. O nome de uma variável é criado por um programador devendo seguir algumas regras, são listas de nomes válidos, EXCETO: a) Nota1, Nota2,

Leia mais

Introdução à Ciência da Computação SCC0120 Prof. Zhao Liang. Aula de Laboratório 1: Operadores, comandos básicos e comando IF 27/03/2012

Introdução à Ciência da Computação SCC0120 Prof. Zhao Liang. Aula de Laboratório 1: Operadores, comandos básicos e comando IF 27/03/2012 Introdução à Ciência da Computação SCC0120 Prof. Zhao Liang Aula de Laboratório 1: Operadores, comandos básicos e comando IF 27/03/2012 PARTE 1: OPERADORES E COMANDOS BÁSICOS EXEMPLO 1.1: Programa que

Leia mais

Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1

Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1 Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1 ORDENAÇÃO E BUSCA Ordenação: Bublesort, seleção direta e inserção direta. Busca: linear e binária 1 - ORDENAÇÃO (CLASSIFICAÇÃO) DE DADOS Em diversas

Leia mais

Estruturas de repetição. Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C.

Estruturas de repetição. Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C. capa Estruturas de repetição Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C. - Aprender a implementar algoritmos em C com laços de repetições. Estruturas de

Leia mais

Prova de Recuperação

Prova de Recuperação Programação I Prova de Recuperação 1. (1 ponto) Considere um programa que leia de um arquivo de veículos os seguintes dados: placa de um veículo, ano de fabricação, consumo médio de combústivel, modelo

Leia mais

Vetores. e o programa deverá ler os valores separadamente:

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.

Leia mais

PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C

PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C 1 Implementações básicas: a) Implementar o procedimento LerMatriz que preenche uma matriz de L linhas por C colunas de inteiros (L, C 1); b) Implementar o procedimento

Leia mais

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

Departamento de Engenharia Rural Centro de Ciências Agrárias. Programação I Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Algoritmos de busca Basicamente podem ser citadas duas estratégias para procurar (ou buscar) algo em uma coleção de dados: Busca

Leia mais

Estruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1

Estruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 17 - Busca 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

1) Operadores de auto incremento ++ e auto decremento --

1) Operadores de auto incremento ++ e auto decremento -- Aula 09 - Operadores de auto incremento e auto decremento, atribuição múltipla, atribuição na declaração, atribuição resumida e algumas regras de boa programação. 1) Operadores de auto incremento ++ e

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 08/2008 Material baseado

Leia mais

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. e saída Biblioteca stdio.h Comandos Função scanf() Função gets() Função getchar() Material cedido pelo prof. Daniel Callegari scanf() Rotina de entrada que lê todos os tipos de dados. Protótipo: int scanf(const

Leia mais

Métodos Computacionais. Comandos Condicionais e de Repetição em C

Métodos Computacionais. Comandos Condicionais e de Repetição em C Métodos Computacionais Comandos Condicionais e de Repetição em C Tópicos da Aula Hoje vamos acrescentar comportamentos mais complexos a programas em C Comandos Condicionais if-else switch Comandos de Repetição

Leia mais

Métodos de ordenação. Bubble sort:

Métodos de ordenação. Bubble sort: Métodos de ordenação Bubble sort: O método de ordenação por bubble sort ou conhecido como bolha consiste em compara dados armazenados em um vetor de tamanho qualquer, comparando cada elemento de uma posição

Leia mais

Exercícios de ordenação e matrizes

Exercícios de ordenação e matrizes Exercícios de ordenação e matrizes 1. Faça um programa que leia 6 valores inteiros, armazeno-os em um vetor, organize o vetor de forma que os números sejam armazenados em ordem crescente e apresente o

Leia mais

Exercícios Capítulos 5 e 6

Exercícios Capítulos 5 e 6 Estruturas de Dados Exercícios Capítulos e 6 6//6 (c) Dept. Informática - PUC-Rio Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus () Capítulo

Leia mais

Cœlum Australe. Jornal Pessoal de Astronomia, Física e Matemática - Produzido por Irineu Gomes Varella

Cœlum Australe. Jornal Pessoal de Astronomia, Física e Matemática - Produzido por Irineu Gomes Varella Cœlum Australe Jornal Pessoal de Astronomia, Física e Matemática - Produzido por Irineu Gomes Varella Criado em 1995 Retomado em Junho de 2012 Ano III Nº 023 - Agosto de 2012 MÉTODOS DE ORDENAÇÃO Prof.

Leia mais

Vetores, Strings e Matrizes

Vetores, Strings e Matrizes Vetores, Strings e Matrizes Prof. Dr. Silvio do Lago Pereira Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo Vetores Um vetor é um tipo de dados agregado homogêneo, cujos

Leia mais

Instituto Superior Técnico Introdução aos Algoritmos e Estruturas de Dados

Instituto Superior Técnico Introdução aos Algoritmos e Estruturas de Dados Instituto Superior Técnico Introdução aos Algoritmos e Estruturas de Dados Ano Lectivo de 2004/2005 2 o Semestre 1 o Teste A - 30 de Abril de 2005 Duração: 2h - O teste é sem consulta. - Para cada questão

Leia mais

LP II Estrutura de Dados

LP II Estrutura de Dados LP II Estrutura de Dados Linguagem C Seleção e Repetição Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Estruturas de Seleção Simples Composta Aninhada Estruturas de

Leia mais

LISTA DE EXERCÍCIOS MÊS 04

LISTA DE EXERCÍCIOS MÊS 04 São José dos Campos, 05 de Junho de 2008 Disciplina: CES 10 Introdução à Computação. Semestre 2008-2º Período Professor: Carlos Henrique Quartucci Forster Estagiária: Michelle de Oliveira Parreira Instituto

Leia mais

Algoritmos de Busca em Tabelas

Algoritmos de Busca em Tabelas Dentre os vários algoritmos fundamentais, os algoritmos de busca em tabelas estão entre os mais usados. Considere por exemplo um sistema de banco de dados. As operações de busca e recuperação dos dados

Leia mais

Métodos Computacionais. Listas Encadeadas

Métodos Computacionais. Listas Encadeadas Métodos Computacionais Listas Encadeadas Vetores Declaração de vetor implica na especificação de seu tamanho Não se pode aumentar ou diminuir tamanho Outra alternativa no uso de vetores é alocar dinamicamente

Leia mais

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. Introdução Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. 1 definições Uma string é uma sequência, um conjunto, ou uma cadeia de caracteres.

Leia mais

Estruturas de Controle de Fluxo

Estruturas de Controle de Fluxo Aula Prática IX Aula Prática IX Teoria Estruturas de Controle de Fluxo Instrução condicional simples Em pseudocódigo: Na linguagem C: se entao fimse if ()

Leia mais

Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula

Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula Tópicos Introdução Ordenação por bolha (bubble sort)

Leia mais

Método de ordenação - objetivos:

Método de ordenação - objetivos: Método de ordenação - objetivos: Corresponde ao processo de rearranjar um conjunto de objetos em uma ordem ascendente ou descendente. Facilitar a recuperação posterior de itens do conjunto ordenado. São

Leia mais

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Operações com Strings Introdução a Ponteiros e Funções Profa Rosana Braga 1 Strings Strings são seqüências de caracteres

Leia mais

MC-102 Aula 19 Registros

MC-102 Aula 19 Registros MC-102 Aula 19 Registros Instituto de Computação Unicamp 4 de Maio de 2015 Roteiro 1 Registros 2 Redefinição de tipos (Instituto de Computação Unicamp) MC-102 Aula 19 4 de Maio de 2015 2 / 17 Registros

Leia mais

Computação I (MAB120) DCC/UFRJ

Computação I (MAB120) DCC/UFRJ Computação I (MAB120) DCC/UFRJ Aula 12: vetores 13 de maio de 2016 Objetivos dessa aula Apresentar o conceito de Tipos Compostos Homogêneos Apresentar o conceito de vetores Apresentar as operações básicas

Leia mais

LISTA DE EXERCÍCIOS - ro. 04

LISTA DE EXERCÍCIOS - ro. 04 USP ICMC SSC SSC0100 - Introdução à Ciência da Computação I (Prática) Professor responsável: Fernando Santos Osório Semestre: 2009/1 Horário: Terça 14h20 (Turma A2) E-mail: fosorio.at. icmc.usp.br fosorio.at.

Leia mais

Introdução à Programação em C (II)

Introdução à Programação em C (II) Introdução à Programação em C (II) Resumo Streams de Texto Leitura e escrita de caracteres Caracteres como números inteiros Exemplos Cópia de Ficheiros Contagem de Caracteres Contagem de Linhas Contagem

Leia mais

MESMO QUE ESTAS VARIÁVEIS TENHAM NOME IDÊNTICOS

MESMO QUE ESTAS VARIÁVEIS TENHAM NOME IDÊNTICOS Funções As funções são blocos de instruções que facilitam o entendimento do código. Porque usar funções? Para permitir o reaproveitamento de código já construído (por você ou por outros programadores);

Leia mais

Modularidade - Fun ções e Procedimentos

Modularidade - Fun ções e Procedimentos Modularidade - Fun ções e Procedimentos José Gustavo de Souza Paiva Problema Em diversas situa ções, é preciso executar uma tarefa específica diversas vezes em um programa, variando apenas os dados de

Leia mais

Lógica de Programação I

Lógica de Programação I Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Comando Do/While Além do comando while, existem outras estruturas para implementar laços repetitivos. O comando Do/While funciona de forma similar ao

Leia mais

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Linguagem C Controle do Fluxo de Execução. Lógica de Programação Linguagem C Controle do Fluxo de Execução Lógica de Programação Caro(a) aluno(a), Aqui começaremos a escrever os nossos primeiros programas em uma Linguagem de Programação. Divirta-se!!! Estrutura Seqüencial

Leia mais

CAP. IX - MANIPULAÇÃO DE ARQUIVOS Generalidades sobre Arquivos. 9.2 Abertura e Fechamento de Arquivos. Operações com arquivos:

CAP. IX - MANIPULAÇÃO DE ARQUIVOS Generalidades sobre Arquivos. 9.2 Abertura e Fechamento de Arquivos. Operações com arquivos: CAP. IX - MANIPULAÇÃO DE ARQUIVOS 9.1 Generalidades sobre arquivos 9.2 Abertura e fechamento de arquivos 9.3 Arquivos textos e arquivos binários 9.4 Leitura e escrita em arquivos binários 9.5 Procura direta

Leia mais

Introdução à Ciência da Computação. Sumário. Estruturas de Dados. Agradecimentos. Arranjos: Vetores, Strings & Matrizes em C

Introdução à Ciência da Computação. Sumário. Estruturas de Dados. Agradecimentos. Arranjos: Vetores, Strings & Matrizes em C Agradecimentos Introdução à Ciência da Computação Arranjos: Vetores, Strings & Matrizes em C Parte dos slides a seguir são adaptações dos originais gentilmente cedidos por: Prof. Rudinei Goularte Prof.

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Trabalho nº 5 Funções http://tele1.dee.fct.unl.pt/pm

Leia mais

Enunciado do problema: Calcule o valor de e, base dos logaritmos neplerianos, usando a série infinita abaixo

Enunciado do problema: Calcule o valor de e, base dos logaritmos neplerianos, usando a série infinita abaixo Mais alguns exercícios em pseudocódigo Enunciado do problema: Calcule o valor de e, base dos logaritmos neplerianos, usando a série infinita abaixo e 1 =1+ 1 1! + 1 2! + 1 3! + 1 4! + 1 5! + = 1 i=0 i!.

Leia mais

Análise de Algoritmos

Análise de Algoritmos Análise de Algoritmos Parte 1 Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 04 Algoritmos e Estruturas de Dados I Qual a diferença entre um algoritmo e um programa? Como escolher o algoritmo

Leia mais

Funções em Linguagem C Parte II

Funções em Linguagem C Parte II Slides inicialmente preparados pelo Prof. Dr. Claudio Fabiano Motta Toledo Funções em Linguagem C Parte II Profa. Dra. Elisa Yumi Nakagawa 1. Semestre 2017 Sumário Introdução a Ponteiros Escopo de Variáveis

Leia mais

Sub-rotinas. 2014/2 Programação Básica de Computadores (INF 09325) Freddy Brasileiro

Sub-rotinas. 2014/2 Programação Básica de Computadores (INF 09325) Freddy Brasileiro Sub-rotinas 2014/2 Programação Básica de Computadores (INF 09325) Freddy Brasileiro www.inf.ufes.br/~fbrasileiro fbrasileiro@inf.ufes.br Programa / Bibliografia 4. Sub-programas e funções 1. Funções e

Leia mais

Estrutura do programa

Estrutura do programa Linguagem C Estrutura do programa Exemplo: #include #include main() { printf( Ola, mundo! ); system( pause ); }

Leia mais

1 Resumo: Matrizes. 2.1 Como declarar uma matriz IME/USP. Departamento de Ciência da Computação

1 Resumo: Matrizes. 2.1 Como declarar uma matriz IME/USP. Departamento de Ciência da Computação Departamento de Ciência da Computação MAC2166 Introdução a Computação IME/USP Matrizes 1 Resumo: Matrizes são estruturas bi-dimensionais utilizadas para armazenar dados de um mesmo tipo. Para declarar

Leia mais

5 Comando de Seleção Simples e Composta

5 Comando de Seleção Simples e Composta 5 Comando de Seleção Simples e Composta Ronaldo F. Hashimoto e Carlos H. Morimoto Essa aula introduz o comando de seleção, que permite ao seu programa tomar decisões sobre o fluxo do processamento, ou

Leia mais

Introdução à Análise de Algoritmos

Introdução à Análise de Algoritmos Quanto tempo leva a execução de determinado algoritmo? Quando temos dois algoritmos que fazem a mesma coisa, qual deles leva menos tempo? A análise do algoritmo preocupa-se com as questões acima. É sempre

Leia mais

Matrizes. DCC 119 Algoritmos

Matrizes. DCC 119 Algoritmos Matrizes DCC 119 Algoritmos Matrizes: vetores multidimensionais Assim como os vetores, as matrizes são estruturas de dados homogêneas. Podem ser construídas dos diversos tipos básicos primitivos (real,

Leia mais

Funções Vetores Matrizes

Funções Vetores Matrizes Funções Vetores Matrizes Além dos tipos elementares (float, double, char, etc.), é possível também passar um vetor ou uma matriz como parâmetro de funções. Quando um vetor é passado como parâmetro, o que

Leia mais

MÉTODOS DE PESQUISA DE DADOS EM MEMÓRIA PRIMÁRIA. Material da Prof. Ana Eliza

MÉTODOS DE PESQUISA DE DADOS EM MEMÓRIA PRIMÁRIA. Material da Prof. Ana Eliza MÉTODOS DE PESQUISA DE DADOS EM MEMÓRIA PRIMÁRIA Material da Prof. Ana Eliza Métodos de Pesquisa em Memória Primária Pesquisa Seqüencial Bases ordenadas e não-ordenadas Pesquisa Seqüencial Melhorada Bases

Leia mais

Modulo 9: Você define como éo dado... Struct e typedef

Modulo 9: Você define como éo dado... Struct e typedef PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 9: Você define como éo dado... Struct e typedef Aura -Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro P1, Trabalho 5 e 6 Struct: Introdução; Criando

Leia mais

Figura 1: Uma matriz contem elementos de um mesmo tipo, com início em (0,0). 30 é o número de colunas!

Figura 1: Uma matriz contem elementos de um mesmo tipo, com início em (0,0). 30 é o número de colunas! 22 Matrizes Ronaldo F Hashimoto e Carlos H Morimoto Oobjetivodestaaulaéintroduzirotipomatriz Aofinaldessaaulavocêdeverásaber: descrever o que são matrizes em C Declarar matrizes Como acessar elementos

Leia mais

Disciplina de Algoritmos e Programação

Disciplina de Algoritmos e Programação Disciplina de Algoritmos e Programação Aula Passada Prática com declaração e inicialização de variáveis Capacidade de representação (estouro de representação) Tamanho ocupado pela variável na memória (comando

Leia mais

Linguagens de Programação I

Linguagens de Programação I Linguagens de Programação I Tema # 6 Geração de Números Aleatórios Introdução a Funções Susana M. Iglesias 1 NUMEROS ALEATÓRIOS Uma aplicação divertida e popular da programação é sua utilização, em criar

Leia mais

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Disciplina de Introdução à

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 04 Alocação Dinâmica Edirlei Soares de Lima Vetores - Declaração e Inicialização Declaração de um vetor: int meu_vetor[10]; Reserva um espaço de memória

Leia mais

Vetores são estruturas indexadas utilizadas para armazenar dados de um mesmo tipo: int, char, float ou double. Oexemploaseguirédeumvetordeinteiros:

Vetores são estruturas indexadas utilizadas para armazenar dados de um mesmo tipo: int, char, float ou double. Oexemploaseguirédeumvetordeinteiros: 18 Vetores Ronaldo F. Hashimoto e Carlos H. Morimoto Nessa aula vamos introduzir o tipo vetor. Aofinaldessaaulavocêdeverásaber: Descrever o que são vetores na linguagem C. Declarar vetores. Como acessar

Leia mais

1ª versão. #include <stdio.h> #include <string.h> #include <stdlib.h> #define maxdiscos 1000

1ª versão. #include <stdio.h> #include <string.h> #include <stdlib.h> #define maxdiscos 1000 #include #include #include #define maxdiscos 1000 typedef struct { char nomeautor[80]; char nomedisco[100]; int numdiscosvendidos; DISCO; 1ª versão int main() { DISCO listadiscos[maxdiscos];

Leia mais

Capítulo 4: Condicionais

Capítulo 4: Condicionais Capítulo 4: Condicionais INF1004 e INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra.

Leia mais

INF 1620 P1-10/04/02 Questão 1 Nome:

INF 1620 P1-10/04/02 Questão 1 Nome: INF 1620 P1-10/04/02 Questão 1 Considere uma disciplina que adota o seguinte critério de aprovação: os alunos fazem duas provas (P1 e P2) iniciais; se a média nessas duas provas for maior ou igual a 5.0,

Leia mais

MC-102 Aula 14. Instituto de Computação Unicamp. 29 de Setembro de 2016

MC-102 Aula 14. Instituto de Computação Unicamp. 29 de Setembro de 2016 MC-102 Aula 14 Funções II Instituto de Computação Unicamp 29 de Setembro de 2016 Roteiro 1 Escopo de Variáveis: variáveis locais e globais 2 Exemplo Utilizando Funções 3 Vetores, Matrizes e Funções Vetores

Leia mais

Exercícios no papel... Computação I (CC)

Exercícios no papel... Computação I (CC) Exercícios no papel... Computação I (CC) 2013 1 Escreva um programa que imprima a média aritmética dos números 8, 9 e 7. Escreva um programa que imprima a média aritmética dos números 8, 9 e 7. #include

Leia mais

Módulo 5 Vetores e Alocação Dinâmica

Módulo 5 Vetores e Alocação Dinâmica Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora

Leia mais

2. Ordenação por Seleção

2. Ordenação por Seleção 1 Algoritmos de Ordenação Simples (SelectionSort, InsertionSort, BubbleSort) 1. Introdução Objetivo: Determinar a seqüência ordenada dos elementos de um vetor numérico. Algumas considerações: O espaço

Leia mais