sou novato em java, estou estudando umas coisas aqui…gostaria de saber como eu faço pra somar varias variaveis ?
por exemplo eu fiz um programinha e preciso somar varias variaveis mas como eu faço isso sem digitar todas as variaveis ? tipo metodo de excel “soma(b1:b50)”
como assim??? você tem que explicar melhor…porq se for só pra somar por exemplo duas variáveis é fácil.
int var1, var2;
var1= Integer.parseInt(JOptionPane.showInputDialog("Digite a primeira variável"));
var2= Integer.parseInt(JOptionPane.showInputDialog("Digite a segunda variável"));
JOptionPane.showMessageDialog(null," A soma é: "+(var1+var2));
ou entao voce faz uma funcao, e aí chama quando vc quiser somar.
to ligado, não é isso que vc explico não…esse é metodo normal…
imagine q eu tenho q fazer oq vc fez ae mas com 30 variaveis…em vez de fazer tudo 30 vezes e ir colocando var1+var2+var2…var30; eu quero saber se existe algum metodo pra fazer isso mais rapido?
Se eu entendi bem, você quer evitar criar várias variáveis, então vai lá:
import java.util.Vector;
import javax.swing.JOptionPane;
public class Soma {
// variável para guardar tantos valores quanto forem necessários
private static Vector<Integer> valores = new Vector<Integer>();
private static int sair = 0;
public static void main(String[] args) {
do {
sair = Integer.parseInt(JOptionPane.showInputDialog("Digite um número para somar ou zero para sair."));
valores.add(sair);
} while (sair > 0);
System.out.println("A soma dos valores é: " + somar(valores));
}
public static Integer somar(Vector<Integer> valores) {
Integer soma = 0;
for (Integer i : valores) {
soma += i;
}
return soma;
}
}
Depois que enviei a mensagem, reparei que você informou exatamente a fonte dos valores a somar.
Como você montou a estrutura com caixa de texto, não tem como evitar a soma 1 a 1 (var1+var2+…+var30), não existe método pronto semelhante ao Excel (SOMA(A1:A30)).
Se for possível trocar as caixas de texto por uma tabela, fica mais fácil adaptar ao código que o Henrique ou eu enviamos.
Para isto você precisaria colocar um “looping” na coluna da tabela que tem os valores e ir resgatando os valores a cada linha tem o valor.
eu gostaria de saber se não tem como eu realmente somar todos como um unico metodo, pois eu tinha feito variavel por variavel, convertendo pra int e somando-as.
como não tem mesmo o jeito, já tirei minha duvida…muito obrigado
aproveitando a oportunidade eu gostaria de tirar uma outra duvida…eu tenho 31 campos de texto pra digitar quantidades mas o problema é que nem sempre eu vou digitar as 31 vezes…e para calcular a media no final eu preciso dividir a soma de todos os dias(os 31 campos) pela quantidade de dias que foi preenchida no formulario…mas qdo eu deixo um espaço em branco o programa dá erro, pois eu tenho que preencher todos os campos e depois eu preciso saber quantos campos foi preenchido pra fazer a media no final…como eu poderia fazer isso?
resumindo:
Como eu faço pra ter 31 campos e não preencher os 31 necessariamente…e depois no final de tudo eu saber quantos campos eu usei pra dividir por essa quantidade ?
por exemplo…eu tenho 31 campos e digitei apenas em 2 campos a quantia de 50…no final ele tem q somar 50+50 e dividir por 2.
acho que ficou meio confuso, mas se puderem ajudar…agradeço desde já!