Por favor alguem em ajuda e urgente tenhu q fazer um codigo no eclipse , tenho q cadastrar 30 pessoas e seu respectivos salarios e depois mostrar tds e em seguida ver quem ganha mais e quem ganha menos
E o que vc já fez de código? Posta aí que o pessoal te ajuda…
Trabalho da fucu!?!?
Haha Suponho que isso seja algum exercício de faculdade… tá com cara…
Bom, isso é básico: você faz um laço “while” utilizando contador (ou mesmo um 'for"), além de criar variáveis para armazenar o último maior e menor valor.
Aqui vai (só pra estrear a minha conta no GUJ) usando Scanner como input:
import java.util.Scanner;
public class SuperCadastro {
public static void main(String[] args) {
int i; // Contador
float salário;
float maiorValor = 0; // Aqui virá o maior salário
float menorValor; // Aqui o menor...
Scanner leitor = new Scanner(System.in); // Objeto responsável por ler os dados digitados pelo usuário.
i = 0; // Zerando o contador - é bom fazer isso aqui por questões didáticas.
while(i<30) {
System.out.print("Digite o salário do funcionário " + i + ": ");
salário = leitor.nextFloat();
// Isso garante a lógica do menor salário - dá pra usar IF, mas aí deixo pra vc! ;-)
menorValor = (i==0) ? salário : menorValor;
// Também dá pra usar IF
menorValor = (salário < menorValor) ? salário : menorValor;
// Outro que dá pra usar IF - fica contigo. Isso aqui faz o trabalho do maior salário.
maiorValor = (salário > maiorValor) ? salário : maiorValor;
i++;
}
System.out.println("Maior salário: " + maiorValor);
System.out.println("Menor salário: " + menorValor);
}
}
Abraços!
deve ser exercicio de facul;
cara pega uns livros e tenta fazer algo
pelo menos a classe vc vai conseguir criar e trazer sua dúvida pronta e com algum codigo para implementar.
Pergunta ou resposta não sei, talvez eu esteja com dúvida também…
mas
i = 0;
while(i<10) {} // isso não esta errado?
certo…
i = true;
while(true) {} // isso ta certo.
Entendeu aí?
[quote=victorhsn]Pergunta ou resposta não sei, talvez eu esteja com dúvida também…
mas
i = 0;
while(i<10) {} // isso não esta errado?
certo…
i = true;
while(true) {} // isso ta certo.
Entendeu aí?[/quote]
Na condição do while ele apenas verificou se o valor de i é menor que 30. Se for, continuar o laço de repetição. Não tem nada de errado. Agora, a atribuição:
i = true;
Me parece estranha e desnecessária. Eu usaria outra estrutura de repetição que faz a mesma coisa de forma mais simples: o for:
for (int i = 0; i < 30; i++) {
System.out.println("Olá mundo!"); // imprime "Olá mundo" 30 vezes
}
Não parece mais simples?
Eu tb sempre prefiro o for por um motivo simples: Muitas vezes vc esquece de iterar a variavel de controle ao final do laço e acaba ficando preso em um laço infinito…
Exato. Essa é uma gafe bem comum. Mas como a sintaxe do for “obriga” o programador a incrementar as devidas variáveis, já é uma mão na roda.
Brigadaum galera desculpa demora Vlw pessoal ^^ cs saum 10 anos xD
Aew eu fiz um realtorio sab e q tava desesperado pq tava enferrujado Bgdo a TDS …
Exato. Essa é uma gafe bem comum. Mas como a sintaxe do for “obriga” o programador a incrementar as devidas variáveis, já é uma mão na roda. [/quote]
Tu tem certeza de que o laço “for” “obriga” o programador a incrementar variáveis? Esse trecho aí embaixo funciona pelo que averiguei:
//equivale a while (true)
for (;;)
{
System.out.println("estou num 'for' sem inicializacao, condicao ou incremento, que eh infinito");
}
Inté.
Por isso que o “obriga” ficou entre aspas. Mas nesse caso é o mesmo que while(true).