Προς το περιεχόμενο

αρχάριος στη java


niknax

Προτεινόμενες αναρτήσεις

Δημοσ.

Kαλησπέρα σε όλους και καλή Αποκριά! Δεν καταλαβαίνω πού κάνω λάθος στον κώδικα στο εξής πρόγραμμα που ζητάει να βρεθεί ο μέσος όρος κάποιου μαθήματος (Φώνηση) σε 10 μαθητές που θα εισάγουν το βαθμό τους.Η απορία μου είναι η μεταβλητή metritis.Όταν το τρέχω μου βγάζει 12 φορές την ερώτηση "Bάλε το βαθμό σου στη Φώνηση: " και όχι 10 όπως θα έπρεπε..

Ο κώδικας είναι: import java.util.Scanner;

 

public class Fwnisi {

 

 

public Fwnisi() {

}

 

public void Bath ()

{

 

Scanner input = new Scanner (System.in);

int synolo = 0; // άθροισμα βαθμών

int vathmos; // o βαθμός του μαθήματος

int metritis = 0;

double MesosOros;

 

 

System.out.println("Bάλε το βαθμό σου στη Φώνηση: ");

vathmos = input.nextInt();

 

 

metritis += 1;

 

while(metritis <9)

{

 

System.out.println ("Bάλε το βαθμό σου στη Φώνηση: ");

vathmos = input.nextInt();

metritis++;

synolo = synolo + vathmos;

}

 

MesosOros = synolo / metritis;

 

System.out.printf("O μέσος όρος στη Φώνηση είναι: %.2f",MesosOros);

 

}

 

}

Δημοσ.
Kαλησπέρα σε όλους και καλή Αποκριά! Δεν καταλαβαίνω πού κάνω λάθος στον κώδικα στο εξής πρόγραμμα που ζητάει να βρεθεί ο μέσος όρος κάποιου μαθήματος (Φώνηση) σε 10 μαθητές που θα εισάγουν το βαθμό τους.Η απορία μου είναι η μεταβλητή metritis.Όταν το τρέχω μου βγάζει 12 φορές την ερώτηση "Bάλε το βαθμό σου στη Φώνηση: " και όχι 10 όπως θα έπρεπε..

 

Γεια σου niknax. Είσαι σίγουρος ότι σου βγάζει την ερώτηση δώδεκα φορές; Κανονικά θα έπρεπε να σου τη βγάζει εννέα, το while βγαίνει όταν ο μετρητής θα είναι 9, άρα θα εκτελεστεί 8 φορές, και μία η αρχική (έξω από το while) = 9.

Δημοσ.

Άλλο ένα λαθάκι που μου φλενεται ότι έχει ο κώδικας είναι ότι.... δίνεις ένα βαθμό έξω από το while χωρίς να το βάζεις στο synolo. Έτσι δεν θα βρεις το πραγματικό μέσο όρο... θα χάσεις ενα βαθμό.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...