[Java] Progetto - Distribuzioni Voti

glprobot

Nuovo Utente
30 Giu 2017
3
0
1
35
Salve a tutti,

Ho realizzato tutto l'esercizio,però mi da dei seguenti problemi:
Ho fatto il controllo dell'input, però dopo l'if, ho inserito una stampa, si può fare qualcosa di meglio????
Per il calcolo della percentuale, non escono i risultati, come mai??????
Per piacere mi potete correggere questi due errori che ho fatto.
Te nè sarei grado. Grazie

Ecco il codice Java:

package progetto5.oop.com;
import java.util.*;

public class DistribuzioneDeiVoti {

/*Si crei una classe che rappresenta la distribuzione di voti per un dato corso.
*Si scrivano i metodi per effettuare le seguenti attività.
*- Assegnare il numero di studenti che hanno preso un certo voto(per ognuno dei voti A,B,C,D,F
*- Leggere il numero di studenti che hanno preso un certo voto(per ognuno dei voti A,B,C,D,F
*- resituire il numero totale dei voti
*- restituire la percentuale di voti per ciascuna lettera come un intero compreso tra 0 e 100
*- disegnare un grafico, esempio:
*
* 0 10 20 30 40 50 60 70 80 90 100%
* | | | | | | | | | | |
* **************************************************
* ****A
* *****************B
* **********************C
* **************************D
* **********E
* **F
* il grafico avrà cinque barre. Ciascuna barra può essere una riga orizzontale di asterischi: il numero
* di asterischi di una riga sarà proporzionale alla percentuale per ciascuna categoria. Se si fa in modo che un
* asterisco rappresenti il 2% allora 50 asterischi rappresentano il 100%. si gradui l'asse orrizontale al 10 per cento
* da 0 a 100 e si etichetti ciascuna riga con il nome della lettera corrispondente.
*
* per esempio, se i punteggi sono 1A 4B 6C 2D 1F il numero totale di punteggi è 14, la percentuale di A è 7, di B è 29
* di C è 43, di D è 14 e di F è 7. la riga A conterrà 4 asterischi (7% di 50 arrotondato per eccesso) la riga B 14, la c 21
* la D 7 e la riga F ne conterrà 4.
* */


private int votiA, votiB, votiC, votiD, votiE, votiF, percentuale;


public int getVotiA() {
return votiA;
}


public void setVotiA(int votiA) {
this.votiA = votiA;
}


public int getVotiB() {
return votiB;
}


public void setVotiB(int votiB) {
this.votiB = votiB;
}


public int getVotiC() {
return votiC;
}


public void setVotiC(int votiC) {
this.votiC = votiC;
}


public int getVotiD() {
return votiD;
}


public void setVotiD(int votiD) {
this.votiD = votiD;
}


public int getVotiE() {
return votiE;
}


public void setVotiE(int votiE) {
this.votiE = votiE;
}


public int getVotiF() {
return votiF;
}


public void setVotiF(int votiF) {
this.votiF = votiF;
}


public void setPercentuale(int percentuale) {
this.percentuale = percentuale;
}


public DistribuzioneDeiVoti() {
super();
// TODO Auto-generated constructor stub
}


public DistribuzioneDeiVoti(int votiA, int votiB, int votiC, int votiD,
int votiE, int votiF, int percentuale) {
this.votiA = votiA;
this.votiB = votiB;
this.votiC = votiC;
this.votiD = votiD;
this.votiE = votiE;
this.votiF = votiF;
this.percentuale = percentuale;
}


public void input(){
Scanner in = new Scanner(System.in);

System.out.println("Inserire quanti studenti hanno preso A: ");
this.votiA = in.nextInt();
System.out.println("Inserire quanti studenti hanno preso B: ");
this.votiB = in.nextInt();
System.out.println("Inserire quanti studenti hanno preso C: ");
this.votiC = in.nextInt();
System.out.println("Inserire quanti studenti hanno preso D: ");
this.votiD = in.nextInt();
System.out.println("Inserire quanti studenti hanno preso E: ");
this.votiE = in.nextInt();
System.out.println("Inserire quanti studenti hanno preso F: ");
this.votiF = in.nextInt();

if(this.votiA <= 100 && this.votiB <= 100 && this.votiC <= 100 && this.votiD <= 100 && this.votiE <= 100 && this.votiF <= 100){
System.out.println();
System.out.println("Gli Studenti devono essere minori di 100");
}
else
System.exit(0);

}


public void leggistudenti(){
System.out.println("Studenti con il voto A sono: " + this.votiA);
System.out.println("Studenti con il voto B sono: " + this.votiB);
System.out.println("Studenti con il voto C sono: " + this.votiC);
System.out.println("Studenti con il voto D sono: " + this.votiD);
System.out.println("Studenti con il voto E sono: " + this.votiE);
System.out.println("Studenti con il voto F sono: " + this.votiF);
System.out.println("totale voti (da A fino a F): " + this.totalevoti());
System.out.println();
}


public int totalevoti(){
int totale;
totale =(this.getVotiA() + this.getVotiB() + this.getVotiC() + this.getVotiD() + this.getVotiE() + this.getVotiF());
return totale;
}

public int percentuale_votoA(){
int a,a1;

a = (getVotiA() / totalevoti()); // calcolo della percentuale voto
a1 = (a * 100);
return a1;
}

public int percentuale_votoB(){
int b;

b = (this.votiB / this.totalevoti()) * 100;
return b;
}

public int percentuale_votoC(){
int c;

c = (this.getVotiC() / this.totalevoti()) * 100;
return c;
}

public int percentuale_votoD(){
int d;

d = (this.getVotiD() / this.totalevoti()) * 100;
return d;
}

public int percentuale_votoE(){
int e;

e = (this.getVotiE() / this.totalevoti()) * 100;
return e;
}

public int percentuale_votoF(){
int f;

f = (this.votiF / totalevoti()) * 100;
return f;
}

public void stampaAF(){
System.out.println("Voto A: " + this.percentuale_votoA() + "%");
System.out.println("Voto B: " + this.percentuale_votoB() + "%");
System.out.println("Voto C: " + this.percentuale_votoC() + "%");
System.out.println("Voto D: " + this.percentuale_votoD() + "%");
System.out.println("Voto E: " + this.percentuale_votoE() + "%");
System.out.println("Voto F: " + this.percentuale_votoF() + "%");
System.out.println();
}



public void stampaGrafico(){

for(int i=0; i < 110; i = i + 10){ //stampa orrizontalmente a 10 a 10 le cifre
System.out.print(i + " ");
}

System.out.println();

for(int y=0; y < 110; y = y + 10){ //stampa orrizontalmente a 10 a 10 il "|"
System.out.print(" | ");
}

System.out.println();

for(int i=0; i < this.percentuale_votoA(); i++){
System.out.print("*");
}

System.out.println();

for(int i=0; i < this.percentuale_votoB(); i++){
System.out.print("*");
}

System.out.println();

for(int i=0; i < this.percentuale_votoC(); i++){
System.out.print("*");
}

System.out.println();

for(int i=0; i < this.percentuale_votoD(); i++){
System.out.print("*");
}

System.out.println();

for(int i=0; i < this.percentuale_votoE(); i++){
System.out.print("*");
}

System.out.println();

for(int i=0; i < this.percentuale_votoF(); i++){
System.out.print("*");
}



}


}
 

