Aula 06 Introdução à Programação Matrizes

Documentos relacionados
Computação Eletrônica. Vetores e Matrizes. Prof: Luciano Barbosa. CIn.ufpe.br

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho

Linguagem C vetores. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

Algoritmos e Programação

Ponteiros. Introdução e Alocação Dinâmica

Programação: Vetores

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

Computação 2. Aula 2. Profª. Fabiany Vetores e Matrizes

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

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

Algoritmos e Programação

Curso Básico de Programação Aula 11. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU

Matrizes. DCC 119 Algoritmos

CURSO BÁSICO DE PROGRAMAÇÃO AULA 19. Netbeans - Linguagem JAVA - Vetores - Matrizes - Métodos

PROGRAMAÇÃO A. Vetores

Fundamentos de Programação

Linguagem C Vetores, Matrizes e Strings

Programação de Computadores 1 Lista 2. Prof. Álvaro A. F. de Souza DECSI - ICEA - UFOP

Estruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C

Disciplina de Algoritmos e Programação. Vetor e Matriz

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

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Disciplina de Algoritmos e Programação

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: variáveis compostas homogêneas: Arrays Strings

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Matrizes. Prof. Alex Camargo

Programação I Matrizes e Strings. Prof. Carlos Alberto

CCO 016 / COM 110 Fundamentos de Programação

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

O vetor é provavelmente um dos mais simples e importantes tipos agregados. Através do seu uso, podemos

Computação Eletrônica. Strings. Prof: Luciano Barbosa. CIn.ufpe.br

Linguagem C Variáveis Indexadas ( vetores e Matrizes) Lógica de Programação

LINGUAGEM C VETOR E MATRIZ

Programação científica C++

Vetores e Matrizes. Conceito. Conceito. Conceito. Conceito. Conceito. Variáveis Compostas Homogêneas. Matriz

Dados Estruturados Vetores e Matrizes. SCC120 - Introdução à Ciência de Computação

Algoritmos e Estruturas de Dados II IEC013

ESTRUTURAS COMPOSTAS

Algoritmos e Estruturas de Dados. Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras PURO

Linguagem C: Introdução

TÉCNICAS DE LINGUAGEM DE PROGRAMAÇÃO

ESTRUTURAS COMPOSTAS VETOR

Alocação Dinâmica em C

Universidade Federal de Goiás Instituto de Informática Introdução à Computação Professor: Julliano Rosa Nascimento

ponteiros INF Programação I Prof. Roberto Azevedo

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica

Comandos de controle de fluxo: if / for / while / do while.

Introdução a Programação de Jogos

Introdução a Computação

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Matrizes. Para começar... Matrizes. Matrizes

Programação de Computadores I. Aula - Vetores. Professor Ilaim Costa Junior.

Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira Anilton Joaquim da Silva

12 - Dados Estruturados Vetores, Matrizes e Strings

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo

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

Vetores Unimensionais

Computação Informática

Linguagem de Programação

Matrizes (Vetores Bidimensionais)

Arrays (Vetores) Arrays (Vetores) 28/04/ Índices. profs. } Ex1: Se eu preciso manipular 100 nomes de pessoas ao mesmo tempo... é melhor...

CAPÍTULO VIII. Variáveis Indexadas: Vetores e Matrizes CAPÍTULO VIII VARIÁVEIS INDEXADAS VARIÁVEIS INDEXADAS HOMOGÊNEAS UNIDIMENSIONAIS (VETORES)

Variáveis Compostas Homogêneas Vetores

3. Linguagem de Programação C

Capítulo 7 Matriz. Roteiro

Introdução a Ponteiros e Vetores em C

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.

Fundamentos de Programação 1

Instituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I

Transcrição:

Aula 06 Introdução à Programação Matrizes Prof. Gustavo Callou gustavo.callou@ufrpe.br gcallou@gmail.com

Roteiro Matrizes Unidimensionais (Vetor) Bidimensionais String Exercícios Gustavo Callou DEINFO/UFRPE 2

Matriz Índice

Matriz coleção de variáveis de mesmo tipo que é referenciada por um nome comum. Índice meio de acessar os elementos específicos de uma matriz. A matriz mais comum em C é a de string. Em C, o elemento inicial de uma matriz tem índice igual a zero. Exemplo de aplicação: armazenar as notas de 50 alunos.

Matrizes Unidimensionais: Declaração: Tipo nome_var[tamanho]; Ex: Matriz de sete characteres começando pelo endereço 1000.

