Você está na página 1de 21

VARIÁVEIS INDEXADAS

AVANÇADO

Introdução à Robótica
Ten Evelyn
ROTEIRO

01. Matrizes
02. String
MATRIZES
São variáveis indexadas
com mais de um índice.
MATRIZES
DECLARAÇÃO

Exemplos:
int matriz[10][10];
int A[7][10];
float X[4][8][5];
A é uma variável indexada bidimensional ou matriz
bidimensional ou simplesmente matriz de 7 linhas por 10
colunas de elementos do tipo int; e
X é uma matriz tridimensional de 4 x 8 x 5 elementos do
tipo float.
MATRIZES
INICIALIZAÇÃO

A inicialização é feita com o uso de chaves para separar


cada um dos vetores internos:

int vetor[3][3] = {{1, 2, 3}, {4, 5}, {7, 8, 9}};

Posição
0,0

int A[3][3] = {0}; //Inicializa uma matriz bidimensional


com todos os elementos iguais a zero.
MATRIZES
ACESSO AOS ELEMENTOS

Acesso aos elementos


[0][0], [0][1], [0][2], [1][0],
[1][1], [1][2], [2][0], [2][1],
[2][2], nesta sequência.

Impressão na tela:
STRINGS
Uma cadeia de caracteres, ou
STRINGS

String, nada mais é do que


uma variável indexada do
tipo caractere. O final de
uma string é marcado com o
caractere '\0'.
VAMOS ENTENDER MELHOR
COMO AS STRINGS SÃO
ARMAZENADAS NA
MEMÓRIA.
CÓDIGO ASCII: CÓDIGO
QUE IDENTIFICA CADA
CARACTERE.
Código ASCII
Código ASCII
Alguns caracteres de controle
DECLARAÇÃO
0 1 2 3 4

Declarações similares de strings:

char s[] = {'A','B','C','D','\0'};


char s[5] = {'A','B','C','D','\0'};
char s[5] = “ABCD”;
Forma mais simples
(não funciona na
linguagem C pura, mas
funciona no Arduino)
ESCRITA

Uso do Serial.println() para imprimir


strings:

String str = "ABCDE";


Serial.println(str);
Strings são delimitadas
por aspas, enquanto
caracteres são por
apóstrofos.
LEITURA

Uso do Serial.readString() para ler


strings:

String str;
str=Serial.readString();
FUNÇÕES PARA STRINGS
https://www.arduino.cc/reference/tr/language/variables
/data-types/stringobject/

myString.length(): informa o tamanho da


String (quantidade de letras)
myString.charAt(n): informa qual é o
caractere na posição n da String
myString.toLowerCase(): faz com que a
string tenha apenas letras minúsculas
BIBLIOTECA
STRING

Existem diversas funções que ajudam na


manipulação de strings que podem ser
encontradas na biblioteca <string.h>
Exemplo:
compareTo() - compara strings
lenght() - retorna o tamanho da string
compareTo()

A função compareTo() compara


lexicograficamente duas strings:

A função retorna zero para strings iguais


.
COMPARETO()

Exemplo:
i será um número
void setup(){ maior que zero, pois
Serial.begin(9600); Pedro é maior que
Maria (vem depois
String nm1 = “Pedro”;
na ordem alfabética)
String nm2 = “Maria”;
int i = nm1.compareTo(nm2);
if(i==0){
Serial.println("Strings iguais");
}
}
Utilizando o Tinkercad,
vamos fazer o programa da
EXEMPLO

fechadura digital em que


a senha é uma palavra,
não apenas uma letra.

Dica: procurar a função


compareTo() para Strings
no site do Arduino.
MÃOS À OBRA

Programa: Utilizando o Tinkercad, vamos fazer


o programa de duas fechaduras digitais e um
portal principal. O portal é aberto através
de um senha, ou seja se o usuário digitar a
senha correta abrirá o portal e encontrará
duas portas. O usuário deve escolher qual
porta ele quer abrir (1 ou 2). Quando o
usuário abrir a porta 1, um led vermelho
acenderá ao lado da porta 2. Quando ele optar
pela porta 2, o led da porta 1 deverá
acender.
MÃOS À OBRA
TAREFA 2

Programa: Utilizando o Tinkercad, vamos fazer


o seguinte programa:
1 - O usuário digita 4 números inteiros;
2 - Você armazena os números em uma matriz
2x2; e
3 - Posteriormente você deverá PERCORER a
matriz e imprimir a soma dos elementos.

Você também pode gostar