Não esta compilando este programa teria como alguém me ajudar

14 respostas
D
  1. Um comerciante deseja saber o levantamento do lucro das mercadorias que ele comercializa. Para isto, mandou elaborou uma lista com o nome, preço de compra e preço de venda de cada mercadoria. Faça um algoritmo que:

o Determine e escreva quantas mercadorias proporcionam:
 Lucro < 10%
 10%  Lucro  20%
 Lucro > 20%

o Determine a mercadoria que proporciona maior lucro e a que proporciona menor lucro.

o Determine e escreva o valor de compra e de venda de todas as mercadorias, assim como o lucro total.

import javax.swing.JOptionPane;

public class Lucro{

public static void main (String [] args){

float cont1=0, cont2=0, cont3=0, result=0, preco_compra=0, preco_venda=0;

float result, result1, result2, resultTotal;

char resp=S, nome;
while (resp='S'){
			nome=Char.parseChar(JOptionPane.showInputDialog("Entre com o nome do produto"));
			preco_compra=Float.parseFloat(JOptionPane.showInputDialog("Entre com o valor da compra"));
			preco_venda=Float.parseFloat(JOptionPane.showInputDialog("Entre com o valor da venda"));
			
			if (preco_venda <=10){
				result=(preco_compra*0.1);
				cont1=cont1+1;
			}else{
				if ((preco_venda >10)||(preco_venda<=20)){
				
					result1=(preco_compra*0.2);
					cont2=cont2+1;
					
					}else{ 
							if(preco_venda >20){
							result2=(preco_compra*0.3);
							cont2=cont2+1;
					}
					
				}
			}
	
		}			
			if (cont1 > cont2){
				System.out.println(cont1);
				
			}else{
				if (cont2 > cont3){
					System.out.println(cont2);
				}else{
					System.out.println(cont3);
				}
			}
			if (cont1 < cont2){
				System.out.println(cont1);
				
			}else{
				if (cont2 < cont3){
					System.out.println(cont2);
				}else{
					System.out.println(cont3);
				}
			}
			resultTotal=(valor_compra+valor_venda+cont1+cont2+cont3);
					}
			}
	}

}

14 Respostas

M

Olá, não teria como você colocar seu código entre as tags [code] ??

Dei uma olhada por cima. Esse seu while está correto? Dá uma conferida nele de novo.

Até mais.

eros.stein

Não conferi sua lógica, corrigi só seus erros de programação.

package lucro; 

import javax.swing.JOptionPane;
public class Lucro{
public static void main (String [] args){
float cont1=0, cont2=0, cont3=0, preco_compra=0, preco_venda=0;
float resultTotal;
double result = 0.0, result1, result2;
char resp='S';
String nome;

while (resp=='S'){
nome = JOptionPane.showInputDialog("Entre com o nome do produto");
preco_compra=Float.parseFloat(JOptionPane.showInputDialog("Entre com o valor da compra"));
preco_venda=Float.parseFloat(JOptionPane.showInputDialog("Entre com o valor da venda"));

if (preco_venda <=10){
result=preco_compra*0.1;
cont1=cont1+1;
}else{
if ((preco_venda >10)||(preco_venda<=20)){

result1=(preco_compra*0.2);
cont2=cont2+1;

}else{
if(preco_venda >20){
result2=(preco_compra*0.3);
cont2=cont2+1;
}

}
}

resp = JOptionPane.showInputDialog(null, "CONTINUAR? S/N").charAt(0);

}
if (cont1 > cont2){
System.out.println(cont1);

}else{
if (cont2 > cont3){
System.out.println(cont2);
}else{
System.out.println(cont3);
}
}
if (cont1 < cont2){
System.out.println(cont1);

}else{
if (cont2 < cont3){
System.out.println(cont2);
}else{
System.out.println(cont3);
}
}
resultTotal=(preco_compra+preco_venda+cont1+cont2+cont3);
}
}
eros.stein