Matrizes Unidimensionais: Declaração: Tipo nome_var[tamanho]; Ex2: float nota[50]; Assim essa matriz vai de nota[0] até nota[49]. void main(void){ float nota[10]; //reserva 10 elementos float int i; } for(i=0; i<10; i++){ nota[i] = i*2; } nota[0]=0;

Importante: cuidado para não tentar acessar um indice que não foi declarado para a matriz, isso pode fazer com que um valor seja declarado a uma outra posição da memória. Ex: main() { int ar[10], j; for (j = 0; j <= 10; j++) { ar[j] = 0; } }

Operador sizeof

Operador sizeof usado para se saber o tamanho, em bytes, ocupados por determinada variável. Ex: float notas[4*10 + 5]; sizeof(notas); sizeof(notas[0]);

Operador sizeof usado para se saber o tamanho, em bytes, ocupados por determinada variável. Ex: float notas[4*10 + 5]; sizeof(notas); /* valor 45 vezes o número de bytes ocupado por uma variável do tipo float */ sizeof(notas[0]); /* espaço ocupado pelo tipo float */

Inicialização de matrizes int meuarranjo1[5]; int meuarranjo2[5] = {1, 2, 3, 4, 5}; Obs: Quando não se inicializa os valores da matriz, os valores presentes em cada elemento são indefinidos.

Um uso muito comum de matrizes unidimensionais é como string de caracteres. Em C, uma string é definida como um matriz de caracteres terminada por null (\0). Assim, deve-se declarar o tamanho da matriz um elemento a mais para o \0. Ex: como declarar uma variavel para receber a palavra futebol?

Um uso muito comum de matrizes unidimensionais é como string de caracteres. Em C, uma string é definida como um matriz de caracteres terminada por null (\0). Assim, deve-se declarar o tamanho da matriz um elemento a mais para o \0. Ex: como declarar uma variavel para receber a palavra futebol? char s[8] ;

Funções basicas para manipulação de strings:

Exemplo: Comando para pegar os dados digitados pelo usuario.

Exemplo: Strcmp() retorna falso se as strings forem iguais. Assim, deve-se usar o!

Matriz unidimensional (vetor) int meuarranjo1[5]; char s[10]; Inicialização de Vetor Tipo nome [tamanho1] = {valores} Ex: int i[10] = {1,2,3,4,5,6,7,8,9,10}; char str[14] = Eu gosto de C ; char str[14] = E, u,, g, o, s, t, o,, d, e,, C ; char s[] = Eu gosto de C ; Obs: printf( %d, sizeof(s));

Preenchendo um Vetor de inteiros int vet[10]; int i; for (i=0; i<10; i++){ vet[i]=i+1; } for (i=0; i<10; i++){ printf( %d, vet[i]); }

Exercício 1 ) Fazer um programa para preencher um vetor de 10 posições com as notas dos alunos de uma turma. Em seguida, o programa deve ler o vetor e imprimir: a media aritmética dos 10 alunos, a maior e a menor nota.

Exercícios 2) Sendo V o vetor abaixo e as variaveis X=2 e Y=4, quais os valores de: 2 6 8 4 10 9 1 3 33 14 0 1 2 3 4 5 6 7 8 9 a) V[X+1] b) V[X] + 1 c) V[X+Y] d) V[8-V[2]] e) V[V[V[7]]]

Exercícios 3) Construa um programa em C que preenche um vetor de inteiros de 100 números, colocando 0 nas posições indexadas por numero par e 1 nas posições indexadas por numero ímpar. 4) Construa um programa em C que soma dois vetores inteiros e imprime o resultado da soma. 5 ) Construa um programa em C que multiplique os valores de um vetor de reais de 20 posições pelos valores (em ordem inversa) de um outro vetor de reais de 20 posições. Os resultados das multiplicações devem ser armazenados num terceiro vetor em ordem direta.

Exercícios 6) Faça um programa que determine o maior e o menor elementos de um vetor 7) Faça um algoritmo que faz o shift dos elementos de um vetor para a direita. A operação de shift é descrita como o deslocamento de todos os elementos de uma posição. Exemplo: 1 3 9 4 2 depois do shift fica 2 1 3 9 4

Exercícios 8) Faça um programa que dado o vetor unidimensional [2; 4; 35; 50; 23; 17; 9; 12; 27; 5] retorne: a. maior valor b. média dos valores c. os valores dispostos em ordem crescente 9) Faça uma função que retorne a posição de um dado caracter dentro de uma string. 19:22 Gustavo Rau de Almeida Callou 23

Exercícios 10) Faça um rotina que remova um caracter de uma string do tipo char Str[100], dada a posição do caracter. 11) Faça uma rotina que insira um caracter em uma string do tipo char Str[100], dada a posição do caracter. 12) Faça um programa que dado 2 palavras, determine: a. Se as palavras são iguais; b. Caso as palavras sejam diferentes, qual delas tem maior comprimento (não esquecer a possibilidade de existirem palavras diferentes de mesmo tamanho); c. Verifique se a segunda palavra é uma sub string da primeira: Exemplo: Palavra 1= casamento Palavra 2 = casa 19:22 Gustavo Rau de Almeida Callou 24

C da suporte a matrizes multidimensionais Matrizes bidimensionais int num[1][2] /* matriz com 2 elementos*/ int num[2][2] /* matriz com 4 elementos*/ int num[2][3] /* matriz com 6 elementos*/ int num[3][3] /* matriz com 9 elementos*/ 19:30 Gustavo Rau de Almeida Callou 25

Bidimensionais (matrizes) Manipulacao MATRIZ 0 0 1 2 3 4 5 6 7 MATRIZ[2][3] 1 2 3 4 5 6 7

Exemplo de uma matriz bidimensional

Matrizes multidimensionais Declaração: Tipo nome [tamanho1][tamanho2] [tamanhon]

Exercícios 13) Crie um programa capaz de ler os dados de uma matriz quadrada de inteiros. Ao final da leitura o programa deverá imprimir o número da linha e da coluna que contém o menor dentre todos os números lidos. 14) Escreva um programa que leia uma matriz n x m do usuário e a transforme em um vetor unidimensional de n.m posições 19:28 Gustavo Rau de Almeida Callou 29