Ajuda em codigo java

3 respostas
M

Como vai pessoal sou novo no forum e no mundo java na verdade bem basico mesmo, mais estava lendo alguns bom topicos aqui no forum que é otimo por sinal.

mais ai começa a dificuldade o codigo começa funcionando conforme vou adicionando funções ai se perco todo.

no meu raciocionio parece estar certo mais olho reolho e nada.

alguem poderia me ajudar ??? o codigo esté em modo estruturado vou ter que depois descobrir como passar em orientação objeto ( que so tive 1 aula )

desde já agradeço se alguem puder me ajudar.

// 3) Escrever um programa que lê um valor N inteiro e positivo e que calcula e
// escreve o valor de E, conforme a fórmula abaixo:
//
// E = 1 + 1 / 1! + 1 / 2! + 1 / 3! + ... + 1 / N!

import java.util.Scanner;
class execicio3{
	
public class fatorial();
int x, fat, i;	  
	  funcao fatorial(x: inteiro): inteiro
    fat = 1;
    para i de 2 ate x faca
    	for (i=2;x;i++){
    	fat = fat * i;
        return fat
    	}

public static void main (String args[]){

int n,i;
double valorE;
Scanner teclado = new Scanner (System.in);
System.out.println ("Digite N: ");
        n = teclado.nextInt();
        valorE = 1;
        for (i=1;n;i++){
        
        	valorE = valorE + 1 / fatorial(i); 
        System.out.println ("O valor de E é"+ valorE);
        }
}
}

outro

// 4) A prefeitura de uma cidade fez uma pesquisa entre seus habitantes,
// coletando dados sobre o salário e número de filhos. A prefeitura deseja saber:
//
// a) média do salário da população;
// b) média do número de filhos;
// c) maior salário;
// d) percentual de pessoas com salário até R$ 100,00.
//
// O final da leitura de dados se dará com a entrada de um salário negativo.

import java.util.Scanner;
public class exercicio4 {
	
	public static void main (String args[]){
		
	double salario, somaSalario, maiorSalario;
 	int numFilhos, contHab, somaNumFilhos, contSalMenor100;
  
  	Scanner teclado = new Scanner (System.in);
  	System.out.println ("Digite o salário: ");
    salario = teclado.nextDouble();
        
    while (salario >= 0){
    
    System.out.println ("Digite o número de filhos: ");
    numFilhos = teclado.nextInt();
    
    contHab = contHab + 1;
    somaSalario = somaSalario + salario;
    somaNumFilhos = somaNumFilhos + numFilhos;
    
    if (salario > maiorSalario); 
      maiorSalario = salario;
    if (salario <= 100);
      contSalMenor100 = contSalMenor100 + 1;
      
    System.out.println ("Digite o salário: ");
    salario = teclado.nextDouble();
    }
    if  (contHab > 0);
    System.out.println("Média do salário da população:"+ (somaSalario / contHab));
    System.out.println("Média do número de filhos:"+ (somaNumFilhos / contHab));
    System.out.println("Maior salário:"+ maiorSalario);
    System.out.println("Percentual de pessoas com salário até R$ 100,00:"+ (contSalMenor100 / contHab * 100)+ "%");
	}
}

e esse.

// 5) Em uma eleição presidencial existem quatro candidatos. Os votos são
// informados através de códigos. Os dados utilizados para a contagem dos votos
// obedecem a seguinte codificação:
//
// - 1, 2, 3, 4 = voto para os respectivos candidatos
// - 5 = voto nulo
// - 6 = voto em branco
//
// Elabore um programa que leia o voto, calcule e escreva:
//
// - total de votos para cada candidato
// - total de votos nulos
// - total de votos em branco
//
// Como finalizador do conjunto de votos, tem-se o valor 0 (zero).

import java.util.Scanner;
public class exercicio5 {
	
	public static void main (String args[]){
		
		int voto, cont1, cont2, cont3, cont4, contNulo, contBranco;
		  Scanner teclado = new Scanner (System.in);
		
System.out.println ("Digite o salário: ");
        voto = teclado.nextInt();
        
        
  while(voto != 0);
  {
      switch (voto){
      case 1: cont1 = cont1 + 1;break;
      case 2: cont2 = cont2 + 1;break;
      case 3: cont3 = cont3 + 1;break;
      case 4: cont4 = cont4 + 1;break;
      case 5: contNulo = contNulo + 1;break;
      case 6: contBranco = contBranco + 1;break;
      default: System.out.println("Voto Inválido!");
    }
  }
  System.out.println ("Digite o salário: ");
  voto = teclado.nextInt();
  
  
  System.out.println("Quantidade de votos:");
  System.out.println("Candidato 1:"+ cont1);
  System.out.println("Candidato 2:"+ cont2);
  System.out.println("Candidato 3:"+ cont3);
  System.out.println("Candidato 4:"+ cont4);
  System.out.println("Nulos      :"+ contNulo);
  System.out.println("Brancos    :"+ contBranco);
		
	}
}

outra coisa é orientação objeto entendo o coceito de classe herança metodo mais na hora de montar não rola.

Muito obrigado se alguem poder me ajudar.

3 Respostas

leo.alvesneuwald

Cara, não conheço a instrução que se poem “;” após o if.
Se quiser pode deixar o if sem as chaves no teu caso.

if (salario > maiorSalario){
            maiorSalario = salario;
            }
            if (salario <= 100){
                contSalMenor100 = contSalMenor100 + 1;
            }
