Cách khai báo, truy xuất, sử dụng kiểu dữ liệu cấu trúc
Mình có bài toán quản lý sinh viên như sau:
Khai báo kiểu dữ liệu SinhVien có các trường họ tên, giới tính, tuổi, địa chỉ, điểm (toán, lý, hóa) và điểm trung bình.
1.Nhập vào danh sách N sinh viên
2. Xuất danh sách N sinh viên
3. Tính điểm trung bình cho N sinh viên
3. Sắp xếp N sinh viên theo thứ tự tăng dần theo điểm trung bình
4. Tìm sinh viên có tên là “Bui Van Cong” hộ khẩu “Nam Dinh”
5. Xếp loại N sinh viên
6. Đưa ra thông tin sinh viên có điểm trung bình cao nhất ở “Nam Dinh”
Viết chương trình dạng menu cho phép sử dụng các tính năng trên
Tham khảo:
https://www.facebook.com/hhmacademy.edu.vn
https://hhmacademy.vn/tin-tuc/cach-dinh-nghia-khai-bao-truy-xuat-su-dung-kieu-du-lieu-cau-truc
Lập trình nhập vào hai xâu s và x(len(x)<len (s). Kiểm tra và thông báo ra màn hình số lần xuất hiện của x trong s. Nếu không xuất hiện thì thông báo không(Viết bằng ngôn ngữ python)
Hãy nhập một xâu kí tự từ bàn phím gồm các chữ cái viết thường, các chữ số và các kí tự đặc biệt khác, cho biết xâu vừa nhập có bao nhiêu kí tự chữ cái, bao nhiêu kí tự chữ số, bao nhiêu kí tự khác
Ys và NN đang chơi 1 trò chơi có tên gọi là TowerDiv. Trò chơi này có luật như sau
Ban đầu sẽ có N tòa tháp, mỗi tòa tháp ban đầu đều có độ cao là M
Tại mỗi lượt chơi luân phiên, người chơi có thể chia đều 1 tòa tháp bất kỳ trong N tòa tháp thành các phần có chiều cao là nguyên dương bằng nhau (ít nhất chia ra làm 2 phần trở lên), Người chơi phải lấy ra tất cả các phần phía trên, chỉ chừa lại duy nhất 1 phần ở dưới đáy, lúc này chiều cao của tòa tháp sẽ giảm đi 1 lượng đúng với tổng chiều cao của số phần đã lấy ra.
Ví dụ, chiều cao hiện tại của tòa tháp được Ys chọn đang là 6, Ys có thể chia tòa tháp làm 3 phần, mỗi phần có kích thước là 2, Theo quy định, Ys phải lấy đi 2 phần trên cùng và chỉ giữ lại 1 phần dưới đáy. Vì vậy chiều cao của tòa tháp hiện tại sẽ còn là 2.
Trò chơi chỉ kết thúc khi có 1 người không thể thực hiện được bước ở trên như đã quy định, và người đó sẽ thua.
Vì Ys muốn nhường NN nên để cho NN đi trước. Giả sử 2 người đều chơi tối ưu, hãy xác định người thắng cuộc.
Input:
- Dòng đầu tiên chứa 1 số T là số bộ test (T<=100)
- T dòng tiếp theo, mỗi dòng chứa lần lượt 2 số N và M (N, M<=106)
Output:
- Tương ứng mỗi bộ test, in ra 1 nếu NN thắng, in ra 2 nếu Ys thắng.
Ví dụ
Input:
2
2 2
1 4
Output:
2
1
Giải thích:
Ở test 1, n=2,m=2
- Lượt đầu tiên, NN có thể chọn 1 trong 2 tòa tháp và chia nó ra làm 2 và giữ lại phần đáy.
Đương nhiên, dù chọn tòa tháp nào thì cũng sẽ còn lại 1 tòa tháp có chiều cao là 2.
Lúc này chiều cao 2 tòa tháp lần lượt sẽ là: 1 2
- Lượt tiếp theo, Ys chỉ cần chia tòa tháp còn lại có chiều cao 2 đó ra làm 2 và giữ lại phần đáy.
Lúc này chiều cao của 2 tòa tháp là : 1 1
- Lượt thứ 3, NN không thể chia được tòa tháp nào bởi vì cả 2 đều đã bằng 1.
Vì vậy người chiến thắng là Ys.
Viết ra chương trình nhập vào số nguyên a. In ra màn hình bình phương của a
* Làm trong python ạ!
giúp mình câu 4 với ạ
Cho dãy số a1, a2, a3, ... được định nghĩa như sau:
a1 = a2 = 1; an+2 = an+1 + an với mọi n N
*
.
Yêu cầu: Cho trước một số nguyên dương k (10 k 1016). Hãy tìm 2 chữ số tận cùng của số ak
trong dãy số trên.
Dữ liệu vào: File văn bản CSTC.INP chỉ có một số nguyên dương k (10 k 1016).
Dữ liệu ra: File văn bản CSTC.OUT ghi ra 2 chữ số tận cùng của số ak trong dãy số được định
nghĩa như trên.
Đố cả web làm dc:))))
Viết thuật toán bằng 2 cách:
+ Tính tổng các số: 2
+ Số lượng các phân tử bằng 0