Tin học Ảo thuật qua màn hình với PASCAL

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,619
744
21
Phú Yên
Trường THPT Lương Văn Chánh
[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.

Code đây nha. Test đi rồi biết.
Mã:
 Program Ao_Thuat;
 uses crt;

 var n,m,i,kq,x,y: integer;
     h: string[1];

 BEGIN
      n := 1;
      kq := 0;
      clrscr;
      writeln('Ban hay nghi mot so bat ky tu 1 - 60');Delay(1000);
      write('Toi se doan so ban nghi la gi...');readln;
      repeat
            clrscr;
            Gotoxy(30,2);Write('A O  T H U A T');
            m := n;
            x := 1;
            y := 1;
            while m <= 60 do
            begin
                 for i := m to m + n-1 do
                 begin
                      inc(y);
                      if i <= 60 then
                      begin
                           gotoxy(x*4,y*2);
                           write(i);
                      end;
                      if y >= 5 then begin y := 1;inc(x);end;
                 end;
                 m := m + 2*n;
            end;
            Gotoxy(4,12);
            write('Co so ban nghi khong (c = co)? ');
            readln(h);
            if h = 'c' then inc(kq,n);
            n := n*2;
      until n > 32;
      clrscr;
      if not (kq in [1..60]) then write('Vui long kiem tra lai!')
      else write('Co phai so ban nghi la: ',kq);
      readln;
 END.
 

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,619
744
21
Phú Yên
Trường THPT Lương Văn Chánh
À quên nữa. Test thử cho các bạn biết chứ không thì lại bảo là "điêu" :D
Giả sử mình nghĩ số 13 (số nguyên tố cho đệp)
upload_2018-7-21_21-47-23.png
Cái này có số 13

upload_2018-7-21_21-47-41.png
cái này không

upload_2018-7-21_21-48-40.png
cái này có

upload_2018-7-21_21-49-9.png
cái này có

upload_2018-7-21_21-49-24.png
cái này thì không

upload_2018-7-21_21-49-37.png
cái này cũng không

Và đây chính là kết quả :D
upload_2018-7-21_21-50-15.png
 

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,619
744
21
Phú Yên
Trường THPT Lương Văn Chá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,619
744
21
Phú Yên
Trường THPT Lương Văn Chánh
anh ơi, có trang nào dạy tốt ngôn ngữ máy tính ko ? Anh chỉ em với.
Ngôn ngữ máy tính hay ngôn ngữ lập trình nhỉ....
lập trình thì có nhiều web hay lắm, em tìm trên mạng ra đầy
còn ngôn ngữ máy tính anh còn không biết nó là gì :D
 

honganh140503@gmail.com

Học sinh
Thành viên
19 Tháng sáu 2015
30
8
46
20
Phú Thọ
thpt Hùng Vương

Valhein AIC

Học sinh
Thành viên
2 Tháng tư 2020
52
112
46
Khánh Hòa
Magic school
Code đây nha. Test đi rồi biết.
Mã:
 Program Ao_Thuat;
 uses crt;

 var n,m,i,kq,x,y: integer;
     h: string[1];

 BEGIN
      n := 1;
      kq := 0;
      clrscr;
      writeln('Ban hay nghi mot so bat ky tu 1 - 60');Delay(1000);
      write('Toi se doan so ban nghi la gi...');readln;
      repeat
            clrscr;
            Gotoxy(30,2);Write('A O  T H U A T');
            m := n;
            x := 1;
            y := 1;
            while m <= 60 do
            begin
                 for i := m to m + n-1 do
                 begin
                      inc(y);
                      if i <= 60 then
                      begin
                           gotoxy(x*4,y*2);
                           write(i);
                      end;
                      if y >= 5 then begin y := 1;inc(x);end;
                 end;
                 m := m + 2*n;
            end;
            Gotoxy(4,12);
            write('Co so ban nghi khong (c = co)? ');
            readln(h);
            if h = 'c' then inc(kq,n);
            n := n*2;
      until n > 32;
      clrscr;
      if not (kq in [1..60]) then write('Vui long kiem tra lai!')
      else write('Co phai so ban nghi la: ',kq);
      readln;
 END.
làm sao để nói không anh
 

System32

Học sinh chăm học
Thành viên
25 Tháng chín 2018
343
348
76
Hà Nội
THPT Marie Curie
Thực ra nếu bạn biệt dùng Python code kết hợp với 1 vài ứng dụng đồ họa khác thì chắc vẫn làm được game thôi:)

