Estou praticando programação java e estou fazendo exercícios para fixar e decorar sintaxe (if, else, while, for, do…while).
Realizei os seguinte problemas:
-
Imprima todos so números de 150 a 300?[b]
public class Exercicio1 {
/**
-
@param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int numero = 150;
while (numero <= 300){
System.out.println(numero);
numero = numero + 1;
}
}
}
-
Imprima a soma de 1 até 1000?[/b]
public class Exercicio2 {
/**
-
@param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i;
for(i=1; i <= 1000; i++){
System.out.println(i);
}
}
}
Nao estou conseguindo resolver os seguintes problemas
3)Imprima todos os múltiplos de 3, entre 1 e 100.
)Imprima os fatoriais de 1 a 10.
O fatorial de um número n é n * n-1 * n-2 … até n = 1. Lembre-se de utilizar os parênteses. O fatorial de 0 é
1 O fatorial de 1 é (0!) * 1 = 1 O fatorial de 2 é (1!) * 2 = 2 O fatorial de 3 é (2!) * 3 = 6 O fatorial de 4 é (3!) *
4 = 24
Faça um for que inicie uma variável n (número) como 1 e fatorial (resultado) como 1 e varia n de 1 até 10:
for (int n=1, fatorial=1; n <= 10; n++) {
Obrigado
3)Imprima todos os múltiplos de 3, entre 1 e 100.
Esse vc tera que usar o Mod, e verificar se o resto da divisao do contador por 3 é a, ai vc imprime
Para os Fatoriais veja: http://melhoragora.org/2007/03/24/calcular-fatorial-em-java
Falow e boa sorte
Jack, O Estripador disse… vamos por partes…
-
poderia usar um FOR
for(int numero=150; numero<=300; numero++){
System.out.println(numero);
}
-
soma de 1 até 1000 ? isso quer dizer 1+2+3+4…+1000 ?
se for… poderia fazer
for(int i=1, soma=0; i<=1000; i++){
soma+=i;
}
System.out.println(soma);
3)um FOR tambem resolve… vai complicar um pouco para entender… mas vamos lah
for(int numero=1; numero<100; numero++){
// aqui eu deixo com vc...
// vai ficar assim o Algoritmo..
// Se o resto de "numero" dividido por 3.. for 0... mostre o valor de "numero"
}
4)fatorial de 1 a 10…
FOR tb resolve…
mas achei mais complicado explicar sem mostrar o exercicio pronto…
a logica eh a mesma =)
Olá galera…tmb sou muito novo no java comecei à 3 dias…e tava vendo esses exercicios ae…e vi que no Exercicio2 ele simplismente mostra os numeros de 1 à 1000 sendo que o exercicio pede a soma…então vi a reply do alucardeck …
for(int i=1, soma=0; i<=1000; i++){
soma+=i;
}
System.out.println(soma);
Então joguei esse codigo mas dai deu erro…
Exercicio2.java :16: 'class' ou 'interface' expected
}
^
Exercicio2.java :16: 'class' ou 'interface' expected
}
^
Ae não sei se fiz algo errado =/
Eu resolvi esse exericio dessa forma, veja se esta correto, testei aqui e funcionou…
[code]
public class Exercicio2 {
/**
-
@param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 0;
int soma = 0;
while (i < 1000){
i = i+1;
soma = soma+i ;
}
{
System.out.println(soma);
}
}
} [/code]
[quote=MAGNUS-CTBA]Eu resolvi esse exericio dessa forma, veja se esta correto, testei aqui e funcionou…
[code]
public class Exercicio2 {
/**
-
@param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 0;
int soma = 0;
while (i < 1000){
i = i+1;
soma = soma+i ;
}
{
System.out.println(soma);
}
}
}[/code][/quote]
umas dicas…
- evite usar { } sem necessidade… que estão entre o System.out.println(soma);
- soma=soma+i é a mesma coisa que soma+=i então tente usar o mais “limpo” heheh
é feio usar While para algo q um FOR resolve heheh
public class Exercicio2 {
public static void main(String[] args) {
int soma = 0;
for(int i=1; i<=1000; i++){
soma+=i;
}
System.out.println(soma);
}
-
for(int i=1; i<100; i++){
if(i%3 == 0) //checa se o número é multiplo de 3
System.out.println(i);
}
[quote=RafaelViana]3)
for(int i=1; i<100; i++){
if(i%3 == 0) //checa se o número é multiplo de 3
System.out.println(i);
}
[/quote]
não resolva os exercicios pra ele…
se fosse por isso jah teria feito os 4…
ou vc vai ser apedrejado no forum…
Não entendi??
Você quis dizer que como é simples nao precisa de while?
Como eu disse to iniciando tmb então quero saber porque nao usar um while e usar um for?
na verdade quase tudo pode ser feito tanto com While quanto com For…
a diferença é q o FOR é muito mais legivel… e tem mais “funções”…
então se for pra vc fazer um
int x=0;
While(x<10){
x++;
}
é mais facil vc fazer
For(int x=0; x<10; x++){
}
assim vc foca as linhas dentro do { } direto com o conteudo q vc realmente vai “modificar”
e não suja 1 linha só para mostrar a incrementação… ,
não sei se expliquei bem… mas qqer duvida pode perguntar
Para o exercico "Encontrar os multiplos de 3 de 0 à 1000.
Além de fazer um for de 0 1000 e usar o mod, você tambem poderia fazer um for que percoresse de 3 em 3.
Faria menos iterações! rsrs
for(int i=0 i<=1000; i+=3){
...
}
Para resolver o exer. Fatorial a melhor solução é Recursividade.
Bons Estudos!

Sempre que puder use for ao invés de While. Como Alucardeck disse - é mais elegante, inteligente, e possue recursos a mais.
Quando tiver mais duvidas sobre isso, poste aqui nesse topico que agente te ajuda.
E ah, procura resolver exercicios mais complexos, como exercicios de matemática mesmo (equação do 2 grau, etc) com isso.