Object Oriented Programming

Bài 3: Bài tập về mảng

Bài tập 3.1: In số chẵn hay lẻ

Tạo class EvenOdd

Nhập vào số nguyên bất kỳ, cho biết số vừa nhập là số chẵn hay số lẻ

InputOutput
13Số lẻ
28Số chẵn

Bài tập 3.2: Tính số ngày trong tháng

Nhập vào một tháng bất kỳ, in ra kết quả cho biết tháng đó có bao nhiêu ngày (bỏ qua năm nhuận)

Số ngày trong tháng313028
Tháng135781012469112

Bài 3.3: Tính trung vị

Tạo class Median

Nhập vào một mảng tăng dần, tính giá trị trung vị Median

Ví dụ

Input Ouput
[1, 3, 4, 5, 6, 8, 9, 10] 5.5
[1, 3, 4, 5, 6, 8, 9, 10, 11] 6

Bài tập 3.4: Trò chơi bao búa kéo

Tạo class RockPaperScissors

Viết chương trình game trò chơi oẳn tù tì cho người dùng chơi với máy tính theo qui tắc sau

Bài tập 3.5: Lịch can Chi

Tạo class Calendar

Một số nước phương Đông, trong đó có Việt Nam, gọi tên năm âm lịch bằng cách ghép tên của một trong 10 can (theo thứ tự là Giáp, Ất, Bính, Đinh, Mậu, Kỷ, Canh, Tân, Nhâm, Quý) với tên của một trong 12 chi (theo thứ tự là Tỷ, Sửu, Dần, Mão, Thìn, Tỵ, Ngọ, Mùi, Thân, Dậu, Tuất, Hợi)

Viết chương trình nhập vào một năm bất kỳ, in ra tên của năm đó theo âm lịch

Input Output
2024 Giáp Thìn
1963 Mậu Thân

Bài tập 3.6 Tính điểm thi TEOIC

Tạo class Toeic

Viết chương trình nhập vào số câu đúng reading và listening thi TEOIC, in ra số điểm thi reading, listening và tổng điểm thi

Thang điểm TOEIC Reading
Number of correctEstimated scoreNumber of correctEstimated scoreNumber of correctEstimated scoreNumber of correctEstimated score
05251205024575370
15261255125076375
25271305225577380
310281355326078385
415291405426579390
520301455527080395
625311505627581400
730321555728082405
835331605828583410
940341655929084415
1045351706029585420
1150361756130086425
1255371806230587430
1360381856331088435
1465391906431589440
1570401956532090445
1675412006632591450
1780422056733092455
1885432106833593460
1990442156934094465
2095452207034595470
21100462257135096475
22105472307235597480
23110482357336098485
24115492407436599490
100495
Thang điểm TOEIC Listening
Number of correct answersEstimated scoreNumber of correct answersEstimated scoreNumber of correct answersEstimated scoreNumber of correct answersEstimated score
05251355026075385
115261405126576395
220271455227077400
325281505327578405
430291555428079410
535301605528580415
640311655629081420
745321705729582425
850331755830083430
955341805930584435
1060351856031085440
1165361906131586445
1270371956232087450
1375382006332588455
1480392056433089460
1585402106533590465
1690412156634091470
1795422206734592475
18100432256835093480
19105442306935594485
20110452357036095490
21115462407136596495
22120472457237097495
23125482507337598495
24130492557438099495
100495
Array
reading = [5, 5, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140, 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200, 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260, 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315, 320, 325, 330, 335, 340, 345, 350, 355, 360, 365, 370, 375, 380, 385, 390, 395, 400, 405, 410, 415, 420, 425, 430, 435, 440, 445, 450, 455, 460, 465, 470, 475, 480, 485, 490, 495]
listening = [5, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140, 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200, 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260, 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315, 320, 325, 330, 335, 340, 345, 350, 355, 360, 365, 370, 375, 380, 385, 395, 400, 405, 410, 415, 420, 425, 430, 435, 440, 445, 450, 455, 460, 465, 470, 475, 480, 485, 490, 495, 495, 495, 495, 495]

