Java fundamentals through coding exercises
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

2.7 KiB

Tee ohjelma Lento, jolla voidaan selvittää lennon numerosta, onko kyseessä Finnairin lento. Jos lennon numeron alussa on AY, kyseessä on Finnairin lento. Jos kyseessä on Finnairin lento, selvitetään lisäksi, onko kyseessä kaukolento, kotimaan lento vai Venäjän lento. Jos lennon numeron kolmas merkki on 1, kyseessä on kaukolento, 2-6 kotimaan lento, 7 Venäjän lento. Merkkijonon voi muuntaa numeroksi

int numero = Integer.parseInt(merkkijono);

Ohjelman sallitut tulosteet ovat: "Kaukolento", "Kotimaan lento", "Venäjän lento" tai "Ei ole Finnairin lento".

Example output:
Anna lennon numero: AY105
Kaukolento

Lento.java

import java.util.Scanner;
public class Lento {
public static void main(String[] args) {
Scanner syote = new Scanner(System.in);
String lentoID = "";
String lentoTyyppi = "";
boolean lentoFinnair = false;
int lentoIDLength = 5;
System.out.print("Anna lennon numero: ");
lentoID = syote.next();
if (lentoID.length() == lentoIDLength) {
if (lentoID.substring(0,2).equals("AY")) {
lentoFinnair = true;
}
// if numID is not integer, throw exception and exit
try {
// Obtain third character of the input string
// charAt sets data type to 'char', thus String.valueOf() method is required
// for char to String conversion
// Convert String to int using Integer.parseInt() method
int numID = Integer.parseInt(String.valueOf(lentoID.charAt(2)));
if (lentoFinnair) {
switch(numID) {
case 1:
lentoTyyppi = "Kaukolento";
break;
case 7:
lentoTyyppi = "Venäjän lento";
break;
default:
if (numID >= 2 && numID <= 6) {
lentoTyyppi = "Kotimaan lento";
} else {
System.err.println("Tuntematon lentotyyppi");
System.exit(1);
}
break;
}
}
System.out.println(lentoTyyppi);
} catch (NumberFormatException e) {
System.err.println("Lennon numero-osan alku ei ole oikein. Tarkista ja yritä uudelleen");
System.exit(1);
}
} else {
System.out.println("Ei ole Finnairin lento");
}
}
}