Tin học Viết chương trình bằng Pascal

minhtam8a2@gmail.com

Học sinh gương mẫu
Thành viên
12 Tháng hai 2016
521
1
2,580
326
17
Bình Định
THCS Ghềnh Ráng
[TẶNG BẠN] TRỌN BỘ Bí kíp học tốt 08 môn
Chắc suất Đại học top - Giữ chỗ ngay!!

ĐĂNG BÀI NGAY để cùng trao đổi với các thành viên siêu nhiệt tình & dễ thương trên diễn đàn.

Một cụ già đã hơn 100 tuổi và rất yêu môn Toán. Khi được phỏng vấn về tuổi của mình, cụ cho biết:
"Nếu thêm ngày sinh của tôi vào tổng các bình phương các chữ số tuổi tôi thì được kết quả chính là tuổi của tôi".
Anh phóng viên loay hoay chưa biết tính tuổi của cụ thế nào. Em hãy lập trình tìm ra tuổi của cụ già..
Chú ý: ngày sinh của một con người chỉ rơi vào khoảng từ 1 đến 31
 

Dương Nhạt Nhẽo

Học sinh tiêu biểu
Thành viên
7 Tháng tám 2018
2,945
7,443
621
19
Lào Cai
Trường THPT số 1 Lào Cai
Một cụ già đã hơn 100 tuổi và rất yêu môn Toán. Khi được phỏng vấn về tuổi của mình, cụ cho biết:
"Nếu thêm ngày sinh của tôi vào tổng các bình phương các chữ số tuổi tôi thì được kết quả chính là tuổi của tôi".
Anh phóng viên loay hoay chưa biết tính tuổi của cụ thế nào. Em hãy lập trình tìm ra tuổi của cụ già..
Chú ý: ngày sinh của một con người chỉ rơi vào khoảng từ 1 đến 31
HTML:
Program BTT;
Uses crt;
Var n,x,y: longint;

Function ktra(n,x,y: longint): boolean;
Begin
        If n+1+sqr(x)+sqr(y)=100+10*x+y then exit(true);
                                             exit(false);
End;

Begin
        Clrscr;
        For n:=1 to 31 do
                For x:=0 to 9 do
                        For y:=0 to 9 do
                                If ktra(n,x,y) then Writeln('Tuoi la: ',1,x,y);
        Readln
Pascal nhé
 

trà nguyễn hữu nghĩa

Cựu Mod Vật Lí |Cây bút Thơ|Thần tượng VH
Thành viên
14 Tháng năm 2017
3,974
7,627
744
22
Phú Yên
Trường THPT Lương Văn Chánh
HTML:
Program BTT;
Uses crt;
Var n,x,y: longint;

Function ktra(n,x,y: longint): boolean;
Begin
        If n+1+sqr(x)+sqr(y)=100+10*x+y then exit(true);
                                             exit(false);
End;

Begin
        Clrscr;
        For n:=1 to 31 do
                For x:=0 to 9 do
                        For y:=0 to 9 do
                                If ktra(n,x,y) then Writeln('Tuoi la: ',1,x,y);
        Readln
Pascal nhé
Có một chút thú vị ở đây nè. Bạn mặc định chữ số đầu tiên trong tuổi của cụ già là 1. Điều này đúng trong thực tế nhưng mà trong bài tập thì...chưa chắc.
Nếu mắc định chữ số đầu tiên là 1 rồi thì sao phải duyệt n từ 1 đến 31 vì 15^2 = 255 > 199 rồi :D
Nếu muốn xét tất cả trường hợp thì phải xét cho đủ, còn xét theo thực tế thì giảm số vòng lặp n thành 1 -> 14 luôn nhỉ :D
 

Alex Pier

Học sinh
Thành viên
11 Tháng bảy 2021
67
184
21
Bình Định
F4F
HTML:
Program BTT;
Uses crt;
Var n,x,y: longint;

Function ktra(n,x,y: longint): boolean;
Begin
        If n+1+sqr(x)+sqr(y)=100+10*x+y then exit(true);
                                             exit(false);
End;

Begin
        Clrscr;
        For n:=1 to 31 do
                For x:=0 to 9 do
                        For y:=0 to 9 do
                                If ktra(n,x,y) then Writeln('Tuoi la: ',1,x,y);
        Readln
Pascal nhé
Một cụ già đã hơn 100 tuổi và rất yêu môn Toán. Khi được phỏng vấn về tuổi của mình, cụ cho biết:
"Nếu thêm ngày sinh của tôi vào tổng các bình phương các chữ số tuổi tôi thì được kết quả chính là tuổi của tôi".
Anh phóng viên loay hoay chưa biết tính tuổi của cụ thế nào. Em hãy lập trình tìm ra tuổi của cụ già..

Chú ý: ngày sinh của một con người chỉ rơi vào khoảng từ 1 đến 31
upload_2021-8-9_10-6-27.png
Mình làm như vậy sẽ dễ hiểu hơn nhiều nè!
Ta giả sử kí hiệu tuổi của cụ là [tex]\overline{abc}[/tex] trong đó a khác 0 và ngày sinh của cụ nằm trong khoảng từ 1 đến 31. Thì khi này ta có: [tex]100a+10b+c=a^{2}+b^{2}+c^{2}+ ngaysinh[/tex] là coi như áp dụng đúng theo đề bài. Cho thêm vòng lặp thích hợp sẽ làm được thôi.
@minhtam8a2@gmail.com mới học có lớp 8 căn bản à, làm như trên chắc là sẽ khá khó hiểu với em nó đấy :D
 

Attachments

  • upload_2021-8-9_10-6-19.png
    upload_2021-8-9_10-6-19.png
    58.6 KB · Đọc: 18

Dương Nhạt Nhẽo

Học sinh tiêu biểu
Thành viên
7 Tháng tám 2018
2,945
7,443
621
19
Lào Cai
Trường THPT số 1 Lào Cai
View attachment 179388
Mình làm như vậy sẽ dễ hiểu hơn nhiều nè!
Ta giả sử kí hiệu tuổi của cụ là [tex]\overline{abc}[/tex] trong đó a khác 0 và ngày sinh của cụ nằm trong khoảng từ 1 đến 31. Thì khi này ta có: [tex]100a+10b+c=a^{2}+b^{2}+c^{2}+ ngaysinh[/tex] là coi như áp dụng đúng theo đề bài. Cho thêm vòng lặp thích hợp sẽ làm được thôi.
@minhtam8a2@gmail.com mới học có lớp 8 căn bản à, làm như trên chắc là sẽ khá khó hiểu với em nó đấy :D
Em thấy nếu học căn bản chưa có những dạng này. Với cả e cũng đã trải qua học kỳ pascal toàn bài dễ hơn như thế này. Bạn này hình như học chuyên thì phải. E hồi trước học nâng cao nên biết một ít nên mãi mới bỏ
 

Alex Pier

Học sinh
Thành viên
11 Tháng bảy 2021
67
184
21
Bình Định
F4F
Em thấy nếu học căn bản chưa có những dạng này. Với cả e cũng đã trải qua học kỳ pascal toàn bài dễ hơn như thế này. Bạn này hình như học chuyên thì phải. E hồi trước học nâng cao nên biết một ít nên mãi mới bỏ
Mình thì không chắc lắm về vụ thi chuyên ở Việt Nam, nhưng mình cũng không nghĩ là đề chuyên, đây chắc chỉ là một bài kha khá để kiểm tra độ thông hiểu và mức độ vận dụng bài đã học và ít xíu kiến thức toán thôi.
 
  • Like
Reactions: Duy Quang Vũ 2007
Top Bottom