Você está na página 1de 8

Aula 5

Lógica de Programação e Algoritmos Conversa Inicial

Prof. Sandro de Araujo

Esta aula apresenta a seguinte


estrutura de conteúdo: O objetivo dessa aula é conhecer os
Vetor e matriz principais conceitos e aplicações dos vetores,
Declarar e inicializar vetores matrizes e cadeias de caracteres – e de que
forma declará-los e inicializá-los – bem como
Declarar e inicializar matrizes representá-los em pseudocódigo e linguagem
Cadeia de caracteres C para resolver problemas computacionais
Inicializar uma cadeia de caracteres

Vetor ou array

Variável composta homogênea


unidimensional

Vetor e matriz Conjunto de dados do mesmo tipo


Possuem o mesmo identificador (nome)
Acessados por um número
inteiro chamado de índice
Tipo_de_dado + Nome_do_Vetor +
[Posições - Índices]

1
Matriz

É um vetor de vetores
Acessado também por índice
Índice: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
Nome: temp 18 17 20 26 32 29 15 12 16 21 Estrutura de dados com duas
Fonte: Puga e Rissetti, 2016.
ou mais dimensões
Estrutura composta por linhas e colunas
Tipo_de_dado + Nome_da_Matriz +
[Qtde Linhas] + [Qtde Colunas]

19 21
COLUNAS 33 581
LINHAS

0,0 0,1
Índices Dados
1,0 1,1 [0,0] 19
[0,1] 21
[1,0] 33
[1,1] 581

A declaração de um vetor
deve conter três informações:
Declarar e inicializar vetores
1. Nome do vetor (identificador)
2. Número de posições (tamanho)
3. Tipo de dado que será armazenado

2
Sintaxe pseudocódigo e linguagem C Declarar e inicializar vetores
Pseudocódigo int números[6] = {1,2,3};
nomeDoVetor: vetor [início..final]
de tipoDoVetor int números[6] = {1,2,3,0,0,0}

nota: vetor[1..4] de Inteiro Também é possível inicializar um vetor sem


especificar a quantidade de elementos:
Linguagem C
int números[ ] = {3,6,7};
tipoDoVetor nomeDoVetor
[QuantidadeDeElementos] Ou seja: números[0] = 3;
números[1] = 6;
int nota [4] números[2] = 7;

