Ôn tập: phép tính đơn giản
Thuộc phần Kiến thức cơ bản trong hành trình Dart của Coddy. Bài học 21 trên 94.
Thử thách
DễBạn đang phát triển một bộ tính điểm đơn giản cho trò chơi, theo dõi tiến trình của người chơi qua các cấp độ khác nhau. Hãy làm theo các bước sau để tạo chương trình:
Bước 1: Khởi tạo biến
- Tạo một biến số nguyên có tên
playerScorevà đặt giá trị là 100 - Tạo một biến số nguyên có tên
currentLevelvà đặt giá trị là 5
Bước 2: Tính các chỉ số của trò chơi
Tính và lưu các giá trị sau vào biến mới:
- Điểm thưởng cấp độ: Nhân cấp độ hiện tại với 20 và lưu kết quả vào biến có tên
levelBonus - Số lượt tăng sức mạnh có thể mua: Mỗi lượt tăng sức mạnh có giá 25 điểm. Dùng phép chia lấy phần nguyên (
~/) để tìm số lượt tăng sức mạnh mà người chơi có thể mua bằng điểm hiện có. Lưu giá trị này vàopowerUps - Điểm còn lại: Dùng toán tử modulo (
%) để tìm số điểm còn lại sau khi mua tất cả lượt tăng sức mạnh có thể mua. Lưu giá trị này vàoremainingPoints
Bước 3: Cập nhật điểm và cấp độ của người chơi
- Cộng điểm thưởng cấp độ vào điểm của người chơi bằng toán tử
+= - Tăng cấp độ hiện tại lên 1 bằng toán tử tăng tiền tố (
++currentLevel) và lưu giá trị mới vào biến có tênnewLevel - Trừ 15 điểm khỏi điểm của người chơi bằng toán tử
-= - Nhân đôi điểm của người chơi bằng cách nhân với 2 bằng toán tử
*=
Bước 4: Hiển thị kết quả
Các câu lệnh in ra đã có sẵn trong code. Không chỉnh sửa chúng. Bạn cần khai báo các biến còn thiếu và thực hiện các phép tính ở trên để đầu ra khớp chính xác.
Lưu ý: Một trong các câu lệnh in ra có sẵn hiển thị playerScore / 1.5, thực hiện phép chia thông thường (không phải phép chia lấy phần nguyên) và cho ra kết quả thập phân. Đây là kết quả mong đợi: đầu ra của dòng đó sẽ là 246.66666666666666.
Quan trọng: Hãy thực hiện các phép tính theo đúng thứ tự nêu trên, vì mỗi bước đều ảnh hưởng đến bước tiếp theo.
Tự làm thử
void main() {
// Khởi tạo điểm và cấp độ của người chơi
int playerScore = ?;
int currentLevel = ?;
// Tính điểm thưởng cấp độ, vật phẩm tăng sức mạnh và số điểm còn lại
int levelBonus = ?;
int powerUps = ?;
int remainingPoints = ?;
// Cộng điểm thưởng cấp độ vào điểm số bằng toán tử gán rút gọn
?;
// Tăng cấp độ thêm 1 và lưu cấp độ mới
int newLevel = ?;
// Giảm điểm số đi 15 bằng toán tử gán rút gọn
playerScore ?;
// Tính điểm cuối cùng (nhân với 2)
playerScore ?;
// In ra kết quả
print('Initial score: 100');
print('Level bonus: $levelBonus');
print('Available power-ups: $powerUps');
print('Remaining points: $remainingPoints');
print('New level: $newLevel');
print('Score after bonus and penalty: ${playerScore / 1.5}');
print('Final score with multiplier: $playerScore');
}Tất cả bài học trong Kiến thức cơ bản
4Các toán tử phần 2
Toán tử so sánhPhép AND logicPhép OR logicPhép NOT logicToán tử kiểm tra kiểuÔn tập: So sánh10Bộ sưu tập: kiến thức cơ bản về ánh xạ
Ánh xạ là gì?Tạo ánh xạTruy cập giá trị bằng khóaCặp khóa và giá trịLấy kích thước ánh xạLấy các khóaLấy các giá trịKiểm tra khóa có tồn tại không13An toàn với giá trị null chuyên sâu
Tìm hiểu giá trị nullKiểu dữ liệu nullableKiểu dữ liệu non-nullableToán tử khẳng định non-nullKhởi tạo muộnÔn tập: xử lý null an toàn16Thử thách về kiến thức cơ bản
Thử thách: Danh sách phép tínhThử thách: Tính tổng các sốThử thách: Tìm tích2Biến và kiểu dữ liệu cơ bản
Biến là gì?ChuỗiSố nguyên (int)Số thực (double)Giá trị logic (bool)Suy luận kiểu dữ liệu với 'var'Biến finalBiến hằng sốQuy tắc đặt tênAn toàn với null cơ bảnÔn tập: khai báo biến8Luồng điều khiển: vòng lặp
Vòng lặp forVòng lặp whileVòng lặp do-whileDùng break trong vòng lặpDùng continue trong vòng lặpÔn tập: lặp lại code11Hàm cơ bản
Hàm là gì?Định nghĩa hàm cơ bảnGọi hàmHàm có tham sốHàm trả về giá trịTừ khóa 'void'Cú pháp mũi tênÔn tập: hàm đơn giản14Chuyển đổi kiểu dữ liệu
Chuyển chuỗi thành số nguyênChuyển chuỗi thành số thựcChuyển số thành chuỗiXử lý lỗi chuyển đổi3Các toán tử, phần 1
Toán tử số họcPhép chia số nguyênToán tử moduloToán tử tăng và giảmToán tử gán rút gọnÔn tập: phép tính đơn giản6Luồng điều khiển: ra quyết định
Câu lệnh 'if'Câu lệnh 'else'Câu lệnh 'else if'Ôn tập: quyết định đơn giảnCâu lệnh 'if' lồng nhauCâu lệnh 'switch'9Cơ bản về danh sách trong Collections
Danh sách là gì?Tạo danh sáchTruy cập theo chỉ sốLấy độ dài danh sáchThêm phần tửXóa phần tửKiểm tra danh sách có rỗng khôngDuyệt qua danh sáchTự luyện tập: Trình biên dịch Dart online