- Diogo Penha Marques
- Mensagens : 107
Data de inscrição : 29/02/2024
Idade : 14
Escola : Colégio Estadual da Colônia Murici
Diogo Saraiva Exercício 4.7
Qui Out 24, 2024 3:51 pm
- Código:
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 4.7
* Tema: Basico de String como variavel
* Atividade: Dada uma string checar se algum caractere não é letra e substituir por espaço
* Descrição: Usar as funções de teste de caractere na string1, usar a função for() para verificar os caracteres, resultado pode ser enviado para terminal
* Hardware: Montar o display e a porta serial para as entradas e saídas de dados
* Comandos:
* Dica1: string é uma cadeia de caracteres, podemos até mesmo dizer um vetor de caracteres. Trás a linguagem C a capacidade de lidar com frases e palavras.
* Dica2: Quando declaramos string com s minusculo refere-se a uma variável, e quando String está com S maiusculo refere-se a objeto
* Dica3: Declaração da variavel string char nome_vetor[tamanho]{'a','b','c'}; tipo dos dados, sempre char. Nome do vetor identifica a variável. Entre conchetes vai o tamanho do vetor, depois
* Dica4: Lembrando que na linguagem C caractere é colocado entre ' ' (aspas simples), frases podem ser declaradas usando " " (aspas duplas)
* Dica5: Toda string termina com um caractere nulo no final(código ASCII 0), por isso na declaração deve considerar um elemento a mais no tamanho,
* isalnum(char) Verifica se o caractere é alfanumérico (letra e número)
*/
//DEFINICOES INICIAIS
//DECLARAcAO DE VARIAVEIS GLOBAIS
char string1[] = {'a','R','d','U','i','N','o','.'}; // declaração de uma string sem tamanho definido, declarado cada caractere, o nulo e o tamanho serão colocados automaticamente
char string2[6] = {'c','U','r','s','o','\0'}; // declaração de string com tamanho definido e o nulo inserido no final
char string3[] = {"primeiRa frAse tEste"}; // declaração de string usando uma frase entre aspas duplas, o tamanho e o nulo são colocados automaticamente
char string4[4] = {'1','2','3'}; // declaração de string com tamanho e definido e o nulo será colocado automáticamente, ao definir o tamanho terá que reservar o espaço para o nulo
char string5[] = {"Curso de C"}; // declaração de string
char stringFinal[30]; // declaração de uma string com 30 posições, vazia. Pode ser colocado até 29 caracteres que estão previamente alocados na memória
int i = 0;//Variavel do laço de repetiçao
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600); //Inicializa porta serial
}
//FUNÇÕES COMPLEMENTARES
//PROGRAMA PRINCIPAL
void loop() {
for(i = 0; i < strlen(string1); i++)//Laço de repetiçao que verificara todas as posiçoes da string
{
if(!isalpha(string1[i]))//Se o caractere que estiver na posiçao i da string nao for letra, ele executara
{
string1[i] = {' '};
Serial.print("Posicao ");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
Serial.print(i);//Mostra o valor de i na Serial
delay(10);//Tempo de espera de 10 ms
Serial.println(" da string1 foi alterada");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
}
}
for(i = 0; i < strlen(string2); i++)//Laço de repetiçao que verificara todas as posiçoes da string
{
if(!isalpha(string2[i]))//Se o caractere que estiver na posiçao i da string nao for letra, ele executara
{
string2[i] = {' '};
Serial.print("Posicao ");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
Serial.print(i);//Mostra o valor de i na Serial
delay(10);//Tempo de espera de 10 ms
Serial.println(" da string2 foi alterada");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
}
}
for(i = 0; i < strlen(string3); i++)//Laço de repetiçao que verificara todas as posiçoes da string
{
if(!isalpha(string3[i]))//Se o caractere que estiver na posiçao i da string nao for letra, ele executara
{
string3[i] = {' '};
Serial.print("Posicao ");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
Serial.print(i);//Mostra o valor de i na Serial
delay(10);//Tempo de espera de 10 ms
Serial.println(" da string3 foi alterada");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
}
}
for(i = 0; i < strlen(string4); i++)//Laço de repetiçao que verificara todas as posiçoes da string
{
if(!isalpha(string4[i]))//Se o caractere que estiver na posiçao i da string nao for letra, ele executara
{
string4[i] = {' '};
Serial.print("Posicao ");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
Serial.print(i);//Mostra o valor de i na Serial
delay(10);//Tempo de espera de 10 ms
Serial.println(" da string4 foi alterada");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
}
}
for(i = 0; i < strlen(string5); i++)//Laço de repetiçao que verificara todas as posiçoes da string
{
if(!isalpha(string5[i]))//Se o caractere que estiver na posiçao i da string nao for letra, ele executara
{
string5[i] = {' '};
Serial.print("Posicao ");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
Serial.print(i);//Mostra o valor de i na Serial
delay(10);//Tempo de espera de 10 ms
Serial.println(" da string5 foi alterada");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
}
}
for(i = 0; i < strlen(stringFinal); i++)//Laço de repetiçao que verificara todas as posiçoes da string
{
if(!isalpha(stringFinal[i]))//Se o caractere que estiver na posiçao i da string nao for letra, ele executara
{
stringFinal[i] = {' '};
Serial.print("Posicao ");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
Serial.print(i);//Mostra o valor de i na Serial
delay(10);//Tempo de espera de 10 ms
Serial.println(" da stringFinal foi alterada");//Mostra um texto na Serial e pula uma linha
delay(10);//Tempo de espera de 10 ms
}
}
Serial.println("");//Pula uma linha na Serial
Serial.print("string1: ");//Mostra um texto na Serial
Serial.println(string1);//Mostra na Serial o valor da string1 e pula uma linha
Serial.print("string2: ");//Mostra um texto na Serial
Serial.println(string2);//Mostra na Serial o valor da string2 e pula uma linha
Serial.print("string3: ");//Mostra um texto na Serial
Serial.println(string3);//Mostra na Serial o valor da string3 e pula uma linha
Serial.print("string4: ");//Mostra um texto na Serial
Serial.println(string4);//Mostra na Serial o valor da string4 e pula uma linha
Serial.print("string5: ");//Mostra um texto na Serial
Serial.println(string5);//Mostra na Serial o valor da string5 e pula uma linha
Serial.print("stringFinal: ");//Mostra um texto na Serial
Serial.println(stringFinal);//Mostra na Serial o valor da stringFinal e pula uma linha
Serial.println("");//Pula uma linha na Serial
delay(2000);//Tempo de espera de 2000 ms
}
Permissões neste sub-fórum
Não podes responder a tópicos