import java.util.Scanner;
public class Exer3 {
/**
* 3. Descreva um algoritmo para escrever a tabuada de um determinado número fornecido pelo usuário.
Análise:
Ok
Entradas:
Número
Saída:
Tabuada de um número
Teste:
E S S S S S S S S S S
4 4 8 12 16 20 24 28 32 36 40
12 12 24 36 48 60 72 84 96 108 120
7 7 14 21 28 35 42 49 56 63 70
Algoritmo:
inicio
leia (numero)
para contador de 1 até 10 faça
contador * numero
escreva (numero)
fim para
fim
*/
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int cont;
for (cont = 1; cont <= 10; cont ++); {
num = cont * num;
System.out.println(num);
}
}
}
Qual é a saída do seu programa?
Por favor, me explica o que vc tah querendo fazer? Pelo que eu entendi vc quer uma tabuada. Correto?
Oi,
O num está sendo alterado com o resultado anterior afetando a tabuada, você deve estar recebendo algo assim:
4 (41), 8 (42), 24 (83), 96 (244) …
quando deveria ser:
4 (41), 8 (42), 12 (43), 16 (44) …
Faça algo assim:
[code]
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int cont;
int result;
for (cont = 1; cont <= 10; cont ++); {
result = cont * num;
System.out.println(result);
}
} [/code]
Olha, você vai ter que construir uma string.
Algo do tipo
for(int i=0; i<=10; i++){
resultado = numero * i;
System.out.println(numero + " X "+ i + " = "+ resultado
}
mesmo assim, eu ainda acho que você deveria construir uma string para mostrar pro usuário.
Pelo método acima, você só vai mostrar o resultado. É isso mesmo que você quer?
Que tópico sem nexo! E, ainda por cima, colocaram a foto de uma mulher com decote, pra atrair mais respostas. Como esse pessoal é criativo! rs
Gente, eu quero fazer o que o enuciado pede:
"3. Descreva um algoritmo para escrever a tabuada de um determinado número fornecido pelo usuário. "
Eu acredito que seja para dar um numero e o programa dar a tabuada de um a dez desse numero. Estou no primeiro semestre de ciência da computação e estou com muito dificuldade em programação. Programas simples de tanto fazer exercicio eu já consigo fazer mas repetição tá me travando. Para uns pode parecer brincadeira mas estou começando e as dificuldades infelismente são reais.
Não sabia que não podia colocar uma foto minha. :thumbdown:
Cara, pelo que entendi do enuciado: "3. Descreva um algoritmo para escrever a tabuada de um determinado número fornecido pelo usuário. " acho que é para dar o resultado do numero dado multiplicado de 1 até 10.
Hey Guy
Eu fiz usando o While:
[code] import java.util.Scanner;
public class Exer3 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int axo = 0;
while(axo <= 10){
axo++;
int resu = num * axo;
System.out.println( axo + " * " + num + " = " + resu );
}
}
}
[/code]
Então pehpy, me parece um exercício de sala de aula muito idêntico com um que jah fiz no passado.
De qualquer forma, o algoritmo em Java é bem simples, a entrada do número, e a saída como tabuada(até 10).
import javax.swing.JOptionPane;
/**
* @author Gilmar J. A. Goulart
*/
public class Tabuada {
public static void main(String[] args) {
//usuário entra com qualquer numero
double numeroTabuada= Integer.parseInt(JOptionPane.showInputDialog(null, "Informe um Numero Para Calcular a Tabuada:", 3));
//calcular até 10
int n=10;
//Calcula e Mostra a Tabuada
calcEMostraTabuada(numeroTabuada,n);
JOptionPane.showMessageDialog(null, "Desenvolvido por \n GILMAR J. A. GOULART", "Créditos", 2);
}
public static void calcEMostraTabuada(double numeroTabuada, int n){
//String que armazenará a mensagem de saída, como tabuada.
String tabuada="Tabuada de " + numeroTabuada + ":\n\n";
//repetição pra calcular a tabuada
for (int i=0; i<=n; i++) {
//mostrar no console os resultados
System.out.println(numeroTabuada + " x " + i + " = " + (numeroTabuada*i));
//inserir novas linhas na mensagem da saída, até 'n x 10 = X'
tabuada += numeroTabuada + " x " + i + " = " + (numeroTabuada*i) + "\n";
}
//Mostra a string com os resultados da tabuada
JOptionPane.showMessageDialog(null, tabuada, "TABUADA", 1);
}
}
Veja que no meu exemplo, podes usar tanto número inteiros(1, 2, 3, 4, 5…) como também números ‘quebrados’(1.5, 1.9,) pra calcular a tabuada.
Espero que te ajude, vlw, até+.
vlw Gilmar, vou estudar sua solução. Vlw mesmo!!!
[quote=gilmar.g]Então pehpy, me parece um exercício de sala de aula muito idêntico com um que jah fiz no passado.
De qualquer forma, o algoritmo em Java é bem simples, a entrada do número, e a saída como tabuada(até 10).
import javax.swing.JOptionPane;
/**
* @author Gilmar J. A. Goulart
*/
public class Tabuada {
public static void main(String[] args) {
//usuário entra com qualquer numero
double numeroTabuada= Integer.parseInt(JOptionPane.showInputDialog(null, "Informe um Numero Para Calcular a Tabuada:", 3));
//calcular até 10
int n=10;
//Calcula e Mostra a Tabuada
calcEMostraTabuada(numeroTabuada,n);
JOptionPane.showMessageDialog(null, "Desenvolvido por \n GILMAR J. A. GOULART", "Créditos", 2);
}
public static void calcEMostraTabuada(double numeroTabuada, int n){
//String que armazenará a mensagem de saída, como tabuada.
String tabuada="Tabuada de " + numeroTabuada + ":\n\n";
//repetição pra calcular a tabuada
for (int i=0; i<=n; i++) {
//mostrar no console os resultados
System.out.println(numeroTabuada + " x " + i + " = " + (numeroTabuada*i));
//inserir novas linhas na mensagem da saída, até 'n x 10 = X'
tabuada += numeroTabuada + " x " + i + " = " + (numeroTabuada*i) + "\n";
}
//Mostra a string com os resultados da tabuada
JOptionPane.showMessageDialog(null, tabuada, "TABUADA", 1);
}
}
Veja que no meu exemplo, podes usar tanto número inteiros(1, 2, 3, 4, 5…) como também números ‘quebrados’(1.5, 1.9,) pra calcular a tabuada.
Espero que te ajude, vlw, até+.[/quote]
Ok, se resolver seu problema, marque o fórum como resolvido, assim poderá ajudar mais alguém futuramente.
Vlw, Até+.
[quote=pehpy]vlw Gilmar, vou estudar sua solução. Vlw mesmo!!!
[quote=gilmar.g]Então pehpy, me parece um exercício de sala de aula muito idêntico com um que jah fiz no passado.
De qualquer forma, o algoritmo em Java é bem simples, a entrada do número, e a saída como tabuada(até 10).
import javax.swing.JOptionPane;
/**
* @author Gilmar J. A. Goulart
*/
public class Tabuada {
public static void main(String[] args) {
//usuário entra com qualquer numero
double numeroTabuada= Integer.parseInt(JOptionPane.showInputDialog(null, "Informe um Numero Para Calcular a Tabuada:", 3));
//calcular até 10
int n=10;
//Calcula e Mostra a Tabuada
calcEMostraTabuada(numeroTabuada,n);
JOptionPane.showMessageDialog(null, "Desenvolvido por \n GILMAR J. A. GOULART", "Créditos", 2);
}
public static void calcEMostraTabuada(double numeroTabuada, int n){
//String que armazenará a mensagem de saída, como tabuada.
String tabuada="Tabuada de " + numeroTabuada + ":\n\n";
//repetição pra calcular a tabuada
for (int i=0; i<=n; i++) {
//mostrar no console os resultados
System.out.println(numeroTabuada + " x " + i + " = " + (numeroTabuada*i));
//inserir novas linhas na mensagem da saída, até 'n x 10 = X'
tabuada += numeroTabuada + " x " + i + " = " + (numeroTabuada*i) + "\n";
}
//Mostra a string com os resultados da tabuada
JOptionPane.showMessageDialog(null, tabuada, "TABUADA", 1);
}
}
Veja que no meu exemplo, podes usar tanto número inteiros(1, 2, 3, 4, 5…) como também números ‘quebrados’(1.5, 1.9,) pra calcular a tabuada.
Espero que te ajude, vlw, até+.[/quote][/quote]
Em outro post que eu postei o mesmo problema um pragramador postou com objetividade e simplesidade os dois erros que eu estava cometendo, vejam e aprendam:
[quote=“jeckson”]
Bom duas coisas que estão errados neste exercicio:
1º Depois do seu FOR tem um ponto e virgula ( que não deveria ter! Devido este ponto e virgula ele não entende que o bloco de intruçao faça parte do FOR.
2º É necessario uma variavel auxiliar para guardar o valor do resultado, pois se você fizer a conta com a variavel do usuario irá atribuir um novo valor a essa variavel.
Exemplo:
num = cont * num
5 = 2 * 5 //RESULTADO IGUAL = 10
Na proxima conta fará o seguinte
10 = 3 * 10 //RESULTADO IGUAL = 30
Abaixo utilizei o seu codigo e fiz alguma alterações apenas para ficar funcional, assim você pode notar onde consta erro.
[code]
import java.util.Scanner;
public class Repeticao {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int cont;
int result;// CRIADO VARIAVEL RESULT PARA ARMAZENAR O RESULTADO
for (cont = 1; cont<= 10; cont++) {//RETIRADO O PONTO E VIRGULA QUE VINHA APOS O FOR
result = cont * num; //UTILIZADO VARIAVEL RESULTA PARA ARMAZENAR O RESULTADO
System.out.println(result); // IMPRIMIDO VARIAVEL RESULT
}
}
}
[/code] [/quote]
Nãs estou dizendo que vocês estão errados mas não compliquem tanto!!!
Foi exatamente o que eu fiz mas utilizando o while:
[code] int axo = 0;
while(axo <= 10){
axo++;
int resu = num * axo;
System.out.println( axo + " * " + num + " = " + resu );
}
}
}
[/code]
[quote=pehpy]Em outro post que eu postei o mesmo problema um pragramador postou com objetividade e simplesidade os dois erros que eu estava cometendo, vejam e aprendam:
[quote=“jeckson”]
Bom duas coisas que estão errados neste exercicio:
1º Depois do seu FOR tem um ponto e virgula ( que não deveria ter! Devido este ponto e virgula ele não entende que o bloco de intruçao faça parte do FOR.
2º É necessario uma variavel auxiliar para guardar o valor do resultado, pois se você fizer a conta com a variavel do usuario irá atribuir um novo valor a essa variavel.
Exemplo:
num = cont * num
5 = 2 * 5 //RESULTADO IGUAL = 10
Na proxima conta fará o seguinte
10 = 3 * 10 //RESULTADO IGUAL = 30
Abaixo utilizei o seu codigo e fiz alguma alterações apenas para ficar funcional, assim você pode notar onde consta erro.
[code]
import java.util.Scanner;
public class Repeticao {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int cont;
int result;// CRIADO VARIAVEL RESULT PARA ARMAZENAR O RESULTADO
for (cont = 1; cont<= 10; cont++) {//RETIRADO O PONTO E VIRGULA QUE VINHA APOS O FOR
result = cont * num; //UTILIZADO VARIAVEL RESULTA PARA ARMAZENAR O RESULTADO
System.out.println(result); // IMPRIMIDO VARIAVEL RESULT
}
}
}
[/code] [/quote]
Nãs estou dizendo que vocês estão errados mas não compliquem tanto!!![/quote]
Olá, Bom Dia.
Não vejo diferença alguma.
A lógica é a mesma, a entrada do número e a repetição.
Vlw.