Pseudocódigo Linguagem C
...
var escreval ("Exibindo os Valores ...
{
nota: vetor[1..4] de real das Notas") float nota[4] = {7.6, 8.9, 9, 9.9};
inicio escreval (" NOTA 1:", nota[1])
escreval (" NOTA 2:", nota[2]) printf("Exibindo os Valores das Notas \n\n");
nota[1] <- 7.6
printf(" NOTA 1: %.1f\n", nota[0]);
nota[2] <- 8.9 escreval (" NOTA 3:", nota[3]) printf(" NOTA 2: %.1f\n", nota[1]);
nota[3] <- 9 escreval (" NOTA 4:", nota[4]) printf(" NOTA 3: %.1f\n", nota[2]);
printf(" NOTA 4: %.1f\n", nota[3]);
nota[4] <- 9.9 fimalgoritmo
...

A declaração de uma matriz


deve conter quatro informações:
Declarar e inicializar matrizes 1. Nome da matriz (identificador)
2. Número de linhas (tamanho)
3. Número de colunas (tamanho)
4. Tipo de dado que será armazenado

3
Sintaxe pseudocódigo e linguagem C Declarar e inicializar vetores
Para declarar uma matriz 2X4 e inicializá-la,
Pseudocódigo
devemos colocar cada linha entre chaves {},
nomeDaMatriz: vetor[início..final, e separar elas por vírgulas:
inicio..final] de tipoDoVetor Exemplo:
nota: vetor[1..4,1..4] de Inteiro int numeros[2][4] = { {11, 22, 35, 54 },
{5, 9, 16, 8 } };
Linguagem C
11 22 35 54
tipoDaMatriz nomeDaMatriz Duas linhas
5 9 16 8
[QtdeLinhas][QtdeColunas];
int nota [4][4]; Quatro colunas

Pseudocódigo (...)
inicio

... tabela[0,0] <- 1

var tabela[0,1] <- 8

tabela: vetor[1..3,1..2] de inteiro tabela[1,0] <- 3

linha,coluna: inteiro tabela[1,1] <- 9

(...) tabela[2,0] <- 6


tabela[2,1] <- 78955

escreval (" ")


escreval ("Imprimindo a matriz tabela:")
escreval
escreval (" ") ("**********************************
para linha de 0 até 2 faca ***")
para coluna de 0 até 1 faca escreval (" ")

escreval("tabela[",linha,"][",coluna,"]=",tab
ela[linha,coluna]) escreval("O conteúdo da tabela[2][1] é:
",tabela[2,1])
fimpara
fimpara
fimalgoritmo

4
Linguagem C (continuação) printf("Imprimindo a matriz tabela: \n\n");
for(linha=0;linha<3;linha++)
{
for(coluna=0;coluna<2;coluna++)
int main()
{
{
printf("tabela[%d][%d]=%d",linha,coluna,tabela
int tabela[3][2] = {{1,8},{3,9},{6,78955}}; [linha][coluna]);
int linha,coluna; printf("\n");
}
}

Linguagem C
Pseudocódigo Linguagem C
printf("\n");
printf("*************************************");
printf("\n\n");

printf("O conteudo da tabela[2][1] e: %d\n\n",tabela[2][1]);

system("pause");
return 0;
}

Cadeia de caracteres (string)

Cadeias de caracteres É uma variável usada para armazenar cadeia


de caracteres com conteúdo que pode ser
alterado ou substituído por outros elementos
para formar uma nova cadeia de caracteres

5
A linguagem C não possui um tipo
de dado similar à string. Em vez disso, A palavra "UNINTER", na linguagem de
para armazenar uma cadeia de caracteres, programação C, é um array que contém oito
utiliza vetores (matrizes unidimensionais) [8] posições, conforme mostrado abaixo:

char NomeDaString[NúmeroDeElementos] char nome [8] = { ‘U’, ‘N’, ‘I’, ‘N’, ‘T’, ‘E’,
‘R’, '\0' };
char nome[8];

Uma string pode ser inicializada


automaticamente pelo programa ou pode
receber um valor por meio do teclado
Inicializar uma cadeia de caracteres Usam-se as duas formas para
inicializar uma string em C:
char nome [ ] = “UNINTER”;
char nome [ ] = { ‘U’, ‘N’, ‘I’, ‘N’, ‘T’, ‘E’, ‘R’,
'\0' };

Exemplo 1 Pseudocódigo
char nome [ ] = “UNINTER”;
char nome [ ] = { ‘U’, ‘N’, ‘I’, ‘N’, ‘T’, ‘E’, ‘R’, algoritmo "exemploString"
'\0’ };
var
Exemplo 2
nome1 : caractere
char [ ] = “12345”;
nome2 : caractere
char [ ] = {‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘\0’};
nome3 : caractere
Não é possível fazer cálculos
matemáticos com números do tipo asteriscos : caractere
caractere

6
(...)
inicio
nome1 <- "Centro Universitário"
nome2 <- "Internacional" escreval(asteriscos)
nome3 <- "UNINTER" escreval(" ",nome1," ",nome2," ",nome3)
asteriscos <-
"********************************************" escreval(asteriscos)
escreval(asteriscos) fimalgoritmo
escreval(" ",nome1," ",nome2," ",nome3)
escreval(asteriscos)
fimalgoritmo

Linguagem C
(...)
#include<stdio.h>
printf("%s",asteriscos);
#include<conio.h>
#include <locale.h> printf("%s %s %s", nome1,nome2,nome3,
int main() setlocale(LC_ALL,""));
{ printf("%s\n\n",asteriscos);
char nome1[ ]= "Centro Universitário"; system("pause");
char nome2[ ]= "Internacional";
return 0;
char nome3[ ]= "UNINTER";
char asteriscos[]= }
"\n***********************************\n";

Pseudocódigo
printf("%s",asteriscos);
printf(" %s %s %s", nome1,nome2,
nome3, setlocale(LC_ALL,""));
printf("%s",asteriscos); Linguagem C

system("pause");
return 0;
}

7
8