Você está na página 1de 27

MODULO III

Prof. Miguel Brasil

MODULO III Prof. Miguel Brasil "Programadores não são máquinas ou seres de outro mundo, são apenasmiguelbbrasil@hotmail.com www.facebook.com/profmiguelbrasil @miguelbbrasil " id="pdf-obj-0-6" src="pdf-obj-0-6.jpg">

"Programadores não

são

máquinas ou seres de outro mundo, são apenas pessoas que

transformam

sonhos

em

produtos" (Prof. Miguel Brasil)

VETORES,

MATRIZES E

STRINGS

VETORES 3

VETORES

VETORES 3
VETORES  São variáveis que são dimensionadas com um determinado tamanho, que indica quantos elementos do

VETORES

  • São variáveis que são dimensionadas com um determinado tamanho, que indica quantos elementos do tipo especificado podem ser armazenados;

  • Também

são

dimensão);

conhecidos

como

matrizes

unidimensionais

(uma só

  • A declaração de um vetor na linguagem C obedece ao seguinte formato:

tipo nome[tamanho];

VETORES  São variáveis que são dimensionadas com um determinado tamanho, que indica quantos elementos do
  • Onde tipo é o tipo de dados que serão armazenados, nome é o nome da variável e tamanho é um valor numérico que indica quantos elementos do tipo especificados serão armazenados.

VETORES  Acesso :  Para acessar um dos elementos de um vetor, basta utilizar o

VETORES

Acesso:

  • Para acessar um dos elementos de um vetor, basta utilizar o nome da variável seguido do índice do elemento desejado. Em C (em outras linguagens isto pode variar!), o índice do primeiro elemento do vetor é sempre 0 (zero), e do último é o tamanho (quantidade de elementos no vetor) 1 (um).

  • Ex.:

float vet[4];

10.5 2.77 8.97 4.31
10.5
2.77
8.97
4.31
  • A declaração acima define uma variável chamada vet, que pode armazenar até 4 elementos do tipo ponto flutuante.

VETORES  Os acessos são feitos utilizando o índice do elemento que se deseja acessar: 

VETORES

Os acessos são feitos utilizando o índice do elemento que se deseja acessar:

VETORES  Os acessos são feitos utilizando o índice do elemento que se deseja acessar: 

IMPORTANTE: em C (em outras linguagens isto pode variar!) não existe controle automático de final. Se o índice solicitado for maior

que o declarado no momento da criação do vetor, o compilador

interpretará isso como um erro. Ex.:

VETORES  Os acessos são feitos utilizando o índice do elemento que se deseja acessar: 
VETORES  Não confunda o índice com valor do elemento. O índice é um indicativo da

VETORES

Não confunda o índice com valor do elemento. O índice é um indicativo da posição do elemento, enquanto o valor é o conteúdo

armazenado na posição.

índice

VETORES  Não confunda o índice com valor do elemento. O índice é um indicativo da

tipo

 Ex.: ou tipo índice valor
Ex.:
ou
tipo
índice
valor

valor

Além de tornarem os programas mais elegantes, vetores simplificam e reduzem programas que devem trabalhar com grandes quantidades de dados semelhantes. Além disso, a lógica fica mais compreensível, pois

os valores que fazem parte de um mesmo conjunto ficam agrupados

explicitamente.

VETORES  Para ilustrar isto, vamos fazer um programa que leia 8 valores inteiros, calcule a

VETORES

Para ilustrar isto, vamos fazer um programa que

leia 8 valores inteiros, calcule a sua média, e mostre na tela os valores

que forem maiores que a

média.

Sem o conhecimento de vetores:

VETORES  Para ilustrar isto, vamos fazer um programa que leia 8 valores inteiros, calcule a
VETORES  Com o conhecimento de vetores: 5 4 0 1 2 3 9

VETORES

Com o conhecimento de vetores:

5 4 0 1 2 3
5
4
0
1
2
3
VETORES  Com o conhecimento de vetores: 5 4 0 1 2 3 9
REPARE A DIFERENÇA ENTRE OS DOIS CÓDIGOS  Imagine agora que se deseja a média de

REPARE A DIFERENÇA ENTRE OS DOIS CÓDIGOS

REPARE A DIFERENÇA ENTRE OS DOIS CÓDIGOS  Imagine agora que se deseja a média de
  • Imagine agora que se deseja a média de 10000 elementos, e não apenas de 8!

STRINGS

STRINGS  Strings em C são tratados como vetores de tamanho determinado que podem armazenar qualquer

STRINGS

Strings em C são tratados como vetores de tamanho determinado que podem armazenar qualquer caracter. Diferentemente de declarar apenas uma variável do tipo char (que armazena apenas um caracter) a string é uma cadeia de caracteres, ou seja, pode guardar quantos caracteres nós determinarmos.

Portanto, para declararmos uma string, basta nós criarmos um vetor de caracteres dessa forma:

char minhaString [50];

STRINGS  O único problema das strings são o seu consumo de recursos . Por exemplo,

STRINGS

O único problema das strings são o seu consumo de recursos. Por exemplo, se levarmos em conta o vetor de caracteres que acabamos de

criar, apesar dele conter 50 posições, nós só poderemos digitar até 49

letras. Isso ocorre porque toda string deve ter um caracter terminal, que geralmente é indicado pelo NULL (nulo). Isso quer dizer que um vetor de caracteres (string) de 50 posições terá 49 caracteres efetivos e

um NULL indicando seu final.

Lidar com strings é extremamente importante para a programação, pois a string é a base de qualquer arquivo e principalmente controles

de rotina (por exemplo: rotinas e procedimentos de banco de dados, o

SQL; endereçamento de arquivos; modificação de configurações...).

STRINGS  Capturar uma String : Para entrarmos com uma String no sistema em C usamos

STRINGS

Capturar uma String: Para entrarmos com uma String no sistema em C usamos a função gets(). Esta função permite que possamos pegar toda a linha digitada e não só até o primeiro espaço em branco do teclado.

Ex.:

STRINGS  Capturar uma String : Para entrarmos com uma String no sistema em C usamos
STRINGS Obter o tamanho uma String: Para obter o tamanho de de uma string usamos a

STRINGS

Obter o tamanho uma String: Para obter o tamanho de de uma string usamos a função
Obter o tamanho
uma
String: Para obter o tamanho de
de
uma string
usamos
a
função strlen (que é a junção do
inglês
String
Length,
que
quer
dizer, largura de string).
A função strlen retorna o número
de caracteres utilizados (incluindo
os espaços se houver). Ela recebe
como argumento apenas a string
que deve ser verificada e retorna o
número de caracteres

encontrados.

STRINGS  Percorrendo uma String : pode-se percorrer uma string através de estruturas de repetição. 16

STRINGS

Percorrendo uma String:

pode-se percorrer uma

string através de estruturas de repetição.

STRINGS  Percorrendo uma String : pode-se percorrer uma string através de estruturas de repetição. 16
STRINGS  Comparar duas strings: Há também uma forma de compararmos duas strings para ver ser

STRINGS

Comparar duas strings:

também uma forma de

compararmos duas strings para ver ser ambas são iguais. A função que determina isso é strcmp.

Embora C/C++ é case sensitive, ou seja, diferencia maiúsculas de minúsculas, isso não irá influenciar nessa função. Essa função retorna 0 (zero) se há igualdade entre as strings ou 1 (um) número diferente de zero se não houver igualdade.

STRINGS  Comparar duas strings: Há também uma forma de compararmos duas strings para ver ser
STRINGS  Copiar uma String: Para copiar uma string para outra string usamos strcpy (que vem

STRINGS

Copiar uma String: Para copiar uma string para outra string usamos strcpy (que vem de String copy).

Essa

função

recebe

dois

argumentos: 1° a string para onde será armazenada a cópia; 2° a string que será copiada. Resumidamente, ele copia a

segunda string para a primeira.

STRINGS  Copiar uma String: Para copiar uma string para outra string usamos strcpy (que vem
STRINGS  Concatenar uma String: Concatenar uma string que dizer juntar . De uma forma mais

STRINGS

  • Concatenar uma String: Concatenar uma string que dizer juntar. De uma forma mais simplória, é como se disséssemos que a junção da palavra passa mais a palavra tempo é igual a passatempo.

  • A strcat (string concat) - pega duas strings e junta o que tiver na primeira com o que tiver na segunda.

  • Tome cuidado: Se concatenarmos duas strings e uma delas ou ambas forem vazias ocorrerá um erro.

EXERCÍCIOS DE FIXAÇÃO  Em aula. 20

EXERCÍCIOS DE FIXAÇÃO

Em aula.

MATRIZES

MATRIZES 21
MATRIZES  Também conhecidos como arrays multidimensionais são estruturas de dados que armazenam os valores dimensão.

MATRIZES

Também

conhecidos

como

arrays

multidimensionais são estruturas de dados que

armazenam os valores dimensão.

em

mais

do que

uma

Na própria matemática e em muitos sistemas, e muitos tipos de cálculo é necessário o uso de

matrizes. Uma matriz é um conjunto de linhas e

colunas. Vejamos um exemplo ao lado:

MATRIZES NO DIA A DIA 23

MATRIZES NO DIA A DIA

MATRIZES NO DIA A DIA 23
MATRIZES NO DIA A DIA 24

MATRIZES NO DIA A DIA

MATRIZES NO DIA A DIA 24
MATRIZES  Exemplo: Um arquivo (físico) que possui 4 salas, com 5 armários em cada, 7

MATRIZES

  • Exemplo: Um arquivo (físico) que possui 4 salas, com 5 armários em cada, 7 gavetas por armário e 50 envelopes por gaveta, é possível declarar uma variável como a seguinte para armazenar dados dos documentos que estão em cada pasta:

int numero_documentos [4][5][7][50];

  • O funcionamento é semelhante ao de matrizes bidimensionais. Deve-se levar em conta apenas a quantidade maior de índices.

  • Trecho de código:

MATRIZES  Exemplo: Um arquivo (físico) que possui 4 salas, com 5 armários em cada, 7
EXERCÍCIOS DE FIXAÇÃO  Em aula. 26

EXERCÍCIOS DE FIXAÇÃO

Em aula.

MÓDULOIII

Prof. Miguel Brasil

MÓDULOIII Prof. Miguel Brasil <a href=miguelbbrasil@hotmail.com www.facebook.com/profmiguelbrasil @miguelbbrasil " id="pdf-obj-26-6" src="pdf-obj-26-6.jpg">