Além de colocar entre as tags CODE (http://www.guj.com.br/posts/list/50115.java), não esqueça da indentação, é desanimador ler um código assim.

D

Valeu pela dica sou ignorante no assunto mas estou me adaptando, quanto ao programa ainda tenho dificuldades não consegui resolver.

Abraços !!!

eros.stein

Que dificuldades? O código que eu postei está compilando e executando… Como disse, não conferi sua lógica, só a programação e está rodando. Então qual é sua dificuldade? Explique.

D

Consegui, agora eu quero fazer a saida de mensagens por exemplo

System.out.println(cont2);

o maior valor é ****
entende

B
import javax.swing.JOptionPane; 

public class Lucro{ 

	public static void main (String [] args){ 
		
		float cont1 = 0;
		float cont2 = 0;
		float cont3 = 0;
		float result = 0; 
		float preco_compra = 0; 
		float preco_venda = 0; 
		float result1 = 0;
		float result2 = 0;
		float resultTotal = 0; 
		String resp = "S";
		String nome = ""; 

		while (resp.equalsIgnoreCase("S")){
			
			nome = JOptionPane.showInputDialog("Entre com o nome do produto"); 
			preco_compra = Float.parseFloat(JOptionPane.showInputDialog("Entre com o valor da compra")); 
			preco_venda = Float.parseFloat(JOptionPane.showInputDialog("Entre com o valor da venda")); 
			
			if (preco_venda <= 10) { 
				result = preco_compra * 0.1f; 
				cont1 = cont1 + 1; 
			} else if ((preco_venda > 10)||(preco_venda<=20)){ 
				result1 = preco_compra * 0.2f; 
				cont2 = cont2+1; 	
			} else if(preco_venda > 20){ 
				result2 = preco_compra * 0.3f; 
				cont2 = cont2+1; 
			}
			
			if (cont1 > cont2) JOptionPane.showMessageDialog(null, (cont1)); 
		    else if (cont2 > cont3) System.out.println(cont2); 
		    else System.out.println(cont3); 
			
			if (cont1 < cont2) JOptionPane.showMessageDialog(null, (cont1)); 
			else if (cont2 < cont3)	System.out.println(cont2); 
			else System.out.println(cont3);  
			
			resultTotal=( preco_compra + preco_venda + cont1 + cont2 + cont3);
			
			JOptionPane.showMessageDialog(null, "Resultado total : " + resultTotal);
			
			resp =JOptionPane.showInputDialog("Deseja continuar"); 
		}  
	}
}
B

Identar o código o deixa mais legível… toma cuidado quando voce for declarar variaveis poisvc tinha declarado result duas vezes, e igualdade é == e naum =

qualquer duvida estamos aqui…

D

mas Bruno, a logica esta certa pq o resultado final tem que ser esse:
2. Um comerciante deseja saber o levantamento do lucro das mercadorias que ele comercializa. Para isto, mandou elaborou uma lista com o nome, preço de compra e preço de venda de cada mercadoria. Faça um algoritmo que:

o Determine e escreva quantas mercadorias proporcionam:
 Lucro < 10%
 10%  Lucro  20%
 Lucro > 20%

o Determine a mercadoria que proporciona maior lucro e a que proporciona menor lucro.

o Determine e escreva o valor de compra e de venda de todas as mercadorias, assim como o lucro total.

M

Olá, será que ficou muito grande? Não fiz nenhuma validação, abraços…

Classe: Produto.java

public class Produto {
    private String nome;
    private double precoVenda;
    private double precoCompra;
    private double lucro;

    public void setLucro(double lucro) {
        this.lucro = lucro;
    }
    
    public double getLucro() {
        return this.lucro;
    }
    
    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public double getPrecoVenda() {
        return precoVenda;
    }

    public void setPrecoVenda(double precoVenda) {
        this.precoVenda = precoVenda;
    }

    public double getPrecoCompra() {
        return precoCompra;
    }

    public void setPrecoCompra(double precoCompra) {
        this.precoCompra = precoCompra;
    }
    
    @Override
    public String toString() {
        return this.getNome();
    }
}

Classe: LevantamentoLucro.java

/*
 * Um comerciante deseja saber o levantamento do lucro das mercadorias que ele comercializa. 
 * Para isto, mandou elaborar uma lista com o nome, preço de compra e preço de venda de cada mercadoria. 
 * Faça um algoritmo que determine e escreva quantas mercadorias proporcionam: 
 *      1) Lucro < 10% 
 *      2) 10% <= Lucro <= 20% 
 *      3) Lucro > 20% 
 *
 * Determine a mercadoria que proporciona maior lucro e a que proporciona menor lucro. 
 * Determine e escreva o valor de compra e de venda de todas as mercadorias, assim como o lucro total. 
 * 
 */

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.swing.JOptionPane;

public class LevantamentoLucro {
    
    // lista de Produtos
    List<Produto> listaProdutos = new ArrayList<Produto>();

    // Método que insere produto na lista
    public void insereProduto(Produto produto) {
        listaProdutos.add(produto);
    }

    // Método que verifica produtos com lucro < 10%
    public int getQtdeProdLucroMenor() {
        Iterator i = listaProdutos.iterator();
        Produto produto = new Produto();
        int cont = 0;
        while (i.hasNext()) {
            produto = (Produto) i.next();
            if (produto.getLucro() < 10) {
                cont++;
            }
        }
        return cont;
    }

    // Método que verifica produtos com 10% <= Lucro <= 20%
    public int getQtdeProdLucroMedio() {
        Iterator i = listaProdutos.iterator();
        Produto produto = new Produto();
        int cont = 0;
        while (i.hasNext()) {
            produto = (Produto) i.next();
            if (produto.getLucro() >= 10 && produto.getLucro() <= 20) {
                cont++;
            }
        }
        return cont;
    }

    // Método que verifica produtos com Lucro > 20%
    public int getQtdeProdLucroMaior() {
        Iterator i = listaProdutos.iterator();
        Produto produto = new Produto();
        int cont = 0;
        while (i.hasNext()) {
            produto = (Produto) i.next();
            if (produto.getLucro() > 20) {
                cont++;
            }
        }
        return cont;
    }

    // Método que retorna o produto com maior lucro da lista
    public Produto getProdutoMaiorLucro() {
        Iterator i = listaProdutos.iterator();
        Produto produto = new Produto();
        Produto produtoMaiorLucro = null;        
        double lucro = 0;
        
        while (i.hasNext()) {
            produto = (Produto) i.next();
            if (produto.getLucro() > lucro) {
                produtoMaiorLucro = produto;
                lucro = produto.getLucro();
            }
        }
        return produtoMaiorLucro;
    }
    
    // Método que retorna o produto com menor lucro da lista
    public Produto getProdutoMenorLucro() {
        Iterator i = listaProdutos.iterator();
        Produto produto = new Produto();
        Produto produtoMenorLucro = null;        
        double lucro = [telefone removido].00;
        
        while (i.hasNext()) {
            produto = (Produto) i.next();
            if (produto.getLucro() < lucro) {
                produtoMenorLucro = produto;
                lucro = produto.getLucro();
            }
        }
        return produtoMenorLucro;
    }
    
    // Método que efetua o cadastro dos produtos na lista
    public void cadastraProdutos() {
        char resposta = 's';
        int contProdutosCadastrados = 0;

        // dados dos produtos
        String nome = null;
        double precoCompra = 0;
        double precoVenda = 0;
        double lucro = 0;

        while (resposta == 's') {
            // contador de produtos cadastrados - só informativo
            contProdutosCadastrados++;
            // novo Produto
            Produto produto = new Produto();
            
            nome = JOptionPane.showInputDialog(null, "Entre com o nome do produto: " + contProdutosCadastrados);
            produto.setNome(nome);
            
            precoCompra = Double.parseDouble(JOptionPane.showInputDialog(null, "Entre com o preço de compra do produto"));
            produto.setPrecoCompra(precoCompra);

            precoVenda = Double.parseDouble(JOptionPane.showInputDialog(null, "Entre com o preço de venda do produto"));
            produto.setPrecoVenda(precoVenda);
            
            // calcula o lucro em porcentagem ( Ex.: 10,3% )
            lucro = ((precoVenda - precoCompra) / (precoCompra)) * 100;
            produto.setLucro(lucro);
            
            // insere produto na lista de produtos
            insereProduto(produto);
            resposta = JOptionPane.showInputDialog(null, "Cadastrar outro produto? (s/n)").charAt(0);
        }
    }

    public void listaProdutos() {
        Iterator i = listaProdutos.iterator();
        Produto produto = new Produto();
        StringBuilder lista = new StringBuilder();
        lista.append("  =============== LISTA DE PRODUTOS =============== \n \n");
        while (i.hasNext()) {
            produto = (Produto) i.next();
            lista.append("Produto: " + produto.getNome() + 
                      " - Preço compra: " + produto.getPrecoCompra() +
                      " - Preço venda: " + produto.getPrecoVenda() + 
                      " - Lucro : " + produto.getLucro() + "% " + "\n");
        } 
        JOptionPane.showMessageDialog(null, lista.toString());
    }
    
    public static void main(String[] args) {
        LevantamentoLucro levantamentoLucro = new LevantamentoLucro();               
        levantamentoLucro.cadastraProdutos();
        
        // Informações solicitadas
        JOptionPane.showMessageDialog(null,"Qtde de produtos com lucro < 10% = " + levantamentoLucro.getQtdeProdLucroMenor() + "\n" + 
                                           "Qtde de produtos com lucro entre 10% e 20% = " + levantamentoLucro.getQtdeProdLucroMedio() + "\n" +
                                           "Qtde de produtos com lucro > 20 % = " + levantamentoLucro.getQtdeProdLucroMaior() );
        JOptionPane.showMessageDialog(null,"Produto com menor lucro = " + levantamentoLucro.getProdutoMenorLucro() + "\n" +
                                           "Produto com maior lucro = " + levantamentoLucro.getProdutoMaiorLucro());                     
        levantamentoLucro.listaProdutos();
    }

}
D

Meu era esse o objetivo valeu mesmo abraços!!!

D

Alguém pode me ajudar a fazer o algoritmo deste programa …

Quem me ajudou a montar foi mfjeng e ficou legal agora eu quero fazer o algoritmo dele…

Aguém me ajude!!!

Abraços

public class Produto {   
    private String nome;   
    private double precoVenda;   
    private double precoCompra;   
    private double lucro;   
  
    public void setLucro(double lucro) {   
        this.lucro = lucro;   
    }   
       
    public double getLucro() {   
        return this.lucro;   
    }   
       
    public String getNome() {   
        return nome;   
    }   
  
    public void setNome(String nome) {   
        this.nome = nome;   
    }   
  
    public double getPrecoVenda() {   
        return precoVenda;   
    }   
  
    public void setPrecoVenda(double precoVenda) {   
        this.precoVenda = precoVenda;   
    }   
  
    public double getPrecoCompra() {   
        return precoCompra;   
    }   
  
    public void setPrecoCompra(double precoCompra) {   
        this.precoCompra = precoCompra;   
    }   
       
    @Override   
    public String toString() {   
        return this.getNome();   
    }   
}  
public class Produto {
    private String nome;
    private double precoVenda;
    private double precoCompra;
    private double lucro;

    public void setLucro(double lucro) {
        this.lucro = lucro;
    }
    
    public double getLucro() {
        return this.lucro;
    }
    
    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public double getPrecoVenda() {
        return precoVenda;
    }

    public void setPrecoVenda(double precoVenda) {
        this.precoVenda = precoVenda;
    }

    public double getPrecoCompra() {
        return precoCompra;
    }

    public void setPrecoCompra(double precoCompra) {
        this.precoCompra = precoCompra;
    }
    
    @Override
    public String toString() {
        return this.getNome();
    }
}

 

Classe: LevantamentoLucro.java 
view plaincopy to clipboardprint?
/*  
* Um comerciante deseja saber o levantamento do lucro das mercadorias que ele comercializa.  
* Para isto, mandou elaborar uma lista com o nome, preço de compra e preço de venda de cada mercadoria.  
* Faça um algoritmo que determine e escreva quantas mercadorias proporcionam:  
*      1) Lucro < 10%  
*      2) 10% <= Lucro <= 20%  
*      3) Lucro > 20%  
*  
* Determine a mercadoria que proporciona maior lucro e a que proporciona menor lucro.  
* Determine e escreva o valor de compra e de venda de todas as mercadorias, assim como o lucro total.  
*  
*/   
  
import java.util.ArrayList;   
import java.util.Iterator;   
import java.util.List;   
import javax.swing.JOptionPane;   
  
public class LevantamentoLucro {   
       
    // lista de Produtos   
    List<Produto> listaProdutos = new ArrayList<Produto>();   
  
    // Método que insere produto na lista   
    public void insereProduto(Produto produto) {   
        listaProdutos.add(produto);   
    }   
  
    // Método que verifica produtos com lucro < 10%   
    public int getQtdeProdLucroMenor() {   
        Iterator i = listaProdutos.iterator();   
        Produto produto = new Produto();   
        int cont = 0;   
        while (i.hasNext()) {   
            produto = (Produto) i.next();   
            if (produto.getLucro() < 10) {   
                cont++;   
            }   
        }   
        return cont;   
    }   
  
    // Método que verifica produtos com 10% <= Lucro <= 20%   
    public int getQtdeProdLucroMedio() {   
        Iterator i = listaProdutos.iterator();   
        Produto produto = new Produto();   
        int cont = 0;   
        while (i.hasNext()) {   
            produto = (Produto) i.next();   
            if (produto.getLucro() >= 10 && produto.getLucro() <= 20) {   
                cont++;   
            }   
        }   
        return cont;   
    }   
  
    // Método que verifica produtos com Lucro > 20%   
    public int getQtdeProdLucroMaior() {   
        Iterator i = listaProdutos.iterator();   
        Produto produto = new Produto();   
        int cont = 0;   
        while (i.hasNext()) {   
            produto = (Produto) i.next();   
            if (produto.getLucro() > 20) {   
                cont++;   
            }   
        }   
        return cont;   
    }   
  
    // Método que retorna o produto com maior lucro da lista   
    public Produto getProdutoMaiorLucro() {   
        Iterator i = listaProdutos.iterator();   
        Produto produto = new Produto();   
        Produto produtoMaiorLucro = null;           
        double lucro = 0;   
           
        while (i.hasNext()) {   
            produto = (Produto) i.next();   
            if (produto.getLucro() > lucro) {   
                produtoMaiorLucro = produto;   
                lucro = produto.getLucro();   
            }   
        }   
        return produtoMaiorLucro;   
    }   
       
    // Método que retorna o produto com menor lucro da lista   
    public Produto getProdutoMenorLucro() {   
        Iterator i = listaProdutos.iterator();   
        Produto produto = new Produto();   
        Produto produtoMenorLucro = null;           
        double lucro = [telefone removido].00;   
           
        while (i.hasNext()) {   
            produto = (Produto) i.next();   
            if (produto.getLucro() < lucro) {   
                produtoMenorLucro = produto;   
                lucro = produto.getLucro();   
            }   
        }   
        return produtoMenorLucro;   
    }   
       
    // Método que efetua o cadastro dos produtos na lista   
    public void cadastraProdutos() {   
        char resposta = 's';   
        int contProdutosCadastrados = 0;   
  
        // dados dos produtos   
        String nome = null;   
        double precoCompra = 0;   
        double precoVenda = 0;   
        double lucro = 0;   
  
        while (resposta == 's') {   
            // contador de produtos cadastrados - só informativo   
            contProdutosCadastrados++;   
            // novo Produto   
            Produto produto = new Produto();   
               
            nome = JOptionPane.showInputDialog(null, "Entre com o nome do produto: " + contProdutosCadastrados);   
            produto.setNome(nome);   
               
            precoCompra = Double.parseDouble(JOptionPane.showInputDialog(null, "Entre com o preço de compra do produto"));   
            produto.setPrecoCompra(precoCompra);   
  
            precoVenda = Double.parseDouble(JOptionPane.showInputDialog(null, "Entre com o preço de venda do produto"));   
            produto.setPrecoVenda(precoVenda);   
               
            // calcula o lucro em porcentagem ( Ex.: 10,3% )   
            lucro = ((precoVenda - precoCompra) / (precoCompra)) * 100;   
            produto.setLucro(lucro);   
               
            // insere produto na lista de produtos   
            insereProduto(produto);   
            resposta = JOptionPane.showInputDialog(null, "Cadastrar outro produto? (s/n)").charAt(0);   
        }   
    }   
  
    public void listaProdutos() {   
        Iterator i = listaProdutos.iterator();   
        Produto produto = new Produto();   
        StringBuilder lista = new StringBuilder();   
        lista.append("  =============== LISTA DE PRODUTOS =============== \n \n");   
        while (i.hasNext()) {   
            produto = (Produto) i.next();   
            lista.append("Produto: " + produto.getNome() +   
                      " - Preço compra: " + produto.getPrecoCompra() +   
                      " - Preço venda: " + produto.getPrecoVenda() +   
                      " - Lucro : " + produto.getLucro() + "% " + "\n");   
        }   
        JOptionPane.showMessageDialog(null, lista.toString());   
    }   
       
    public static void main(String[] args) {   
        LevantamentoLucro levantamentoLucro = new LevantamentoLucro();                 
        levantamentoLucro.cadastraProdutos();   
           
        // Informações solicitadas   
        JOptionPane.showMessageDialog(null,"Qtde de produtos com lucro < 10% = " + levantamentoLucro.getQtdeProdLucroMenor() + "\n" +   
                                           "Qtde de produtos com lucro entre 10% e 20% = " + levantamentoLucro.getQtdeProdLucroMedio() + "\n" +   
                                           "Qtde de produtos com lucro > 20 % = " + levantamentoLucro.getQtdeProdLucroMaior() );   
        JOptionPane.showMessageDialog(null,"Produto com menor lucro = " + levantamentoLucro.getProdutoMenorLucro() + "\n" +   
                                           "Produto com maior lucro = " + levantamentoLucro.getProdutoMaiorLucro());                       
        levantamentoLucro.listaProdutos();   
    }   
  
}
Jaison

DRIMY:
Alguém pode me ajudar a fazer o algoritmo deste programa …

Quem me ajudou a montar foi mfjeng e ficou legal agora eu quero fazer o algoritmo dele…

Aguém me ajude!!!

Abraços

é trabalho de aula?

D

SIM, ja tive conhecimento que o fórum não ajuda para este fins( trabalhos de faculdade) estou tentando eu mesmo fazer o algoritmo… Embora o principio consegui montar pelo o pouco entedimento na linguagem java, o que esta complicado é entender o dois imports que el usou e algumas vairaveis dentro do scopo, mas vou conseguir fazer este algoritmo nao desisto facil…

Abraços

Criado 13 de dezembro de 2007
Ultima resposta 15 de dez. de 2007
Respostas 14
Participantes 5