Tin học Lập trình Pascal !

T

torai112

[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.

Theo nguyện vọng của một số mem đang có nhu cầu học về Pascal hôm nay Torai112 sẽ lập riêng một Topic để hướng dẫn và trả lời các thắc mắc của các mem về ngôn ngữ lập trình cơ bản được học trong chương trình THPT này !
Và bắt đầu với vài nét giới thiệu về Turbo Pascal 7.0 :

Ngôn ngữ lập trình Pascal


Pascal là một ngôn ngữ lập trình cho máy tính thuộc dạng mệnh lệnh, được Niklaus Wirth phát triển vào năm 1970 là ngôn ngữ đặc biệt thích hợp cho kiểu lập trình có cấu trúc.

Pascal dựa trên ngôn ngữ lập trình Algol và được đặt tên theo nhà toán học và triết học Blaise Pascal. Wirth đồng thời cũng xây dựng Modula-2 và Oberon, là những ngôn ngữ tương đồng với Pascal. Oberon cũng hỗ trợ kiểu lập trình hướng đối tượng.

Ban đầu, Pascal là một ngôn ngữ được hướng để dùng trong giảng dạy về lập trình có cấu trúc, và nhiều thế hệ sinh viên đã "vào đời" thông qua việc học Pascal như ngôn ngữ vỡ lòng trong các chương trình học đại cương. Nhiều biến thể của Pascal ngày nay vẫn còn được sử dụng khá phổ biến, cả trong giảng dạy lẫn trong công nghiệp phát triển phần mềm.

Phần lớn hệ điều hành Macintosh được viết bằng Pascal. Hệ sắp chữ TeX phổ biến được viết bằng một ngôn ngữ tên là Web là ngôn ngữ mà Donald Knuth đã vay mượn khá nhiều yếu tố từ Pascal.
 
T

torai112

Khóa học toàn tập về học lập trình Pascal :
Turbo Pascal

Thêm một Ebook nữa nè ! Mọi người cứ "nhắm" tạm nhé :d
Pascal
 
Last edited by a moderator:
L

lieslines_seeling

Hơ Hơ !! nois thật la` tui học tự pascal đc mí tháng roài mà chẳng hỉu ji` hít áh
 
P

pk_ngocanh

lỗi chia cho số 0
ah này các bạn cho tui hỏi viết biểu thức y mũ x trong pascal kiểu gì thế nhỉ???
 
T

torai112

Lỗi : Erro 200 : division by zero là gì thế mà tớ bấm Ctrl+F9 nó báo thế ?


Lỗi này e có thế là e khai báo cái thư viện crt nhưng file turbo.tpl bị hỏng . E có thế bỏ khai

báo đó đi (Nhưng thế thì sẽ không dùng mấy cái clrscr được !) . Cũng có thể trong các

phép tính , có thể là phép lặp e cho biến chia có chia cho 0 . Chúc e vui vẻ
:D
 
T

torai112

lỗi chia cho số 0
ah này các bạn cho tui hỏi viết biểu thức y mũ x trong pascal kiểu gì thế nhỉ???

Trong Pascal không có hàm trực tiêps x mũ y đâu e àh ! Chỉ có hàm dùng theo log thôi !

Hoặc là e có thể viết một hàm tính x mũ y và lần sau e chỉ việc gọi ra thôi !

Chúc e vui vẻ :d
 
L

long15

Các bạn có thể chỉ cách xửa lỗi chia cho không được không
hoặc cho ví dụ cũng được
 
T

tu310

lập trình giúp em bài này

ai giúp em giải 2 bài này em cảm ơn chân tình

bài 1: lập trình giải bài toán sau: nhập số nguyên dương n từ bàn phím. tìm số nguyên k nhỏ nhất thoã mãn điều kiện 3^k>n. đưa ra màn hình số k và giá trị 3^k.

bài 2: lập trình các số fibonacci f0,f1,........,fk,......,f44 và ghi các kết quả tính được ra văn bản FIBO.DAT, mỗi số được ghi trên một dòng dưới dạng số nguyên, biết rằng:
f0=f1=1;
fk=fk-1+fk-2;
k=2,3,.....,44.
 
S

storm5906

ai giúp em giải 2 bài này em cảm ơn chân tình

bài 1: lập trình giải bài toán sau: nhập số nguyên dương n từ bàn phím. tìm số nguyên k nhỏ nhất thoã mãn điều kiện 3^k>n. đưa ra màn hình số k và giá trị 3^k.

bài 2: lập trình các số fibonacci f0,f1,........,fk,......,f44 và ghi các kết quả tính được ra văn bản FIBO.DAT, mỗi số được ghi trên một dòng dưới dạng số nguyên, biết rằng:
f0=f1=1;
fk=fk-1+fk-2;
k=2,3,.....,44.



Bài 1:

Mã:
PROGRAM Tim_so;
VAR  k,n:integer;
        x:longInt;
BEGIN
     Write('Nhap so nguyen n:'); Readln(n);
     If n=0 then
        Begin
             Writeln('So k = 0');
             Writeln('3 ^ k = 1');
             Readln;
             Exit;
        End;
     If n<0 then
        Begin
             Writeln('Khong tinh duoc!');
             Readln;
             Exit;
        End;
     x:=1;
     For k:=1 to n do
         Begin
              x:=x*3;
              If x>n then
                 Begin
                      Writeln('So k = ',k);
                      Writeln('3 ^ k = ', x);
                      Break;
                 End;
         End;
     READLN;
END.

Bài 2:

Mã:
PROGRAM Fibonacci;
VAR	f: text;
    	i: byte;
    	s1,s2,s3: longInt;
BEGIN
     Assign(f, 'D:\Pascal\Data\FIBO.DAT'); Rewrite(f);
     s1:=1;
     s2:=1;
     Writeln(f, s1); Writeln(f, s2);
     For i:=3 to 44 do
         Begin
              s3:=s1+s2;
              Writeln(f, s3);
              s1:=s2;
              s2:=s3;
         End;
     Close(f);
     Writeln('Da hoan thanh!');
     READLN;
END.
 
Last edited by a moderator:
S

storm5906

Nhân tiện, mọi người làm thử bài này xem:

Nhập 3 số nguyên a, b, c. Không dùng cấu trúc If , hãy tìm số lớn nhất trong 3 số đó.:cool:
 
S

storm5906

bạn chỉ giúp mình lập trình bài 1 bằng lệnh while,do


Lập trình bằng lệnh While do:

Mã:
PROGRAM Tim_so;
VAR  k,n:integer;
        x:longInt;
BEGIN
     Write('Nhap so nguyen n:'); Readln(n);
     If n=0 then
        Begin
             Writeln('So k = 0');
             Writeln('3 ^ k = 1');
             Readln;
             Exit;
        End;
     If n<0 then
        Begin
             Writeln('Khong tinh duoc!');
             Readln;
             Exit;
        End;
     x:=3;  k:=1;
     While (x<=n) and (k<=n) do
         Begin
              x:=x*3;
              k:=k+1;
         End;
     Writeln('So k = ', k);
     Writeln('3 ^ k = ', x);
     READLN;
END.
 
Last edited by a moderator:
T

tu310

nhân tiện giúp mình giải mấy bài này luôn
bài 1: s=N!
bài 2: s=1+[tex]\frac{1}{2}[/tex]+[tex]\frac{1}{3}[/tex]+[tex]\frac{1}{4}[/tex]+.......................+[tex]\frac{1}{n}[/tex]
bài 3: s=12+22+32+....................+102
bài 4: s=2^2+4^2+..................+n^2
Thank bạn nhiều!
 
S

storm5906

nhân tiện giúp mình giải mấy bài này luôn
bài 1: s=N!


Bài 1 (với điều kiện n<=16):

Mã:
PROGRAM Bai_1;
VAR     i,n:integer;
           S:longInt;
BEGIN
     Write('Nhap so n:'); Readln(n);
     If n<0 then
        Begin
             Writeln('Khong tinh duoc!');
             Readln;
             Exit;
        End;
     S:=1;
     If n>0 then For i:=2 to n do S:=S*i;
     Writeln('Ket qua: ', S);
     READLN;
END.


bài 2: s=1+[tex]\frac{1}{2}[/tex]+[tex]\frac{1}{3}[/tex]+[tex]\frac{1}{4}[/tex]+.......................+[tex]\frac{1}{n}[/tex]

Bài 2:

Mã:
PROGRAM Bai_2;
VAR     i,n:integer;
           S:Real;
BEGIN
     Write('Nhap so n:'); Readln(n);
     If n<=1 then
        Begin
             Writeln('Khong tinh duoc!');
             Readln;
             Exit;
        End;
     S:=1;
     For i:=2 to n do S:=S+(1/i);
     Writeln('Ket qua: ', S:8:2);
     READLN;
END.
 
Last edited by a moderator:
S

storm5906

bài 3: s=12+22+32+....................+102


Bài 3:

Mã:
PROGRAM Bai_3;
VAR     i:integer;
           S:integer;
BEGIN
     S:=0;
     For i:=1 to 10 do S:=S+(10*i+2);
     Writeln('Ket qua: ', S);
     READLN;
END.

bài 4: s=2^2+4^2+..................+n^2

Bài 4:

Mã:
PROGRAM Bai_4;
VAR     i,n:integer;
           S:longInt;
BEGIN
     Write('Nhap so n:'); Readln(n);
     S:=0;
     For i:=1 to n do S:=S+sqr(i*2);
     Writeln('Ket qua: ', S);
     READLN;
END.


Đừng chỉ nói miệng như thế, hãy nhấn vào nút cảm ơn! :)):)):))
 
S

storm5906

Mọi người làm bài này xem, coi như câu đố cũng được:


Nhập 3 số nguyên a, b, c. Không dùng cấu trúc If, hãy tìm số lớn nhất trong 3 số đó. &gt;:)
 
D

dung_92bn

Híc ai bít giúp mjnh 2 bài này với:
1. Viết chương trình kiểm tra tính nguyên tố của một số tự nhiên N.
2. Viết chương trình xác định 1 số tự nhiên bất kì N là số chính phương hay không.
Mình đang cần gấp mng nhận được câu trả lời càng sớm càng tốt.
 
  • Like
Reactions: Noob Tin Học
Top Bottom