HomeLập trình Scratch

Bài tập về số chính phương ôn thi HSG Pascal – Minh họa bằng Scratch

Like Tweet Pin it Share Share Email
Like và share giúp mình phát triển website nhé.
  •  
  •  

Trong bài viết này mình xin đưa ra Một số bài tập Pascal về số chính phương để các bạn luyện tập. Những bài tập này được lấy từ giáo trình bồi dưỡng HSG pascal mà mình đã biên soạn sau nhiều năm giảng dạy.

Trước hết mời các bạn hãy xem thử chương trình kiểm tra số chính phương viết bằng Scratch bằng cách nhấn vào biểu tượng lá cờ sau đó làm theo hướng dẫn của chương trình dưới đây:


Ta hãy xem lại khái niệm số chính phương: “Số chính phương là số viết được dưới dạng bình phương của một số tự nhiên

 VD: 0, 1, 4, 16, 25, … là các số chính phương

Để kiểm tra xem một số tự nhiên có phải là số chính phương hay không ta chỉ cần lấy phần nguyên của căn bậc hai của nó đem bình phương lên, nếu đúng bằng số đó thì nó là số chính phương. Đơn giản vậy thôi.

Một số bài tập Pascal về số chính phương

Bài 1: Kiểm tra số chính phương

Lập trình kiểm tra xem một số n (n < 2 tỉ) có phải là số  chính phương hay không (Nhập xuất từ file hoặc bàn phím)

Chương trình kiểm tra số chính phương viết bằng Pascal

Bài 2: Đếm và tính tổng các số chính phương

Viết chương trình nhập vào một số n (n <2 tỉ), Đếm xem có bao nhiêu số chính phương chẵn và bao nhiêu số chính phương lẻ không vượt quá n.

Hướng dẫn: Bạn khởi động hai biến để đếm số chính phương lẻ và chẵn, khổi động dem_le; dem_chan bằng 0. Chẳng qua là lần lượt kiểm tra xem từ 0 đến n xem có những số nào là số chính phương hay không, nếu là số chính phương thì xem chẵn hay lẻ để cộng dồn vào biến tương ứng.

Bài 3: Lọc các số chính phương

3.1. Cho một dãy số nguyên, em hãy viết chương trình lọc ra những số chính phương trong dãy số đó sau đó sắp xếp các số chính phương đó từ nhỏ đến lớn và xuất ra kết quả.

3.2. Tìm ra số chính phương nhỏ nhất (lớn nhất) trong dãy và xuất ra số đó cùng vị trí của nó trong mảng ban đầu.

3.3. Tỉa bỏ tất cả các số chính phương trong dãy và xuất ra mảng sau khi đã tỉa.

Gợi ý: Với các bài tập 3.1 và 3.3 các bạn có thể sử dụng kỹ thuật mảng đánh dấu để xử lý

Các bạn hãy cùng code và chia sẻ nào!

 

Comments (0)

Trả lời

Your email address will not be published. Required fields are marked *