1. Trang chủ
  2. » Công Nghệ Thông Tin

Môn: Lập trình java 1 MOB1013

22 2K 5
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 654,83 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

I-Assignment full package ASSIGNMENT; import java.util.Scanner; //import gói để sử dụng các phương thức scanner public class Assigment { //Class chính trong chương trình Scanner vl = ne

Trang 1

Giáo viên: Nguyễn Văn Định

Đà Nẵng, 2/2019

Trang 3

Môn học: LẬP TRÌNH JAVA 1

Mã môn học: MOB1201

Họ và tên sinh viên: Hồ Ngọc Dũng

Mã số sinh viên: PD02792

GVHD: Nguyễn Văn Định

Ngày hoàn thành: Tháng 02 Năm 2019

Đánh

giá:………

………

……… ………

………

……… ………

………

………

……… ………

………

……… ………

………

………

………

………

………

FPT Polytechnic Đà Nẵng

PROJECT: QUẢN LÝ SINH VIÊN SINH VIÊN: Hồ Ngọc Dũng LỚP: PT14308 - MOB

Trang 4

I-Assignment full

package ASSIGNMENT;

import java.util.Scanner;

//import gói để sử dụng các phương thức scanner

public class Assigment { //Class chính trong chương trình

Scanner vl = new Scanner(System.in);//Tạo đối tượng Scanner

public Sinhvien[] svien;//Khai báo mảng chưa có phần tử

public class Sinhvien {

public static void main(String[] args) {

System.out.println("\t\t\t*ĐỂ THỰC THI CÁC CHỨC NĂNG VUI LÒNG NHẬP THÔNG TIN TRƯỚC! ");

Trang 5

Assigment obj = new Assigment();//tạo đối tượng "obj"trong class Assigment

Sinhvien[] hvien = obj.nhapHV();

obj.svien = hvien;

System.out.println(" -");

obj.menu();

}

public Sinhvien[] nhapHV() {

System.out.println("*Nhập danh sách học viên.");

Sinhvien[] svien = new Sinhvien[5];//Khởi tạo mảng svien với n phần tử

for (int i = 0; i < svien.length; i++) { //Khỏi chạy vòng lặp for cho các phần tử đầu vào Sinhvien sivn = new Sinhvien(); //Tạo đối tượng "sivn"

Scanner lc = new Scanner(System.in); //Tạo đối tượng Scanner để lấy dữ liêu từ bàn phím

System.out.println("~Sinh viên: " + (i + 1));//Xuất ra dòng Thông báo sinh viên thứ n System.out.println("Nhập mã số sinh viên: "); //Yêu cầu nhập MSSV từ bàn phím

String masosv = lc.nextLine();

while (!masosv.matches("[0-9]{4}")) {

//Sử dụng phương thức matches để xác định chuỗi nhập vào có phù hợp với biểu thức(regex) của MSSV hay không

System.err.println("MSSV vừa nhập không hợp lệ! Vui lòng nhập lại !");

//sử dụng điều kiện phủ định dùng toán tử "!" để xuất ra thông báo sai, nếu đúng thì tiếp tục masosv = lc.nextLine();//Vòng lặp while sẽ tiêp tục cho đến khi dữ liệu nhập đúng

Trang 7

double diem = lc.nextDouble();

while (diem < 0 && diem > 10) {//Điều kiện của điểm là 0>=diem>=10 System.err.println("Điểm vừa nhập không hợp lệ! Vui lòng nhập lại"); diem = Double.parseDouble(lc.nextLine());

for (int i = 0; i < svien.length; i++) {

//Vòng lặp for sử dụng câu điều kiện if để phân loại học lực

Sinhvien sivn = svien[i];

Trang 8

}

}

return svien;

}

public void menu() { //Danh sách tổng hợp các chức năng trong chương trình

while (true) {//Vòng lặp sẽ chạy liên tục mỗi khi thực hiện xong 1 chức năng

System.out.println(ANSI_PURPLE_BACKGROUND + "||1&2.Nhập và Xuất danh sách

học viên Thông tin xuất gồm: họ và tên, điểm, email và học lực ||");

System.out.println(ANSI_PURPLE_BACKGROUND + "||3 Tìm kiếm học viên theo

khoảng điểm nhập từ bàn phím ||");

System.out.println(ANSI_PURPLE_BACKGROUND + "4.Tìm kiếm học viên theo học

lực nhập từ bàn phím ||");

System.out.println(ANSI_PURPLE_BACKGROUND + "||5.Tìm học viên theo mã số và

cập nhật thông tin học viên ||");

System.out.println(ANSI_PURPLE_BACKGROUND + "||6.Sắp xếp học viên theo điểm

Trang 9

System.out.println(ANSI_PURPLE_BACKGROUND + "||9 Xuất danh sách học viên có điểm trên điểm trung bình của lớp ||");

System.out.println(ANSI_PURPLE_BACKGROUND + "||10.Tổng hợp số học viên theo học lực ||");

int choice = lc.nextInt();

switch (choice) {//Sử dụng câu lệnh rẽ nhánh để tạo danh sách các chức năng riêng biệt case 1:

xuatDS();//Phương thức sẽ gọi 1 trong 10 chức năng (case) này

Trang 10

default://case này sẽ thực hiện khi không một case nào trên có giá trị true

System.err.println("Chức năng vừa nhập không tồn tại \n Vui lòng nhập lại !");

Trang 11

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng xuất danh sách học viên) System.out.print("\tHọ tên \t| Điểm | Email \t\t |\t Học lực\n");

for (int i = 0; i < svien.length; i++) {

Sinhvien sivn = svien[i];

System.out.format("%20s %10.1f %20s %15s\n", sivn.hoten, sivn.diem, sivn.email, sivn.hocluc);

}

}

public void timKiemTimHocVienTheoHocLuc() {

////Phương thức được gọi từ các case qua câu lệnh switch(chức năng tìm kiếm học viên theo học lực)

System.out.println("3.Tìm kiếm học viên theo học lực nhập từ bàn phím");

System.out.print("nhập học lực(không dấu): ");

String hl = vl.nextLine();

for (int i = 0; i < svien.length; i++) {

Sinhvien sivn = svien[i];

if (hl.equalsIgnoreCase("yeu")) {

System.out.println("Họ và tên: " + sivn.hoten + " Học lực: " + sivn.hocluc);

} else if (hl.equalsIgnoreCase("Trung binh")) {

System.out.println("Họ và tên: " + sivn.hoten + " Học lực: " + sivn.hocluc);

} else if (hl.equalsIgnoreCase("Kha")) {

System.out.println("Họ và tên: " + sivn.hoten + " Học lực: " + sivn.hocluc);

} else if (hl.equalsIgnoreCase("Gioi")) {

System.out.println("Họ và tên: " + sivn.hoten + " Học lực: " + sivn.hocluc);

} else if (hl.equalsIgnoreCase("Xuat sac")) {

Trang 12

System.out.println("Họ và tên: " + sivn.hoten + " Học lực: " + sivn.hocluc);

}

}

}

public void timKiemHocVienTheoKhoangDiem() {

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng tìm kiếm học viên theo khoảng điểm)

System.out.println("4.Tìm kiếm học viên theo khoảng điểm nhập từ bàn phím: ");

System.out.println("*Nhập điểm tối thiểu: ");

Double diemtt = Double.parseDouble(vl.nextLine());

System.out.println("*Nhập điểm tối đa: ");

Double diemtd = Double.parseDouble(vl.nextLine());

for (int i = 0; i < svien.length; i++) {

Sinhvien sivn = svien[i];

if (diemtt <= sivn.diem && sivn.diem <= diemtd) {

System.out.println("Họ tên: " + sivn.hoten + "\t" + "Điểm: " + sivn.masosv);

Trang 13

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng tìm kiếm học viên theo MSSV)

System.out.println("5.Tìm học viên theo mã số và cập nhật thông tin học viên");

System.out.println("Nhập MSSV: ");

String mso = vl.nextLine();

for (int i = 0; i < svien.length; i++) {

if (svien[i].masosv.equals(mso)) {

Sinhvien ma = svien[i];

System.out.format("Họ tên: %10s\n", ma.hoten);

Sinhvien sivn = svien[i];

}

}

}

public void sapXepHocVienTheoDiem() {

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng sắp sếp học viên theo điểm) System.out.println("6.Sắp xếp học viên theo điểm");

for (int i = 0; i < svien.length; i++) {

for (int j = i + 1; j < svien.length; j++) {

Trang 14

for (int i = 0; i < svien.length; i++) {

Sinhvien hten = svien[i];

Sinhvien point = svien[i];

System.out.format("Họ tên: %10s Điểm: %10.1f", hten.hoten, point.diem);

}

}

public void Xuat5hociviendiemcao() {

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng Xuất 5 học viên có điểm cao nhất)

System.out.println("5 học viên có điểm cao nhất");

for (int i = 0; i < svien.length; i++) {

Trang 15

public void diemTBcualop() {

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng tính điểm trung bình của lớp) System.out.println("8.Điểm trung bình của cả lớp");

Trang 16

System.out.printf("Điểm trung bình của lớp = %.0f ", tong / dem);

}

public void DShocviendiemtrenTB() {

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng xuất danh sách học viên trên điểm trung bình

System.out.println("9.Học viên có điểm trên điểm trung bình của lớp");

Trang 17

//Phương thức được gọi từ các case qua câu lệnh switch(chức năng Tổng hợp số học viên theo học lực

System.out.println("10.Tổng hợp số học viên theo học lực");

int biendem = 0, yeu = 0, kha = 0, tbinh = 0, gioi = 0, xsac = 0;

for (int i = 0; i < svien.length; i++) {

System.out.println("Số sinh viên có học lực yếu: " + yeu);

System.out.println("Số sinh viên có học lực khá: " + kha);

System.out.println("Số sinh viên có học lực trung bình: " + tbinh);

System.out.println("Số sinh viên có học lực giỏi: " + gioi);

System.out.println("Số sinh viên có học lực suất sắc: " + xsac);

Trang 18

}

}

Trang 19

II-Kết quả in ra

Trang 20

1.Chức năng 1&2

Trang 22

9.Chức năng 10

Ngày đăng: 05/03/2019, 21:42

TỪ KHÓA LIÊN QUAN

w