Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Calcolo percentuale

  1. #1

    Calcolo percentuale

    Raga mi serve un aiuto su questo problema:
    -Dati in input (da console) n voti, visualizzare la percentuale di quelli sufficienti e visualizzare il numero delle insufficienze. Io ho provato a farlo così ma mi esce sempre la percentuale =0
    codice:
    package percvoti;
     
    import java.util.Scanner;
    public class percvoti {
     public static void main(String[] args) {
      // TODO Auto-generated method stub
      @SuppressWarnings("resource")
      Scanner in=new Scanner(System.in);
      int n,voto,i,contsuff,contins,percsuff;
      System.out.println("Quanti voti sono?");
      n=in.nextInt();
      i=0;
      contsuff=0;
      contins=0;
      while(i<n)
      {
       System.out.println("Inserisci un voto");
       voto=in.nextInt();
       if(voto>=6)
       {
       contsuff++; 
       }
       else
       {
       contins++;
       }
       i++;
      }
      percsuff=(contsuff/n)*100;
      System.out.println("Percentuale voti sufficienti->"+percsuff+"%");
      System.out.println("Numero voti insufficienti->"+contins);
      
      
     }
    }
     
    

  2. #2
    Utente di HTML.it L'avatar di minomic
    Registrato dal
    Nov 2010
    Messaggi
    635
    Hai dichiarato tutto come int, quindi il risultato della divisione viene troncato a zero.

  3. #3
    Quindi dovrei metterli tutti come double?

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    Stai effettuando una divisione tra interi. Devi convertire contsuff o n o entrambi a double.

    Edit:
    sono stato preceduto
    Ultima modifica di Scara95; 11-01-2015 a 12:10
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  5. #5
    Utente di HTML.it L'avatar di minomic
    Registrato dal
    Nov 2010
    Messaggi
    635
    Quote Originariamente inviata da Saverioapple Visualizza il messaggio
    Quindi dovrei metterli tutti come double?
    E' sufficiente fare il cast di uno dei due a double prima della divisione. Quindi
    codice:
    (double)contsuff/n

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.