Đây là 1 ví dụ đơn giản sau (tạo 1 video):

Mã:
from manimlib.imports import *

class OpeningManimExample(Scene):
    def construct(self):
        title = TextMobject("This is some \\LaTeX")
        basel = TexMobject(
            "\\sum_{n=1}^\\infty "
            "\\frac{1}{n^2} = \\frac{\\pi^2}{6}"
        )
        VGroup(title, basel).arrange(DOWN)
        self.play(
            Write(title),
            FadeInFrom(basel, UP),
        )
        self.wait()

        transform_title = TextMobject("That was a transform")
        transform_title.to_corner(UP + LEFT)
        self.play(
            Transform(title, transform_title),
            LaggedStart(*map(FadeOutAndShiftDown, basel)),
        )
        self.wait()

        grid = NumberPlane()
        grid_title = TextMobject("This is a grid")
        grid_title.scale(1.5)
        grid_title.move_to(transform_title)

        self.add(grid, grid_title)  # Make sure title is on top of grid
        self.play(
            FadeOut(title),
            FadeInFromDown(grid_title),
            ShowCreation(grid, run_time=3, lag_ratio=0.1),
        )
        self.wait()

        grid_transform_title = TextMobject(
            "That was a non-linear function \\\\"
            "applied to the grid"
        )
        grid_transform_title.move_to(grid_title, UL)
        grid.prepare_for_nonlinear_transform()
        self.play(
            grid.apply_function,
            lambda p: p + np.array([
                np.sin(p[1]),
                np.sin(p[0]),
                0,
            ]),
            run_time=3,
        )
        self.wait()
        self.play(
            Transform(grid_title, grid_transform_title)
        )
        self.wait()

Chạy code trên với thư viện manim, kết hợp với FFmpeg, Cairo, Latex và Sox thì đây là kết quả:

 

Hoàng Vũ YS

Học sinh
Thành viên
20 Tháng ba 2020
159
104
36
19
Thanh Hóa
Trường THPT Triệu Sơn 4
Code đây nha. Test đi rồi biết.
Mã:
 Program Ao_Thuat;
 uses crt;

 var n,m,i,kq,x,y: integer;
     h: string[1];

 BEGIN
      n := 1;
      kq := 0;
      clrscr;
      writeln('Ban hay nghi mot so bat ky tu 1 - 60');Delay(1000);
      write('Toi se doan so ban nghi la gi...');readln;
      repeat
            clrscr;
            Gotoxy(30,2);Write('A O  T H U A T');
            m := n;
            x := 1;
            y := 1;
            while m <= 60 do
            begin
                 for i := m to m + n-1 do
                 begin
                      inc(y);
                      if i <= 60 then
                      begin
                           gotoxy(x*4,y*2);
                           write(i);
                      end;
                      if y >= 5 then begin y := 1;inc(x);end;
                 end;
                 m := m + 2*n;
            end;
            Gotoxy(4,12);
            write('Co so ban nghi khong (c = co)? ');
            readln(h);
            if h = 'c' then inc(kq,n);
            n := n*2;
      until n > 32;
      clrscr;
      if not (kq in [1..60]) then write('Vui long kiem tra lai!')
      else write('Co phai so ban nghi la: ',kq);
      readln;
 END.
code này dùng cho free Pascal đc k a ?
 

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,619
744
21
Phú Yên
Trường THPT Lương Văn Chánh
code này dùng cho free Pascal đc k a ?
Được nha em.
Thực ra nếu bạn biệt dùng Python code kết hợp với 1 vài ứng dụng đồ họa khác thì chắc vẫn làm được game thôi:)

Đây là 1 ví dụ đơn giản sau (tạo 1 video):

Mã:
from manimlib.imports import *

