3. Faça um programa que leia e valide as seguintes informações:
a. Nome: maior que 3 caracteres;
b. Idade: entre 0 e 150;
c. Salário: maior que zero;
d. Sexo: 'f' ou 'm';
e. Estado Civil: 's', 'c', 'v', 'd';
Use a classe String para saber o tamanho de um texto (número de caracteres).
no java usando o comando while
Soluções para a tarefa
import java.util.Scanner;
public class MyClass {
public static void main(String args[]) {
Scanner teclado = new Scanner(System.in);
String nome;
int idade;
float salario;
char sexo, estado_civil;
// Loop que recebe e valida o nome
while(true){
System.out.print("Informe seu nome: ");
nome = teclado.nextLine();
if (nome.length() > 3){
break;
}else{
System.out.println("O nome precisa ser maior de 3 caracteres!");
}
}
// Loop que recebe e valida a idade
while(true){
System.out.print("Informe sua idade: ");
idade = teclado.nextInt();
if (idade > 0 && idade <= 150){
break;
}else{
System.out.println("A idade precisa estar entre 0 e 150 anos!");
}
}
// Loop que recebe e valida o salario
while(true){
System.out.print("Informe seu salário: ");
salario = teclado.nextFloat();
if (salario > 0){
break;
}else{
System.out.println("O salário precisa ser maior que 0!");
}
}
// Loop que recebe e valida o sexo
while(true){
System.out.print("Informe seu sexo[M/F]: ");
sexo = teclado.next().charAt(0);
// Uma pequena gambiarra que converte o valor para String, deixa maiuscula e converte novamente para caractere
sexo = (Character.toString(sexo).toUpperCase()).charAt(0);
if (sexo == 'M' || sexo == 'F'){
break;
}else{
System.out.println("O nome precisa ser 'M' ou 'F'!");
}
}
// Loop que recebe e valida o estado civil
while(true){
System.out.print("Informe seu estado civil[c/s/v/d]: ");
estado_civil = teclado.next().charAt(0);
// Uma pequena gambiarra que converte o valor para String, deixa minusculo e converte novamente para caractere
estado_civil = (Character.toString(estado_civil).toLowerCase()).charAt(0);
if (estado_civil == 'c' || estado_civil == 's' || estado_civil == 'v' || estado_civil == 'd'){
break;
}else{
System.out.println("O estado civil inválido!");
}
}
}
}