Bài tập 3.7: Z Table

Tạo class ZTable

Viết chương trình nhập vào giá trị đễ tra bảng phân phối chuẩn

InputOutput
p(Z=1.53)0.93574
Bảng tra phân phối xác suất
z+ 0.00+ 0.01+ 0.02+ 0.03+ 0.04+ 0.05+ 0.06+ 0.07+ 0.08+ 0.09
0.00.500000.503990.507980.511970.515950.519940.523920.527900.531880.53586
0.10.539830.543800.547760.551720.555670.559620.563600.567490.571420.57535
0.20.579260.583170.587060.590950.594830.598710.602570.606420.610260.61409
0.30.617910.621720.625520.629300.633070.636830.640580.644310.648030.65173
0.40.655420.659100.662760.666400.670030.673640.677240.680820.684390.68793
0.50.691460.694970.698470.701940.705400.708840.712260.715660.719040.72240
0.60.725750.729070.732370.735650.738910.742150.745370.748570.751750.75490
0.70.758040.761150.764240.767300.770350.773370.776370.779350.782300.78524
0.80.788140.791030.793890.796730.799550.802340.805110.807850.810570.81327
0.90.815940.818590.821210.823810.826390.828940.831470.833980.836460.83891
1.00.841340.843750.846140.848490.850830.853140.855430.857690.859930.86214
1.10.864330.866500.868640.870760.872860.874930.876980.879000.881000.88298
1.20.884930.886860.888770.890650.892510.894350.896170.897960.899730.90147
1.30.903200.904900.906580.908240.909880.911490.913080.914660.916210.91774
1.40.919240.920730.922200.923640.925070.926470.927850.929220.930560.93189
1.50.933190.934480.935740.936990.938220.939430.940620.941790.942950.94408
1.60.945200.946300.947380.948450.949500.950530.951540.952540.953520.95449
1.70.955430.956370.957280.958180.959070.959940.960800.961640.962460.96327
1.80.964070.964850.965620.966380.967120.967840.968560.969260.969950.97062
1.90.971280.971930.972570.973200.973810.974410.975000.975580.976150.97670
2.00.977250.977780.978310.978820.979320.979820.980300.980770.981240.98169
2.10.982140.982570.983000.983410.983820.984220.984610.985000.985370.98574
2.20.986100.986450.986790.987130.987450.987780.988090.988400.988700.98899
2.30.989280.989560.989830.990100.990360.990610.990860.991110.991340.99158
2.40.991800.992020.992240.992450.992660.992860.993050.993240.993430.99361
2.50.993790.993960.994130.994300.994460.994610.994770.994920.995060.99520
2.60.995340.995470.995600.995730.995850.995980.996090.996210.996320.99643
2.70.996530.996640.996740.996830.996930.997020.997110.997200.997280.99736
2.80.997440.997520.997600.997670.997740.997810.997880.997950.998010.99807
2.90.998130.998190.998250.998310.998360.998410.998460.998510.998560.99861
3.00.998650.998690.998740.998780.998820.998860.998890.998930.998960.99900
3.10.999030.999060.999100.999130.999160.999180.999210.999240.999260.99929
3.20.999310.999340.999360.999380.999400.999420.999440.999460.999480.99950
3.30.999520.999530.999550.999570.999580.999600.999610.999620.999640.99965
3.40.999660.999680.999690.999700.999710.999720.999730.999740.999750.99976
3.50.999770.999780.999780.999790.999800.999810.999810.999820.999830.99983
3.60.999840.999850.999850.999860.999860.999870.999870.999880.999880.99989
3.70.999890.999900.999900.999900.999910.999910.999920.999920.999920.99992
3.80.999930.999930.999930.999940.999940.999940.999940.999950.999950.99995
3.90.999950.999950.999960.999960.999960.999960.999960.999960.999970.99997
4.00.999970.999970.999970.999970.999970.999970.999980.999980.999980.99998