ALGORITMOS E IMPLEMENTAÇÕESstring em java

Implementação de equações dentro da computação, programação e algoritmos.

Moderador: [ Moderadores TTB ]

Avatar do usuário
Autor do Tópico
Joaoverissimo
sênior
Mensagens: 32
Registrado em: Sáb 19 Set, 2020 10:49
Última visita: 06-02-21
Fev 2021 03 09:51

string em java

Mensagem não lida por Joaoverissimo »

1. Faça um programa que, a partir de uma string digitada pelo usuário, imprima:
a) O número de caracteres da string.
b) A string com todas suas letras em minúsculo e em seguida, maiúsculo.
c) O número de vogais da string.
d) Se a string digitada começa com “INS” (ignorando maiúsculas/minúsculas).
e) Se a string digitada termina com “NAS” (ignorando maiúsculas/minúsculas).
f) O número de dígitos (0 a 9) da string.
g) O número de letras da string.




Avatar do usuário
cpusam
sênior
Mensagens: 39
Registrado em: Qua 12 Fev, 2020 22:12
Última visita: 15-07-22
Jun 2021 02 06:38

Re: string em java

Mensagem não lida por cpusam »

Em java, toda string tem certas propriedades que podem ser acessadas por meio do operador ponto.
Exemplo:
String nome = new String("matemática");
//esse código abaixo vai imprimir o tamanho da string e pular uma linha
System.out.println("Tamanho = "+nome.length());

Na b) é preciso apenas executar um System.out.println(str.toUpperCase()); para imprimir com maiusculas e System.out.prntln(str.toLowerCase()); para imprimir com misnusculas

Para a c) basta percorrer a string com um for e verificar se o str.charAt(indice) é igual a uma vogal.
Eu sugiro que você coloque as vogais numa string auxliar, dai, basta fazer um if assim:
if (vogais.indexOf(str.charAt(indice)) > -1)
System.out.println("Achamos uma vogal");

Quanto a questão d) e e) é preciso escolher: ou você escolhe tornar todos os caracteres da string lida como maiusculos e então procurar se ela começa com INS ou termina com NAS. Nesse caso, você pode usar o str.indexOf("INS") e verificar se ele retorna 0 para indicar que começou com INS, caso retorne outro valor, então não cmeça com INS. Para o caso do NAS, basta usar o mesmo str.indexOF("NAS") e verificar se ele retrona um valor maior que zero e igual a str.length() - 3, pois nesse último caso, a posição na str com NAS é as 3 últimas posições.

Para a f), vale quase o mesmo código do c), basta trocar a string auxiliar por uma string com caracteres de 0 até 9, porém, você pode fazer assim também:
//dentro de um for com um contador de i até str.length()
if (str.charAt(i) >= '0' && str.charAt(i) <= '9')
System.out.println("Achamos um digito");
de 0 até 9 os caracteres são sequencias, menos as vogais porque seguem a ordem da tabela ASCII.

Por fim, para a g), basta usar um for indo de 0 até str.length() e então, verificar se o caractere está entre os intervalos de
if ((str.charAt(i) >= 'a' && str.charAt(i) <= 'z') || (str.charAt(i) >= 'A' && str.charAt(i) <= 'Z'))




Responder
  • Tópicos Semelhantes
    Respostas
    Exibições
    Última msg

Voltar para “ALGORITMOS E IMPLEMENTAÇÕES”