ottofonsuppost

Utente Attivo
10 Mag 2016
170
13
18
Questo tuo programma FA SCHIFO. innanzitutto quando si SCRIVE un programma si usano le // o */ per COMMENTARE LE PARTI DEL PROGRAMMA, in modo che la gente ed il programmatore non diventi scemo a ricostruire le intenzioni del creatore; da uno sguardo sommario si intuisce che esiste codice RIDONDANTE, in quanto non usi un METODO per compiere le stesse identiche operazioni ripetitive.
 
Discussioni simili
Autore Titolo Forum Risposte Data
F NetBeans problema creazione progetto Java Windows e Software 0
S cerco persona che conosca java, per " progetto " di software Offerte e Richieste di Lavoro e/o Collaborazione 0
F Progetto java su Tweet Java 0
F Cerco qualcuno per un progetto java gratuito Java 1
A riuso progetto java/javaswing Java 11
X Progetto Java Java 0
L java api_google Javascript 0
Z [java] bufferizzare stream audio da mic Java 1
L java + Api di google Javascript 1
A [Cerchiamo] [Retribuito/a] "Java Solution Architect" Offerte e Richieste di Lavoro e/o Collaborazione 1
F Script java elenco alfabetico non funziona Javascript 3
C Serializzazione in java Java 1
M AIUTO ESERCIZIO JAVA Javascript 1
M Ripasso Java Offerte e Richieste di Lavoro e/o Collaborazione 0
F [OFFRO - RETRIBUITO] Sviluppatori JAVA Offerte e Richieste di Lavoro e/o Collaborazione 0
L leggere RGB di un pixel dello schermo in java Java 1
I Creazione programmino JAVA Offerte e Richieste di Lavoro e/o Collaborazione 0
F Aiuto java script Javascript 2
T [Java] tipi generici con esempio pratico Java 1
J File audio in java Java 0
V [JAVA] come integrare un software scritto in java su una pagina web? Java 4
C Java client / server Java 0
F [OFFRO][RETRIBUITO] PROGRAMMATORE JAVA Offerte e Richieste di Lavoro e/o Collaborazione 0
C [Java] testare un metodo con Junit Java 1
A [Java] caricare un url esterno senza utilizzo di iframe Java 0
S [OFFRO] Debug delle tue applicazioni Java Offerte e Richieste di Lavoro e/o Collaborazione 1
L [Java] Aggiungere elementi ad array JSON Java 0
B [Java] Paginazione in risposta HTTP Java 0
A [Java]Date diminuite di un giorno su db MySQL Java 0
K [Java] aiuto switch case Java 1
P [Java] limite destro di un JFrame Java 5
D [Java] far partire JProgressBar all'apertura di un JFrame Java 1
N [java con eclipse]metodo ricorsivo che accetta in ingresso un char e restituisce un int Java 0
A Verifica validità data in Java Java 2
L [Java] Errore json conversione Java 0
Drago73 [Java] leggere/scrivere txt server Java 0
M [Javascript] Java card Java 0
serena.cerutti posizioni aperte: PhP, Java, .Net Offerte e Richieste di Lavoro e/o Collaborazione 0
N [Java]problema jasper report dopo compilazione file .jar Java 0
N [Java] Piccolo jform per calcolo totale da 2 campi i double Java 0
N [Java] jbutton con funzioni Java 2
M [java] esercizio lunghezza array di stringhe Java 0
A [java] problema esercizio Java 0
filograndipad2 Esempi chiari e completi sul funzionamento degli eventi in Java Java 1
Raziel84 [Java] Combinazione elementi matrice Java 0
A [java] problema esercizio array Java 5
L da php a popup java PHP 2
W Piccolo sistema per gestire alcune periferiche, Java o altro linguaggio? Java 8
S Cerco programmatore java Offerte e Richieste di Lavoro e/o Collaborazione 0
Z [Java] Grassetto assente su font incorporato nel pacchetto jar Java 0

Discussioni simili