Java program O studentach

0

Czesc mam Problem z Programem program jak niżej

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.InputMismatchException;
import java.util.Scanner;
import java.io.IOException;



public class Osoba {
	

	String imie;
	String nazwisko;
	int wiek;
	double[] oceny;

	void initOceny() {
		oceny = new double[10];
		for (int i = 0; i < 10; i++) {
			oceny[i] = 0;
		}
	}

	void wyswietlOceny() {
		System.out.print("Oceny: ");
		for (int i = 0; i < 10; i++) {
			System.out.print(oceny[i] + ", ");
		}
		System.out.print("\n");
	}

	public Osoba() {
		initOceny();
	}

	public Osoba(String imie, String nazwisko) {
		this.imie = imie;
		this.nazwisko = nazwisko;
		initOceny();
	}

	public Osoba(String imie, String nazwisko, int wiek) {
		this.imie = imie;
		this.nazwisko = nazwisko;
		this.wiek = wiek;
		initOceny();
	}

	void wyswietl() {
		System.out.println(imie + " " + nazwisko + ", lat: " + wiek);

	}

	void ustawImie(String noweImie) {
		imie = noweImie;
	}

	public static void main(String[] args) throws FileNotFoundException {
		Osoba student = new Osoba();
		student.imie = "Jaś";
		student.nazwisko = "Kowalski";

		Osoba[] klasa = new Osoba[3];
		klasa[0] = new Osoba("Jaś", "Kowalski", 22);
		klasa[1] = new Osoba("Krzyś", "Nowak", 23);
		klasa[2] = new Osoba("Jaś", "Jakiśtam", 21);

		for (int i = 0; i < klasa.length; i++) {
			klasa[i] = new Osoba("Jaś", "Kowalski", i);

			Scanner odczyt = new Scanner(System.in); // obiekt do odebrania
														// danych od użytkownika

			String imie = null;
			String nazwisko = null;
			int liczba = 0;
			try {
				System.out.println("Podaj imie :"); // wyświetlamy napis
				imie = odczyt.nextLine();

				System.out.println("Podaj nazwisko :"); // wyświetlamy napis
				nazwisko = odczyt.nextLine();

				System.out.println("Podaj wiek :"); // wyświetlamy napis
				liczba = odczyt.nextInt();

				for (int x = 0; x <= 10; x++) {
					int ocena;
					System.out.println("Podaj Ocene :"); // wyświetlamy napis
					liczba = odczyt.nextInt();
				}
			} catch (InputMismatchException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

			klasa[i].imie = imie;
			klasa[i].nazwisko = nazwisko;
			klasa[i].wiek = liczba;
		}

		// / Zapis do pliku
		try {
			PrintWriter zapis = new PrintWriter("plik33.txt");

			for (int i = 0; i < klasa.length; i++) {
				klasa[i].wyswietl();
				zapis.println(klasa[i].imie + " " + klasa[i].nazwisko + " "
						+ klasa[i].wiek);
			}
			zapis.close();
		} catch (InputMismatchException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}

		// odczyt z pliku //////////////////////////////////////////////////////

		try {
			File file = new File("plik33.txt");
			Scanner dane = new Scanner(file);
			String napis;

			int petla = klasa.length;
			// int petla = dane.nextInt();
			for (int i = 0; i < petla; i++) {
				napis = dane.nextLine();
				System.out.println(napis);
			}
		} catch (InputMismatchException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		// /////////////////////////////////////////////////////////////////////
		klasa[0].wyswietl();
		klasa[0].wyswietlOceny();
		klasa[1].wyswietl();
		klasa[1].wyswietlOceny();

		for (int i = 0; i < klasa.length; i++) {
			klasa[i].wyswietl();
			klasa[i].wyswietlOceny();
		}
	}

}

Wiec tak nie do konca działa mi odczytywanie i zapis do pliku poza tym wszystko raczej ok:)
Kolejna sprawa jest swtorzenie menu do tego pliku i tu tez juz napisałem kod tylko tyle ze jak daje case to wywala mi błedy nie moge sobie z tym poradzic;/

0

Polecenie zadania i Kod menu
Napisać program obsługujący grupę studentów, z uwzględnieniem

  • możliwość dodania do 10 studentów (wprowadzenia danych z klawiatury)

  • możliwość dodania po 10 ocen studenta (tablica 1-wymiarowa, wprowadzenie danych z klawiatury)

  • wyznaczenie średniej oceny dla każdego studenta (metody klasy Student) - wyznaczenie średniej oceny dla całej klasy

  • przeglądanie studentów

  • menu tekstowe

  • zapis i odczyt danych z pliku

  • obsługa wyjątków (try - catch)

import java.io.IOException;
import java.util.InputMismatchException;
import java.util.Scanner;


public class Menu {
	
		 
	    public static int suma(int a, int b){
	        return a+b;
	    }
	 
	    public static double sinus(int n){
	        return Math.sin(n);
	    }
	 
	    public static void informacja(){
	        System.out.println("To jest przyk�ad wy�wietlania menu z "
	                                + "zastosowaniem instrukji switch.");
	    }
	 
	    public static int menu(){
	        System.out.println();
	        System.out.println("     ****************************************");
	        System.out.println("     *                 MENU                 *");
	        System.out.println("     ****************************************");
	        System.out.println("     1. Wczytywanie Pliku");
	        System.out.println("     2. Wpisywanie Imienia i Nazwiska");
	        System.out.println("     3. Informacja");
	        System.out.println("     0. Koniec");
	 
	        Scanner in = new Scanner(System.in);
	        int w =3;
	        try{
	        w = in.nextInt();
	        }
	        catch(InputMismatchException e)
	        {
	        	System.out.println("Podaj liczb�");
	        }
	        return w;
	 
	        
	    }
	 
	    public static void main(String[] args) throws IOException {
	        Scanner in = new Scanner(System.in);
	 
	        int wybor = menu();
	 
	        while(wybor!=0){
	            switch(wybor){
	                case 1:
	                   
	 
	                    break;
	 
	                case 2:
	                 
	                    break;
	 
	                case 3:
	                    informacja();
	 
	            }
	 
	            System.out.println("\nWci�nij Enter, aby kontynuowa�...");
	            System.in.read();
	 
	            wybor = menu();
	        }
	 
	 
	        System.out.println("     ****************************************");
	        System.out.println("\n     Koniec programu\n\n");
	    }
	}

code - msm

0

sory nie umiem jakos tu wklejac tego ;/

0

U mnie zapis i odczyt z pliku działa. Gdzie masz umieszczony ten plik33?

Instrukcja switch też u mnie działa bez zarzutów.

0
dejmien napisał(a):

U mnie zapis i odczyt z pliku działa. Gdzie masz umieszczony ten plik33?

Instrukcja switch też u mnie działa bez zarzutów.

U mnie tez działa juz :) macie jakies pomysły co z menu?

0

Tak jak zrobiłeś.

1 użytkowników online, w tym zalogowanych: 0, gości: 1