leo.alvesneuwald

Ah, isso serve para while também.

Tu usa qual IDE?

É bom tentar formatar melhor o código pois acho que isso vai ajudar e entender melhor o que está acontecendo nele …

A

Boa noite, também sou iniciante em java, nem mesmo comessei a estudar objetos, porém, em algumas coisas posso te ajudar, no primeiro exercicio, você misturou java com outras linguagens, em alguns laços foi utilizado ';' logo após a condição, o que finaliza o laço antes mesmo de começar a ler as instruções, varias das variareis que você utilizou nos exercícios não foram inicializadas.
Para facilitar, recomendo que use alguma ide de desenvolvimento, que apresentam dicas dos erros, e uma área para depuração do código, o que ajuda a entende o que ocorre no programa;

a baixo mando os códigos, onde o primeiro exercício não esta completo, pois não entendi o que era para ser feito, os outros estão funcionando.
// 3) Escrever um programa que lê um valor N inteiro e positivo e que calcula e
// escreve o valor de E, conforme a fórmula abaixo:
//
// E = 1 + 1 / 1! + 1 / 2! + 1 / 3! + ... + 1 / N!

import java.util.Scanner;
class execicio3{

	public final long fatorial(int x){
		long fat = x;
		for(int i = (x-1); i > 1; i--){
			fat *= x;
		}
		return fat;
	}


	public static void main (String args[]){

		int n,i;
		double valorE;
		execicio3 met = new execicio3();

		Scanner teclado = new Scanner (System.in);
		System.out.println ("Digite N: ");
		n = teclado.nextInt();
		valorE = 1;
		//parte não resolvida
		for (i = 1; n ; i++){

			valorE = valorE++ / met.fatorial(i); 
			System.out.println ("O valor de E é"+ valorE);
		//------------------------
		}
	}
}
// 4) A prefeitura de uma cidade fez uma pesquisa entre seus habitantes,
// coletando dados sobre o salário e número de filhos. A prefeitura deseja saber:
//
// a) média do salário da população;
// b) média do número de filhos;
// c) maior salário;
// d) percentual de pessoas com salário até R$ 100,00.
//
// O final da leitura de dados se dará com a entrada de um salário negativo.

import java.util.Scanner;
public class Exercicio4 {

	public static void main (String args[]){

		double salario = 0, somaSalario = 0, maiorSalario = 0;
		int contHab = 0, somaNumFilhos = 0, contSalMenor100 = 0;

		Scanner teclado = new Scanner (System.in);
		java.text.NumberFormat nf = java.text.NumberFormat.getCurrencyInstance();
		java.io.PrintStream saida = System.out;

		System.out.println ("Para sair informe um salario negativo");

		while (true){
			saida.print ("Digite o salário: ");
			salario = teclado.nextDouble();
			
			if(salario < 0)break;
			if(salario > maiorSalario)maiorSalario = salario;
			somaSalario += salario;
			if (salario <= 100)contSalMenor100++;

			saida.print ("Digite o número de filhos: ");
			somaNumFilhos += teclado.nextInt();
			contHab++;
		}


		if  (contHab > 0);
		saida.println("Média do salário da população:  "+ nf.format(somaSalario / contHab));
		saida.println("Média do número de filhos:  "+ (somaNumFilhos / contHab));
		saida.println("Maior salário:  "+ nf.format(maiorSalario));
		saida.println("Percentual de pessoas com salário até R$ 100,00:  "+ ((100/contHab)*contSalMenor100)+ "%");
	}
}
// 5) Em uma eleição presidencial existem quatro candidatos. Os votos são
// informados através de códigos. Os dados utilizados para a contagem dos votos
// obedecem a seguinte codificação:
//
// - 1, 2, 3, 4 = voto para os respectivos candidatos
// - 5 = voto nulo
// - 6 = voto em branco
//
// Elabore um programa que leia o voto, calcule e escreva:
//
// - total de votos para cada candidato
// - total de votos nulos
// - total de votos em branco
//
// Como finalizador do conjunto de votos, tem-se o valor 0 (zero).

import java.util.Scanner;
public class exercicio05 {

	public static void main (String args[]){

		int voto, cont1 = 0, cont2 = 0, cont3 = 0, cont4 = 0, contNulo = 0, contBranco = 0;
		
		Scanner teclado = new Scanner (System.in);
		java.io.PrintStream saida = System.out;

		saida.println ("Para sair, digite '0'");

		while(true){
			saida.print("\n\nInforme o codigo do seu candidato '1 , 2, 3, 4, 5'  -- 5)voto nulo  --  6)voto em branco:   ");
			voto = teclado.nextInt();
			if(voto == 0)break;

			switch (voto){
			case 1: cont1++;break;
			case 2: cont2++;break;
			case 3: cont3++;break;
			case 4: cont4++;break;
			case 5: contNulo++;break;
			case 6: contBranco++;break;
			default: System.out.println("Voto Inválido!");
			}
		}


		saida.println("Quantidade de votos: ");
		saida.println("Candidato 1:\t"+ cont1);
		saida.println("Candidato 2:\t"+ cont2);
		saida.println("Candidato 3:\t"+ cont3);
		saida.println("Candidato 4:\t"+ cont4);
		saida.println("Nulos:\t\t"+ contNulo);
		saida.println("Brancos:\t"+ contBranco);

	}
}
Criado 20 de junho de 2010
Ultima resposta 21 de jun. de 2010
Respostas 3
Participantes 3