Ich versuche zu testen, ob der Geschlecht Char ungültig ist und wenn ja, eine Fehlermeldung zu drucken, die die Eingabeanforderungen erklärt und dann das Programm beendet. Wenn das Geschlecht gültig ist (M
oder F
oder m
oder f
), fahren Sie mit der Ausführung des Programms fort. Ich muss auch eine switch-Anweisung für die Variable gender verwenden, um zu bestimmen, welche Formel verwendet werden soll. Mein gedrucktes Display sollte lauten:Java Geschlecht Char ungültig
Die Erwachsenengröße des Kindes wäre 5,58.
Die Höhe sollte mit printf()
und in 2 Dezimalstellen angezeigt werden.
Hier ist, was ich bisher habe, dass nicht richtig berechnet.
import java.util.Scanner;
public class Workshop3GenderModification {
public static void main(String[] args) {
// TODO Auto-generated method stub
int gender;
gender = 'M';
gender = 'F';
double cheight=0;
Scanner input = new Scanner(System.in);
//father height
System.out.print("Enter your father height in feet ");
int ffeet=input.nextInt();
System.out.print("Enter father height in inches ");
int finches=input.nextInt();
//mother height
System.out.print("Enter mother height in feet ");
int mfeet=input.nextInt();
System.out.print("Enter mother height in inches ");
int minches=input.nextInt();
int mheight = mfeet * 12 + minches;
int fheight = ffeet * 12 + finches;
// child gender
System.out.print("Enter M for male or F for female ");
gender = input.next().charAt (0);
// male or female
input.nextLine();
switch (gender){
case 'M':
cheight =(int)((fheight * 13/12.0)+ mheight)/2;
break;
}
switch (gender){
case 'F' :
cheight =(int)((mheight * 12/13.0) + fheight)/2 ;
break;
}
int cfeet= (int)cheight/12;
int cinched= (int)cheight%12;
double aheight=(cfeet/cinched);
System.out.print(cfeet +"'" + cinched + "\"");
System.out.printf("will be the adult child's height" +"%.2f", aheight);
}
}
Was ist das spezifische Problem, mit dem Sie Hilfe benötigen? –
danke! Ich benötige eine Fehlermeldung, die die Eingabeanforderungen erklärt, wenn ein Benutzer nicht spezifisch "M" "F" eingibt, das das Programm beendet. Wenn das Geschlecht gültig ist, sollte das Programm weiter ausgeführt werden. Auch die endgültige Ausgabe wird nicht korrekt angezeigt, da "die Erwachsenengröße des Kindes 6,45" wäre. – Lisa