class OpeningManimExample(Scene):
    def construct(self):
        title = TextMobject("This is some \\LaTeX")
        basel = TexMobject(
            "\\sum_{n=1}^\\infty "
            "\\frac{1}{n^2} = \\frac{\\pi^2}{6}"
        )
        VGroup(title, basel).arrange(DOWN)
        self.play(
            Write(title),
            FadeInFrom(basel, UP),
        )
        self.wait()

        transform_title = TextMobject("That was a transform")
        transform_title.to_corner(UP + LEFT)
        self.play(
            Transform(title, transform_title),
            LaggedStart(*map(FadeOutAndShiftDown, basel)),
        )
        self.wait()

        grid = NumberPlane()
        grid_title = TextMobject("This is a grid")
        grid_title.scale(1.5)
        grid_title.move_to(transform_title)

        self.add(grid, grid_title)  # Make sure title is on top of grid
        self.play(
            FadeOut(title),
            FadeInFromDown(grid_title),
            ShowCreation(grid, run_time=3, lag_ratio=0.1),
        )
        self.wait()

        grid_transform_title = TextMobject(
            "That was a non-linear function \\\\"
            "applied to the grid"
        )
        grid_transform_title.move_to(grid_title, UL)
        grid.prepare_for_nonlinear_transform()
        self.play(
            grid.apply_function,
            lambda p: p + np.array([
                np.sin(p[1]),
                np.sin(p[0]),
                0,
            ]),
            run_time=3,
        )
        self.wait()
        self.play(
            Transform(grid_title, grid_transform_title)
        )
        self.wait()

Chạy code trên với thư viện manim, kết hợp với FFmpeg, Cairo, Latex và Sox thì đây là kết quả:

Ảo nhỉ....python có vẻ mạnh nhưng vẫn thích java hơn....vì mình nghĩ làm game thì python thua java nhiều
 

System32

Học sinh chăm học
Thành viên
25 Tháng chín 2018
343
348
76
Hà Nội
THPT Marie Curie
Được nha em.

Ảo nhỉ....python có vẻ mạnh nhưng vẫn thích java hơn....vì mình nghĩ làm game thì python thua java nhiều
Sở dĩ Python chạy được như trên là vì 2 điều:

1. Windows (và Linux) và các ứng dụng chạy trên Windows sử dụng ngôn ngữ lập trình C/C++
2. CPython là phiên bản Python mặc định khi được cài trên Windows và Linux. CPython là 1 ngôn ngữ được kết hợp bởi ngôn ngữ C và Python và hiện là phiên bản mặc định khi cài Python và sử dụng phổ biến nhất. CPython cũng có hàm tương tác với một số ngôn ngữ khác, trong đó có C. Do vậy Python có thể tương tác với ứng dụng chạy trên Windows.

Java chủ yếu dùng để lập trình Android apps nên phổ biến với Android. Lập trình Java thì cần dùng Android Studio (Cái này chạy năng phết, nặng hơn cả Visual Studio). Mà Visual Studio thì không hỗ trợ lập trình Java, nhưng vẫn có thể dùng Visual Studio để lập trình Android với 1 số ngôn ngữ khác ít phổ biến hơn

Python thì lại phổ biến với Windows và Linux (Linux phổ biến hơn) và lại rất nhẹ. Bởi Python sử dụng GIL (Global Interpreter Lock). GIL hoạt động khá giống 1 máy ảo, và GIL chỉ sử dụng dụy nhất 1 luồng của CPU. Python cũng có IDLE để gõ Python code (thay cho Visual Studio), thậm chí Notepad cũng có thể dùng để gõ Python (Cả 2 đều có giao diện đơn giản nhưng không thoải mái lắm, nhưng ít ra IDLE có cài đặt thay đổi giao diện)
 

Axiore_Ro

Học sinh
Thành viên
18 Tháng ba 2020
103
85
36
16
Hà Nội
Roblox - Power of Imagination
em chả hiểu tại sao nó lại ra đc số em nghĩ :(
Code đây nha. Test đi rồi biết.
Mã:
 Program Ao_Thuat;
 uses crt;

 var n,m,i,kq,x,y: integer;
     h: string[1];

 BEGIN
      n := 1;
      kq := 0;
      clrscr;
      writeln('Ban hay nghi mot so bat ky tu 1 - 60');Delay(1000);
      write('Toi se doan so ban nghi la gi...');readln;
      repeat
            clrscr;
            Gotoxy(30,2);Write('A O  T H U A T');
            m := n;
            x := 1;
            y := 1;
            while m <= 60 do
            begin
                 for i := m to m + n-1 do
                 begin
                      inc(y);
                      if i <= 60 then
                      begin
                           gotoxy(x*4,y*2);
                           write(i);
                      end;
                      if y >= 5 then begin y := 1;inc(x);end;
                 end;
                 m := m + 2*n;
            end;
            Gotoxy(4,12);
            write('Co so ban nghi khong (c = co)? ');
            readln(h);
            if h = 'c' then inc(kq,n);
            n := n*2;
      until n > 32;
      clrscr;
      if not (kq in [1..60]) then write('Vui long kiem tra lai!')
      else write('Co phai so ban nghi la: ',kq);
      readln;
 END.
 
Top Bottom