Dúvida sobre ler e mostrar variável

Bom Dia! Eu comecei a fazer Ciência da Computação este semestre, meu professor passou alguns exercícios para fazermos, alguns eu consegui outros não. A minha dúvida é a seguinte:

Eu tinha q fazer este exercício: Ler do teclado um número inteiro com três dígitos (no formato CDU -
centena, dezena e unidade) e mostrar o número invertido (no formato UDC). O
número invertido deve ser armazenado em outra variável antes de ser mostrado.

então eu fiz assim:

import IO.*;
 
class Exercício01
{
	public static void main(String args[])
	{
	      int num, c, d, u, numInv;
	      IO.println("Entre com um número de 3 digitos:");
	      num = IO.readint("digite um número:");
	      c = num/100;
	      d = num % 100/10;
	      u = num %10;
	      numInv = u*100 + d*10 + c;
	      IO.println ("numero:" + num);
	      IO.println ("invertido:" + numInv);
	}//Fim main
}//Fim class

Ele rodou certo, aqui na minha faculdade nós usamos um compilador JGRASP, o arquivo IO eu sei que não é natural do Java, ele é para este compilador chamar o comando. Neste exercício como eu estava trabalhando com números inteiros eu usei “int” más como eu faço quando eu for trabalhar com um número real? Eu não consegui declarar uma variável para um número real, eu acho que usa o “float” más não deu muito certo, e tambem não consegui imprimir na tela.

Aqui é o outro exercício e como eu tentei fazer ele:

Sabendo que 100 kilowatt de energia custa um sétimo do salário
mínimo, faça um algoritmo que leia o valor do salário mínimo e a quantidade de
kilowatt gasta por uma residência, calcule e mostre: o valor em reais de cada
kilowatt; o valor em reais a ser pago; e o novo valor a ser pago por essa residência
com um desconto de 10%.

import IO.*;

class Exercicio02
{
	public static void main(String args [])
	{
	      float salMin, qnt, val1kw, vp, vd;
	      IO.println("Entre com o salario minimo:");
	      float salMin = IO.readfloat("digite salário");
	      IO.println("Entre com a quantidade em Kw:");
	      qnt = IO.readfloat("digite quantidade");
	      val1kw = salMin / 700;
	      vp = val1kw * qnt;
	      vd = vp * 0.9;
	      IO.println ("val1kw:" + val1kw, "vp:" + vp, "vd:" + vd);
	}//Fim main
}//Fim class

Se alguem puder me ajudar, desde já agradeço, eu estou no início do Java, prometo compartilhar o que eu sei de acordo com meu aprendizado aqui neste Fórum.

Comece por aqui:

Ah! E tente usar double ao invés de float.

ViniGodoy

Obrigado por me mostrar este tutorial, já editei meu tópico.
Ainda não tentei usar double, vou tentar agora.

Obrigado

O exercício pede:
Sabendo que 100 kilowatt de energia custa um sétimo do salário
mínimo, faça um algoritmo que leia o valor do salário mínimo e a quantidade de
kilowatt gasta por uma residência, calcule e mostre: o valor em reais de cada
kilowatt; o valor em reais a ser pago; e o novo valor a ser pago por essa residência
com um desconto de 10%.

eu fiz:

class Exercicio02
{
	public static void main(String args [])
	{
	double salMin, qnt, val1kw, vp, vd;
	IO.println ("Entre com o salario minimo:");
	ler salMin; (NÃO SEI)
	imprimir ("Entre com a quantidade em Kw:");
	ler qnt; (NÃO SEI)
	val1kw = salMin / 700;
	vp = val1kw * qnt;
	vd = vp * 0.9;
	imprimir val1kw, vp, vd; (NÃO SEI)
	}//Fim main
}//Fim class

a parte q eu não entendi deixei em Portugol, o meu problema é q eu não sei como ler o double, no caso como ler o salMin? E mostrar os 3 valores no final.

eu preciso que o usuário digite o salário minimo e a quantidade, eu não sei fazer isso com double. Como eu faço para minha variável double receber um valor digitado pelo usuário?

Olá, Fernandoh1!

Você pode usar a classe Scanner:

     Scanner sc = new Scanner(System.in);
     double d = sc.nextDouble();

Ah! Não se esqueça de fazer o import ( java.util.Scanner; )
Dê uma lida na documentação, ok! :wink:

galera eu to conseguindo agora eu fiz assim:

import IO.*;

class Exercicio02
{
	public static void main(String args [])
	{
	double salMin, qnt, val1kw, vp, vd;
	IO.println("Entre com o salario minimo:");
	salMin = IO.readdouble("Digite salário:");
	qnt = IO.readdouble("Digite a quantidade:");
	val1kw = salMin / 700;
	vp = val1kw * qnt;
	vd = vp * 0.9;
	System.out.println (salMin,qnt,val1kw,vp,vd);
	}
}

porem eu não to conseguindo mostrar na tela o valor em reais de cada
kilowatt; o valor em reais a ser pago; e o novo valor a ser pago por essa residência
com um desconto de 10%.

só ta faltando isso agora o resto deu certo

Galera eu to mostrando na tela assim ó:


import IO.*;

class Exercicio02
{
	public static void main(String args [])
	{
	double salMin, qnt, val1kw, vp, vd;
	IO.println("Entre com o salario minimo:");
	salMin = IO.readdouble("Digite salário:");
	qnt = IO.readdouble("Digite a quantidade:");
	val1kw = salMin / 700;
	vp = val1kw * qnt;
	vd = vp * 0.9;
	IO.println("Valor em reais de cada Kilowatt:"+val1kw);
	IO.println("Valor a ser pago:"+vp);
	IO.println("Valor a ser pago com desconto:"+vd);
	}fim main
}fim class

más tem muito “println” ae queria mostrar de outra forma, usando system.out, más eu não sei, alguem pode me dar essa dica final?

Achei o número de println normal. Mesmo em Java, padrão, sem a classe IO, ficaria assim:

public class Exercicio02
{
    public static void main(String args []) {
        Scanner in = new Scanner(System.in);
        System.out.println("Entre com o salario minimo:");
        System.out.println("Digite o salário :");
        double salMin = Double.parseDouble(in.nextLine());
        System.out.println("Digite a quantidade:");
        double qnt = Double.parseDouble(in.nextLine());
        double val1kw = salMin / 700;
        double vp = val1kw * qnt;
        double vd = vp * 0.9;
        System.out.println("Valor em reais de cada Kilowatt:"+val1kw);
        System.out.println("Valor a ser pago:"+vp);
        System.out.println("Valor a ser pago com desconto:"+vd);
    }
}

Como vc pode ver, até piora.

Entendi :smiley:

Bom! Muito obrigado a todos, consegui rodar o exercício corretamente, vlw mesmo pela ajuda, aprendi muitas coisas hoje. Espero aprender bem Java para poder contribuir aqui.

abrazz