K
Khách

Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.

I. Phần trắc nghiệm: Hãy chọn một đáp án đúng nhất. Câu 1. Trong Pascal, câu lệnh nào sau đây được viết đúng? A. for i:= 4 to 1 do writeln(‘A’); B. for i= 1 to 10 writeln(‘A’); C. for i:= 1 to 10 do writeln(‘A’); D. for i to 10 do writeln(‘A’); Câu 2. Trong câu lệnh lặp: For i := 1 to 10 do j:= j + 2; write( j ); Khi kết thúc câu lệnh lặp trên, câu lệnh write( j ); được thực hiện bao nhiêu lần? A. 10...
Đọc tiếp

I. Phần trắc nghiệm: Hãy chọn một đáp án đúng nhất.
Câu 1. Trong Pascal, câu lệnh nào sau đây được viết đúng?
A. for i:= 4 to 1 do writeln(‘A’); B. for i= 1 to 10 writeln(‘A’);
C. for i:= 1 to 10 do writeln(‘A’); D. for i to 10 do writeln(‘A’);
Câu 2. Trong câu lệnh lặp: For i := 1 to 10 do j:= j + 2; write( j );
Khi kết thúc câu lệnh lặp trên, câu lệnh write( j ); được thực hiện bao nhiêu lần?
A. 10 lần B. 5 lần C. 1 lần D. Không thực hiện.
Câu 3. Cho đoạn chương trình: J:= 0;
For i:= 1 to 5 do J:= j + i;
Sau khi thực hiện đoạn chương trình trên, giá trị của biến j bằng bao nhiêu?
A. 12 B. 22 C. 15 D. 42.
Câu 4: Cú pháp của câu lệnh điều kiện dạng đủ nào sau đây là đúng?
A. If <điều kiện> then <câu lệnh 1> else <câu lệnh 2> B. If <câu lệnh> then <điều kiện>
C. If <điều kiện> then <câu lệnh 1> else <câu lệnh 2> D. If &lt;điều kiện&gt; do &lt;câu lệnh&gt;;
Câu 5: Chương trình sau cho kết quả gì?
Program VD;
Var a, b: Real; x: Integer;
Begin
Readln( a,b);
If a>b then x:=a else x:=b;
Writeln(x);
End.
A.Xuất ra màn hình số nhỏ nhất trong 2 số a, b đã nhập.
B.Xuất ra màn hình số lớn nhất trong hai số a, b đã nhập.
C.Chương trình không thực hiện được do lỗi khai báo kiểu dữ liệu.
D.Đảo giá trị của hai biến a, b cho nhau.
Câu 6: Hoạt động nào sau đây lặp với số lần lặp biết trước?
A. Rửa rau tới khi sạch B. Học bài cho tới khi thuộc bài
C. Gọi điện tới khi có người nghe máy D. Ngày tắm 2 lần
Câu 7: Cấu trúc câu lệnh điều kiện dạng thiếu là:
A. If <điều kiện> then <câu lệnh 1> esle <câu lệnh 2> B. If <điều kiện> then <câu lệnh >
C. If <điều kiện> then <câu lệnh 1> <câu lệnh 2> D. If <điều kiện> then <câu lệnh 1> esle <câu lệnh 2>
Câu 8: Ta có 2 lệnh sau:
x := 8;
IF x > 5 then x := x+1;
Giá trị của x nhận được là bao nhiêu?
A. 5 B. 7 C. 8 D. 9
Câu 9: Chọn câu lệnh Pascal hợp lệ trong các câu lệnh sau:
A. If a > b then max = a ; B. If a := b then max = b ;
C. If a = b then S := a+b ; D. If a <> b then b=a;
Câu 10: Chọn cú pháp đúng nhất về câu lệnh lặp:
A. for < biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >
B. for < biến đếm > := < giá trị cuối > to < giá trị đầu > do <câu lệnh >

C. for <biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >
D. for < biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >
Câu 11: Em hiểu lệnh lặp theo nghĩa nào dưới đây?
A. Một lệnh thay cho nhiều lệnh B. Các câu lệnh được viết lặp đi lặp lại nhiều lần
C. Vì câu lệnh có tên là lệnh lặp D. Cả (A), (B), (C) đều sai
Câu 12: Khi nào thì câu lệnh For..to..do kết thúc?
A. Khi biến đếm nhỏ hơn giá trị cuối B. Khi biến đếm lớn hơn giá trị cuối
C. Khi biến đếm nhỏ hơn giá trị đầu D. Khi biến đếm lớn hơn giá trị đầu

Câu 13: Cho các câu lệnh sau hãy chỉ ra câu lệnh đúng?
A. for i:=1 to 10; do x:=x+1; B. for i:=1 to 10 do x:=x+1;
C. for i:=10 to 1 do x:=x+1; D. for i =10 to 1 do x:=x+1;
Câu 14: Với ngôn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i phải
được khai báo là kiểu dữ liệu nào?
A. Integer B. Real C. String D. Tất cả các kiểu trên đều được
Câu 15: Trong câu lệnh lặp với số lần biết trước (For – do), được thực hiện mấy lần?
A. ( < giá trị cuối > - < giá trị đầu >) lần B. Tuỳ thuộc vào bài toán mới biết được số lần
C. Khoảng 10 lần D. ( < giá trị đầu > - < giá trị cuối>) lần
Câu 16: Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 100
A. 1 B. 100 C. 99 D. Tất cả đều sai
Câu 17: Kết quả của &lt; điều kiện &gt; trong câu lệnh sẽ có giá trị là gì?
A. Là một số nguyên B. Là một số thực C. Đúng hoặc sai D. Là một dãy kí tự
Câu 18: Sau khi thực hiện đoạn chương trình sau:
S:=0; For i:=1 to 5 do S:=S+i; Giá trị của biến S bằng bao nhiêu?
A. 20 B. 15 C. 10 D. 0
Câu 19: Cú pháp lệnh lặp For – do dạng lùi:
A. for < biến đếm> = < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >
B. for < biến đếm> := < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >
C. for < biến đếm> = < Giá trị cuối >down < Giá trị đầu > do < câu lệnh >
D. for < biến đếm> := < Giá trị đầu >downto < Giá trị cuối > do < câu lệnh >
Câu 20: Trong lệnh lặp For – do: (chọn phương án đúng nhất)
A. Giá trị đầu phải nhỏ hơn giá trị cuối
B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
C. Giá trị đầu phải lớn hơn giá trị cuối D. Giá trị đầu phải bằng giá trị cuối
Câu 21: Lệnh lặp For – do được sử dụng khi:
A. Lặp với số lần biết trước B. Lặp với số lần chưa biết trước
C. Lặp với số lần có thể biết trước D. Lặp với số lần không bao giờ biết trước
Câu 22: Sau khi thực hiện đoạn chương trình sau: s:=1; for i:= 1 to 3 do s:= s*i;
Giá trị của biến s bằng bao nhiêu?
A. 10; B.5; C. 6; D. 15.
Câu 23: Với câu lệnh for i:=1 to 10 do x:=x+1; biến i được khai báo thuộc kiểu dữ liệu nào?
A. Real; B. Integer; C. String; D. Char.
Câu 24: Lệnh lặp for..to..do của Pascal trong mỗi vòng lặp, biến đếm thay đổi như thế nào?
A. Tăng thêm 1 đơn vị; B. +1 hoặc -1;
C. Giá trị bất kì; D. Một giá trị khác 0.

II: Bài tập: Tính tổng các số tự nhiên đầu tiên chia hết cho 3 không vướt quá N cho trước (N được
nhập vào từ bàn phím).

MONG NHẬN ĐƯỢC SỰ TRỢ GIÚP TỪ CÁC BẠN !!!

1

I: Trắc nghiệm

Câu 1: C

Câu 2: A

Câu 3: C

Câu 4: C

Câu 5: C

Câu 6: D

Câu 7: B

Câu 8: D

Câu 9: C

Câu 10: B

Câu 11: D

Câu 12: B

Câu 13: B

Câu 14: A

Câu 15: B

Câu 16: B

Câu 17: Không rõ câu hỏi

Câu 18: B

Câu 19: B

Câu 20: B

Câu 21: A

Câu 22: C

Câu 23: B

Câu 24: A

II: Bài tập:
uses crt;
var i,s,n:longint;
begin
clrscr;
write('n='); readln(n);
s:=0;
for i:=1 to n do
if i mod 3=0 then s:=s+i;
writeln('tong cac so tu nhien chia het cho 3 khong vuot qua ',n,' la: ',s);
readln;
end.

24 tháng 6 2023

ký tự '>' và '<' trong các lệnh cin và cout bị sai.

#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
for(int i=n; i>=1; i–)
{
cout << " _____ " << "\o_" << endl;
cout << " ___( )----- - " << "/ " << endl;
cout << "(______________) " << "/ / " << endl;
}
return 0;
}

6 tháng 7 2023

oooooooooooooooooooo

 

 

I. Trắc nghiệm: Câu 1:Xác định bài toán là gì? A. Chỉ rõ các điều kiện cho trước và kết quả cần thu đc B. Chỉ rõ các điều kiện cho trước và phương pháp giải C. Chỉ rõ phương pháp giải và kết quả cần thu đc D. Chỉ rõ các bước để giải bài toán Câu 2: Giải thuật đổi giá trị hai biến x và y cho nhau, ta có thể thực hiện như sau: A. x -> z; z ->y; y-> x B. z->x; z->y; y->x C....
Đọc tiếp

I. Trắc nghiệm:
Câu 1:Xác định bài toán là gì?
A. Chỉ rõ các điều kiện cho trước và kết quả cần thu đc
B. Chỉ rõ các điều kiện cho trước và phương pháp giải
C. Chỉ rõ phương pháp giải và kết quả cần thu đc
D. Chỉ rõ các bước để giải bài toán
Câu 2: Giải thuật đổi giá trị hai biến x và y cho nhau, ta có thể thực hiện như sau:
A. x -> z; z ->y; y-> x B. z->x; z->y; y->x
C. z->x; x->y;y->z D. z->x; x->y; z->x
Câu 3: Phần thân chương trình của Pascal đc bắt đầu và kết thúc bởi cặp từ khóa:
A. Begin và end B. Begin: và end
C. Begin và end; D. Begin và end.
Câu 4: Kiểu dữ liệu thường dùng của Turbo Pascal là:
A. Xâu ký tự B. Số nguyên
C. Số thực D. Cả A, B và C đều đúng
Câu 5: Kết quả của phép chia 7 mod 5 thuộc kiểu gì?
A. Kiểu số nguyên B. Kiểu số thực
C. Kiểu xâu ký tự D. Kiểu thập phân
Câu 6: Nội dung các văn bản muốn ghi ra màn hình bằng lệnh Write phải đc đặt trong cặp dấu ngoặc:
A. ( và ) B. '' và '' C. ' và ' D. { và }
Câu 7: Để tăng biến nhớ X lên 1 đơn vị, ta thực hiện lệnh:
A. X => X + 1; B. X := X+1
C. X => X+ 1 D. X := X + 1;
Câu 8: Tính giá trị cuối cùng của c, biết rằng: a := 3; b := 5; a := a + b; c:= a+b;
A. c=8; B. c=3; C. c= 5; D. c= 13;
Câu 9: Câu lệnh Write và Writeln, Read và Readln khác nhau ở điểm nào?
A. Writeln và Readln sau khi thực hiện, con trở tự động xuống dòng kế tiếp
B. Write và Read sau khi thực hiện, con trở tự động xuống dòng kế tiếp
C. Write là viết ra còn Writeln là ghi vào
D. Read là đọc vào còn Readln là ghi ra
Câu 10: Cấu trúc rẽ nhánh dạng đủ có dạng như sau:
A. If <câu lệnh 1> Then <điều kiện> Else <Câu lệnh 2>;
B. If <điều kiện> Then <câu lệnh 1> Else <Câu lệnh 2>
C. If <điều kiện> Then <câu lệnh 1> Else <Câu lệnh 2>;
D.If <điều kiện> Then <câu lệnh 1>; Else <Câu lệnh 2>;
II. Tự luận:
11. Cấu trúc chương trình gồm mấy phần? Gồm những phần nào? Phần nào là quan trọng nhất và k thể thiếu đc?
12. Viết chương trình. Nhập vào ba số thực bất kỳ, báo ra màn hình giá trị lớn nhất trong ba số đó

0
Câu 1 . Trong các tên dưới đây , tên hợp lệ trong Pascal là : A. Khoi 8 B. Ngay_20_11 C. 14tuoi D. Begin Câu 2 . Đại lượng được đặt tên dùng để lưu trữ dữ liệu , có giá trị không đổi trong suốt quá trình thực hiện chương trình được gọi là : A. Tên B. Từ khóa C. Biến D. Hằng Câu 3 . Trong Pascalm , từ khóa để khai báo biến là : A. Const B. Begin C....
Đọc tiếp

Câu 1 . Trong các tên dưới đây , tên hợp lệ trong Pascal là :
A. Khoi 8 B. Ngay_20_11 C. 14tuoi D. Begin
Câu 2 . Đại lượng được đặt tên dùng để lưu trữ dữ liệu , có giá trị không đổi trong suốt quá trình thực hiện chương trình được gọi là : A. Tên B. Từ khóa C. Biến D. Hằng
Câu 3 . Trong Pascalm , từ khóa để khai báo biến là :
A. Const B. Begin C. Var D. Uses
Câu 4 . Tính giá trị cuối cùng của c biết rằng : a:=3 ; b:=5 ; a:= a+b ; c:= a+b
A. c=8 B. c=3 C. c=5 D. c=13
Câu 5. Sau câu lệnh x:= 15 mod 2 ; Giá trị của biến x là :
A. 7 B. 6 C. 7.5 D. 1
Câu 6 . Hãy cho biết giá trị của biến X bằng bao nhiêu sau khi thực hiện câu lệnh if (45 mod 3) = 0 then X:=X+2 ; ( biết rằng trược đó giá trị của biến X = 5)
A. 5 B. 9 C. 7 D. 11
Câu 7 . Ta có 2 lệnh sau : x:=8 ; if x>5 then x:=x+1 ; giá trị của x là bao nhiêu ?
A. 5 B. 9 C. 8 D. 6
Câu 8 . Câu lệnh điều kiện đầy đủ là :
A. If < điều kiện > then < câu lệnh 1 > ; Elsse < câu lệnh 2 >
B. If < điều kiện > then < câu lệnh >
C. If < điều kiện > then < câu lệnh 1 > , < câu lệnh 2 >
D. If < điều kiện > then < câu lệnh 1 > ; Elsse < câu lệnh 2 > .

0
Hãy chọn và khoanh tròn đáp án đúng nhất trong các câu sau. Câu 1: Trong Pascal, cú pháp câu lệnh lặp với số lần lặp chưa biết trước có dạng: A. for...do B. if...then C. while...do D. if...then...else Câu 2: Trong các cách khai báo biến sau đây, cách khai báo nào là hợp lệ? A. Var a: array; B. Var a= integer; C. Var a: integer; D. Var: a: integer; Câu 3: Trong các cách khai báo biến mảng sau đây, cách khai báo nào là hợp...
Đọc tiếp

Hãy chọn và khoanh tròn đáp án đúng nhất trong các câu sau.
Câu 1: Trong Pascal, cú pháp câu lệnh lặp với số lần lặp chưa biết trước có dạng: A. for...do B. if...then
C. while...do D. if...then...else
Câu 2: Trong các cách khai báo biến sau đây, cách khai báo nào là hợp lệ? A. Var a: array; B. Var a= integer;
C. Var a: integer; D. Var: a: integer;
Câu 3: Trong các cách khai báo biến mảng sau đây, cách khai báo nào là hợp lệ?
A. Var a: array [1..100] for integer; B. Var a: array [1.5..1.05] for integer; C. Var a: array [1,100] for integer; D. Var a: array [1.5,1.05] for integer;
Câu 4: Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây đúng? A.Chỉsốđầuvàchỉsốcuốilà2sốnguyên. B.Chỉsốđầu<chỉsốcuối.
C. Kiểu dữ liệu có thể là Integer hoặc Real.
Câu 5: Vòng lặp While ... do kết thúc khi nào?
A. Khi một điều kiện cho trước được thỏa mãn. C. Khi tìm được Output.
D. Cả ba ý trên.
B. Khi đủ số vòng lặp.
D. Tất cả các phương án.
Câu 6: Cho biết câu lệnh sau Do thực hiện mấy lần trong đoạn chương trình sau: i := 5;
While i>=1 do i := i – 1;
A. 1 lần. B. 2 lần. C. 5 lần. D. 6 lần Câu 7: Khi thực hiện đoạn chương trình sau: n:=1; T:=50;
While n>20 do begin n:=n+5; T:=T - n end; Hãy cho biết giá trị của biến T bằng bao nhiêu?
A.14 B.15 C.16 D.17
Câu 8: Khai báo biến mảng: A : array[1..7] of real;. Sử dụng câu lệnh For i:= 1 to 5 do readln(A[i]); để
gán giá trị cho các phần tử trong biến A từ bàn phím, ta sẽ nhập được bao nhiêu giá trị? A.4 B.5 C.6 D.7
Câu 9: Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây đúng:
A.Chỉsốđầuvàchỉsốcuốilà2sốnguyên.
C. Kiểu dữ liệu có thể là integer hoặc real.
Câu 10: Cú pháp lệnh lặp với số lần chưa biết trước:
B.Chỉsốđầu  chỉsốcuối. D. Cả ba ý trên.
A. While < điều kiện > to < câu lệnh >;
B. While < điều kiện > do < câu lệnh >;
C. While < điều kiện > do ;< câu lệnh >;
D. While < điều kiện > to < câu lệnh 1 > do < câu lệnh 2 >;

1
27 tháng 4 2020

Câu 1 : A.while...do

Câu 2 : Var a: integer;

Câu 3 : *Câu này là A. Var a: array[1..100] of inrteger mới đúng nha bạn chứ bạn ghi "integer" là sai thành ra không có cái nào đúng đấy*

Câu 4 : C.Kiểu dữ liệu có thể là integer hoặc real *Hình như cái này thiếu ý D. ???*

Câu 5 : A.Khi điều kiện cho trước được thỏa mãn *Câu này bạn đánh máy sai kìa hai ý D mà còn lên xuống dòng tùm lum*

Câu 6 : D.6 lần

Câu 7 : *Bạn đánh máy sai câu này nên mình ko biết đáp án*

Câu 8 : B.5

Câu 9 : *Trùng câu 4*

Câu 10 : B.While < điều kiện > do < câu lệnh >;

17 tháng 6 2023

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    long long x, a, b;
    cin >> a >> b;
    x = -b/a; // Giải phương trình ax + b = 0
    cout << fixed << setprecision(1) << x << endl;
    return 0;
}

 

Các lỗi đã được sửa:

Thêm #include <iostream> để sử dụng đối tượng cin, cout.

Xóa dòng #include <bits/stdc++.h>, không cần thiết.

Xóa using namespace std; và thay bằng việc sử dụng std:: trước các đối tượng thuộc không gian tên std.

Sửa lỗi cú pháp: ax + b = 0 thành x = -b/a (giải phương trình).

Sửa lỗi cú pháp: ax+b=0 thành x.

Có nghĩa là bạn xuất ra những số mà nhân với a lớn hơn b và tới chừng nào b bằng 0 thì thôi

Program Game_Bong_Da; uses crt,dos; const ChieuRong = 60; ChieuCao = 23; KhoangCachDong = 1; KhoangCachCot = 0; ChieuRongKhungThanh = 8; SoCauThu = 8; Front = 1; BeHind = 2; Left = 3; Right = 4; Tocdo = 15; type TSanBong = object Procedure VeSanBong; Procedure KhoiTaoCauThu; end; TViTri = object X, Y : integer; Procedure SetViTri(vtX, vtY: integer); end; TGioiHan = object X1, X2, Y1, Y2 : integer; Procedure SetGioiHan(vtX1, vtY1, vtX2, vtY2 : integer); end; TBong = object Sohuu : array[0..2,0..SoCauThu] of...
Đọc tiếp

Program Game_Bong_Da;
uses crt,dos;
const
ChieuRong = 60;
ChieuCao = 23;
KhoangCachDong = 1;
KhoangCachCot = 0;
ChieuRongKhungThanh = 8;

SoCauThu = 8;

Front = 1;
BeHind = 2;
Left = 3;
Right = 4;

Tocdo = 15;

type
TSanBong = object
Procedure VeSanBong;
Procedure KhoiTaoCauThu;
end;
TViTri = object
X, Y : integer;
Procedure SetViTri(vtX, vtY: integer);
end;
TGioiHan = object
X1, X2, Y1, Y2 : integer;
Procedure SetGioiHan(vtX1, vtY1, vtX2, vtY2 : integer);
end;

TBong = object
Sohuu : array[0..2,0..SoCauThu] of Boolean;
Vitri : TVitri;
Procedure SetSoHuu(doi, ten : integer);
Procedure InBong(doi, caut, Huong : integer);
Procedure CanBong;
Procedure SutBong(Huong : integer);
Function HuongChuyenBong(doi, caut : integer) : integer;
Procedure XuLi;
end;

TCauThu = object
Doi : integer;
Ten : integer;
GioiHan : TGioiHan;
Vitri : TVitri;
MauAo : Word;
KeyPress : Char;

Procedure SetCauThuHT;
Procedure InHinh(vtX,vtY : integer);
Procedure GianhBong;
Procedure DichuyenNgauNhien;
Procedure DiChuyen(Key : char);
end;
TMayTinh = object
CauThuHT : array[1..2] of integer;
PT : Boolean;
Procedure KiemTra;
Procedure TanCong;
Procedure PhongThu;
end;

var
LastHuong,HuongChuyen,CauThuHT : integer;
san : TSanBong;
cauthu : array[1..2,1..SoCauThu] of TCauThu;
QBong : TBong;
DangSut,vtMax,DangChuyen : Boolean;
DiemSo : array[1..2] of integer;
MayTinh : TMayTinh;

procedure setcusor(bot,top: byte);
var regs : registers;
begin
regs.ah := 1;
regs.ch:= bot;
regs.cl:= top;
intr($10, regs);
end;

Procedure TViTri.SetVitri(vtX, vtY : integer);
Begin
X := vtX;
Y := vtY;
End;

Procedure TGioiHan.SetGioiHan(vtX1, vtY1, vtX2, vtY2 : integer);
Begin
X1 := vtX1;
Y1 := vtY1;
X2 := vtX2;
Y2 := vtY2;
End;

(*==============S Bong===============================*)
Procedure TBong.SetSoHuu(doi, ten: integer);
var d,t : integer;
Begin
for d := 0 to 2 do
for t := 0 to SoCauThu do
begin
if (d = doi) and (t = ten) then
SoHuu[d, t] := True
else
SoHuu[d, t] := False;
end;
End;

Procedure TBong.InBong(doi, caut, Huong : integer);
Begin
if (QBong.SoHuu[doi, caut]) and (not DangSut) then
begin
if LastHuong <> Huong then
begin
GotoXy(Vitri.X,Vitri.Y);
Write(#32);
end;
case Huong of
Front : begin
TextColor(white);
Vitri.X := CauThu[doi,caut].Vitri.X;
Vitri.Y := CauThu[doi,caut].Vitri.Y-1;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
BeHind : begin
TextColor(white);
Vitri.X := CauThu[doi,caut].Vitri.X;
Vitri.Y := CauThu[doi,caut].Vitri.Y+1;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
Left : begin
TextColor(white);
Vitri.X := CauThu[doi,caut].Vitri.X - 1;
Vitri.Y := CauThu[doi,caut].Vitri.Y;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
Right : begin
TextColor(white);
Vitri.X := CauThu[doi,caut].Vitri.X + 1;
Vitri.Y := CauThu[doi,caut].Vitri.Y;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
end;
LastHuong := Huong;
if (Vitri.Y <= Khoangcachdong+1) or
(Vitri.Y >= KhoangCachDong+ChieuCao) or
(Vitri.X <= KhoangCachcot+1) or
(Vitri.X >= KhoangCachcot + chieurong) then
begin
vtMax := True;
DangSut := True;
end;
CanBong;
end;
End;

Procedure TBong.SutBong(Huong : integer);
Begin
if not vtMax then
begin
GotoXy(Vitri.X,Vitri.Y);
Write(#32);
end;
case Huong of
Front : if Vitri.Y > Khoangcachdong+1 then
begin
TextColor(white);
Vitri.X := Vitri.X;
Vitri.Y := Vitri.Y-2;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
BeHind :if Vitri.Y < Khoangcachdong+ChieuCao then
begin
TextColor(white);
Vitri.X := Vitri.X;
Vitri.Y := Vitri.Y+2;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
Left :if Vitri.X > KhoangcachCot+1 then
begin
TextColor(white);
Vitri.X := Vitri.X - 2;
Vitri.Y := Vitri.Y;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
Right :if Vitri.X < KhoangcachCot+ChieuRong then
begin
TextColor(white);
Vitri.X := Vitri.X + 2;
Vitri.Y := Vitri.Y;
GotoXy(Vitri.X,Vitri.Y);
Write(#265);
end;
end;
if (Vitri.Y <= Khoangcachdong+1) or
(Vitri.Y >= KhoangCachDong+ChieuCao) or
(Vitri.X <= KhoangCachcot+1) or
(Vitri.X >= KhoangCachcot + chieurong) then
begin
vtMax := True;
end;
CanBong;
Cauthu[1,1].SetCauThuHT;
End;

Procedure TBong.CanBong;
var doi,caut : integer;
Begin
for doi := 1 to 2 do
for caut := 1 to Socauthu do
begin
if (CauThu[doi,caut].Vitri.X = Vitri.X)
and (CauThu[doi,caut].Vitri.Y = Vitri.Y) then
begin
SetSoHuu(doi,caut);
if CauThu[doi,caut].Vitri.Y > ChieuCao div 2 then
begin
InBong(doi,caut,Front);
Cauthu[doi,caut].Vitri.Y := Cauthu[doi,caut].Vitri.Y-1;
end
else
begin
InBong(doi,caut,Behind);
Cauthu[doi,caut].Vitri.Y := Cauthu[doi,caut].Vitri.Y+1;
end;
TextColor(Cauthu[doi,caut].MauAo);
GotoXy(Cauthu[doi,caut].Vitri.X,CauThu[doi,caut].Vitri.Y);
Write(#258);
DangSut := False;
DangChuyen := False;
end;
end;
end;

Function TBong.HuongChuyenBong(doi, caut : integer) : integer;

var ct,Min,Tam,Huong : integer;
Begin
Min := ChieuRong+ChieuCao;
for ct := 1 to SoCauThu do
if ct <> caut then
begin
Tam := Cauthu[doi, ct].Vitri.X - Cauthu[doi, caut].Vitri.X;
if Abs(Min) > Abs(Tam) then
begin
Min := Tam;
if Min < 0 then Huong := Left
else if Min > 0 then Huong := Right;
end;
Tam := Cauthu[doi, ct].Vitri.Y - Cauthu[doi, caut].Vitri.Y;
if Abs(Min) > Abs(Tam) then
begin
Min := Tam;
if Min < 0 then Huong := Front
else if Min > 0 then Huong := BeHind;
end;
HuongChuyenBong := Huong;
end;

End;

Procedure TBong.XuLi;
Begin
if (vtMax) and (Vitri.X >= CauThu[1,1].GioiHan.X1)
and (Vitri.X <= CauThu[1,1].GioiHan.X2)
and (DangSut or Dangchuyen) then
begin
DangSut := False;
DangChuyen := False;
vtMax := False;

if (Vitri.Y > ChieuCao div 2) then
begin
Inc(DiemSo[2]);
SetSoHuu(1,1);
Cauthu[1,CauThuHT].MauAo := Green;
CauThuHT:=1;
InBong(1,CauThuHT,Front);
end
else
begin
Inc(DiemSo[1]);
SetSoHuu(2,1);
InBong(2,1,BeHind);
end;
San.VeSanBong;
TextColor(Cyan);
GoToXy(65,7); Write(' Cau Thu : ',CauThuHT);
goToxy(65,9); Write(' May : ',DiemSo[2]);
goToxy(65,11);Write('Nguoi Choi : ',DiemSo[1]);
end
else
if vtMax then
begin
SetSoHuu(0,0);
ViTri.SetVitri(ChieuRong div 2 + KhoangCachCot,
chieuCao div 2 + KhoangCachDong);
Textcolor(White);
GotoXy(Vitri.X,Vitri.Y);write(#265);
San.VeSanBong;
DangSut := False;
DangChuyen := False;
vtMax := False;
end;
Textcolor(Red);
GotoXy((ChieuRong + KhoangCachCot - 20) div 2,(ChieuCao + KhoangCachDong) div 2);
if diemSo[1] >= 10 then
begin
Write('Nguoi Choi Thang Roi.');
readln;
Cauthu[1,CauThuHT].KeyPress := #27;
end
else if diemso[2] >= 10 then
begin
Write('May Thang Roi.');
readln;
Cauthu[1,CauThuHT].KeyPress := #27;
end;
end;
(*==============E Bong===============================*)

(*==============S San Bong===========================*)
Procedure TSanBong.KhoiTaoCauThu;
var Vt : TViTri;
i : integer;
Begin
CauThu[2,1].Doi := 2;
CauThu[1,1].Doi := 1;
CauThu[1,1].Ten := 1;
CauThu[2,1].Ten := 1;
for i := 2 to SoCauThu do
begin
CauThu[1,i].GioiHan.SetGioiHan(KhoangCachCot+2,KhoangCachDong+2,
KhoangCachCot+ChieuRong-1,KhoangCachDong+ChieuCao-1);
CauThu[1,i].MauAo := Green;
Cauthu[1,i].Doi := 1;
CauThu[1,i].Ten := i;
CauThu[2,i].GioiHan.SetGioiHan(KhoangCachCot+2,KhoangCachDong+2,
KhoangCachCot+ChieuRong-1,KhoangCachDong+ChieuCao-1);
CauThu[2,i].MauAo := Blue;
Cauthu[2,i].Doi := 2;
CauThu[2,i].Ten := i;
end;
for i := 1 to SoCauThu do
begin
repeat
Vt.X := RanDom(Cauthu[1,i].GioiHan.X2+1) + KhoangCachCot;
Vt.Y := Random(CauThu[1,i].GioiHan.Y2+1) + KhoangCachDong;
until (Vt.X >= Cauthu[1,i].GioiHan.X1)
and (Vt.X <= CauThu[1,i].GioiHan.X2)
and (Vt.Y >= CauThu[1,i].GioiHan.Y1)
and (Vt.Y <= Cauthu[1,i].GioiHan.Y2);
CauThu[1,i].Vitri := Vt;
Vt.SetViTri(0, 0);
end;

for i := 1 to SoCauThu do
begin
repeat
Vt.X := RanDom(Cauthu[2,i].GioiHan.X2+1) + KhoangCachCot;
Vt.Y := Random(Cauthu[2,i].GioiHan.Y2+1) + KhoangCachDong;
until (Vt.X >= Cauthu[2,i].GioiHan.X1)
and (Vt.X <= CauThu[2,i].GioiHan.X2)
and (Vt.Y >= CauThu[2,i].GioiHan.Y1)
and (Vt.Y <= Cauthu[2,i].GioiHan.Y2);
CauThu[2,i].Vitri := Vt;
Vt.SetViTri(0, 0);
end;
for i := 1 to SoCauThu do
begin
TextColor(cauthu[1,i].MauAo);
gotoxy(cauthu[1,i].vitri.X,cauthu[1,i].Vitri.Y);
Write(#258);
TextColor(cauthu[2,i].MauAo);
gotoxy(cauthu[2,i].vitri.X,cauthu[2,i].Vitri.Y);
Write(#258);
end;
End;

Procedure TSanBong.VeSanBong;
var i: integer;
Begin
clrscr;
TextColor(Yellow);
for i := 1 to ChieuRong do
begin
GotoXy(KhoangCachCot + i,KhoangCachDong);
Write(#177);
GotoXy(KhoangCachCot + i,KhoangCachDong+ChieuCao+1);
Write(#177);
end; { Ve Khung Ngang }

for i := 1 to ChieuCao do
begin
GotoXy(KhoangCachCot + 1,KhoangCachDong + i);
Write(#177);
GotoXy(KhoangCachCot + ChieuRong,KhoangCachDong+i);
Write(#177);
end; { Ve Khung Doc }

TextColor(LightGreen);
i := (ChieuRong - ChieuRongKhungThanh) div 2 + KhoangCachCot;
GotoXy(i,KhoangCachDong+1);
CauThu[1,1].GioiHan.SetGioiHan(i,KhoangCachDong+ChieuCao -
1 - ChieuRongKhungThanh div 2,
i+ChieuRongKhungThanh-1,KhoangCachDong+ChieuCao - 1);
{ Set Gioi Han Thu Mon}
CauThu[1,1].MauAo := LightGreen;
for i := 1 to ChieuRongKhungThanh do
Write(#177);
{ Ve Khung Thanh May}
TextColor(Cyan);
i := (ChieuRong - ChieuRongKhungThanh) div 2 + KhoangCachCot;
GotoXy(i,KhoangCachDong+ChieuCao);
CauThu[2,1].GioiHan.SetGioiHan(i,KhoangCachDong+2,
i+ChieuRongKhungthanh-1,ChieuRongKhungThanh div 2+KhoangCachDong+2);
{Set Gioi Han Thu Mon}
CauThu[2,1].MauAo := Cyan;
for i := 1 to ChieuRongKhungThanh do
Write(#177); { Ve Khung Thanh Nguoi Choi}
KhoiTaoCauThu;
TextColor(Cyan);
GoToXy(65,7); Write(' Cau Thu : ',CauThuHT);
goToxy(65,9); Write(' May : ',DiemSo[1]);
goToxy(65,11);Write('Nguoi Choi : ',DiemSo[2]);
Delay(1000);
End;
(*==============E San Bong===========================*)

(*==============S Cau Thu============================*)
Procedure TCauThu.SetCauThuHT;
var i,min,tamthoi1,tamthoi2,cautht: integer;
TroLai : boolean;
Begin
TroLai := True;
if (not Qbong.Sohuu[1,CauThuHT]) or (QBong.soHuu[0,0]) then
TroLai := False;
if not TroLai then
begin
Min := ChieuRong + ChieuCao;
cautht := CauThuHT;
for i := 1 to SoCauThu do
begin
tamthoi1 := Cauthu[doi,i].Vitri.X - QBong.Vitri.X;
tamthoi2 := Cauthu[doi,i].Vitri.Y - QBong.Vitri.Y;
if ABs(Min) > (ABs(TamThoi1)+Abs(Tamthoi2)) then
begin
Min := TamThoi1+Tamthoi2;
cautht := i;
end;
end;
if (cautht = 1) and ((QBong.Vitri.X < Cauthu[doi,cautht].GioiHan.X1)
or (QBong.Vitri.X > Cauthu[doi,cautht].GioiHan.X2) or
(QBong.Vitri.Y < Cauthu[doi,cautht].GioiHan.Y1) or
(QBong.Vitri.Y > Cauthu[doi,cautht].GioiHan.Y2)) then
cautht := 2;

if (CauThuHT = 1) and (doi = 2) then
CauThu[doi,CauThuHT].MauAo := Cyan
else if (CauThuHT <> 1) and (doi = 2) then
CauThu[doi,CauThuHT].MauAo := Blue
else if (CauThuHT = 1) and (doi = 1) then
CauThu[doi,CauThuHT].MauAo := LightGreen
else if (CauThuHT <> 1) and (doi = 1) then
CauThu[doi,CauThuHT].MauAo := Green;
CauThuHT := cautht;
TextColor(Cyan);
GoToXy(65,7);Write(' Cau Thu : ',CauThuHT);
end;
end;

Procedure TCauThu.InHinh(vtX, vtY : integer);
Begin
GotoXy(Vitri.X,Vitri.Y);
Write(#32);
Vitri.X := vtX;
Vitri.Y := vtY;
TextColor(MauAo);
GotoXy(Vitri.X,Vitri.Y);
Write(#258);
End;

Procedure TCauThu.GianhBong;
Begin
if not Qbong.SoHuu[Doi,Ten] then
begin
if (Qbong.Vitri.X = Vitri.X-1) and (Qbong.Vitri.Y = Vitri.Y) then
begin
SetCauthuHT;
Qbong.SetSoHuu(Doi,Ten);
Qbong.InBong(Doi,Ten,Front);
end
else if (Qbong.Vitri.X = Vitri.X+1) and (Qbong.Vitri.Y = Vitri.Y) then
begin
SetCauthuHT;
Qbong.SetSoHuu(Doi,Ten);
Qbong.InBong(Doi,Ten,Front);
end
else if (Qbong.Vitri.X = Vitri.X) and (Qbong.Vitri.Y = Vitri.Y-1) then
begin
SetCauthuHT;
Qbong.SetSoHuu(Doi,Ten);
Qbong.InBong(Doi,Ten,Front);
end
else if (Qbong.Vitri.X = Vitri.X) and (Qbong.Vitri.Y = Vitri.Y+1) then
begin
SetCauthuHT;
Qbong.SetSoHuu(Doi,Ten);
Qbong.InBong(Doi,Ten,Front);
end;
end;
end;

Procedure TCauThu.DiChuyenNgauNhien;
var Phim : integer;
Key : Char;
Begin
Phim := Random(7);
case Phim of
1 : begin
Key := #72;
end;
2 : begin
Key := #75;
end;
3 : begin
Key := #77;
end;
4 : begin
Key := #80;
end;
5 : begin
Key := #32;
end;
6 : begin
Key := #13;
end;
end;
KeyPress := Key;
End;

Procedure TCauThu.DiChuyen(Key : char);
Begin
case Key of
#72,#119:if (vitri.Y > GioiHan.Y1) then
begin
InHinh(Vitri.X,ViTri.Y - 1);
QBong.InBong(Doi,Ten, Front);
GianhBong;
delay(Tocdo);
end;
#80,#115:if (Vitri.Y < GioiHan.Y2) then
begin
InHinh(Vitri.X,Vitri.Y+1);
QBong.InBong(Doi,Ten, BeHind);
GianhBong;
delay(Tocdo);
end;
#75,#97: if (vitri.X > GioiHan.X1) then
begin
InHinh(Vitri.X-1,vitri.Y);
QBong.InBong(Doi,Ten, Left);
GianhBong;
delay(Tocdo);
end;
#77,#100:if (Vitri.X < GioiHan.X2) then
begin
InHinh(ViTri.X+1,ViTri.Y);
QBong.InBong(Doi,Ten, Right);
GianhBong;
delay(Tocdo);
end;
#13 : if QBong.SoHuu[doi,ten] then begin
QBong.SetSoHuu(0, 0);
DangSut := True;
end;
#32 : if QBong.SoHuu[doi,ten] then begin
QBong.SetSoHuu(0, 0);
DangChuyen := True;
HuongChuyen := QBong.HuongChuyenBong(doi,ten);
end;
end;
End;
(*==============E Cau Thu============================*)
(*==============S May Tinh===========================*)
Procedure TMayTinh.KiemTra;
var ct,Min,Tamthoi,caut : integer;
Begin
Min := ChieuCao + ChieuRong;
for ct := 1 to SoCauThu do
begin
TamThoi := Abs(CauThu[2,ct].Vitri.X - QBong.Vitri.X)
+ Abs(CauThu[2,ct].Vitri.Y - QBong.Vitri.Y);
if (Min) > TamThoi then
begin
Min := TamThoi;
caut := ct;
end;
end;
CauThuHT[1] := caut;

Min := ChieuCao + ChieuRong;
for ct := 1 to SoCauThu do
if (ct <> CauthuHT[1]) then
begin
TamThoi := Abs(CauThu[2,ct].Vitri.X - QBong.Vitri.X)
+ Abs(CauThu[2,ct].Vitri.Y - QBong.Vitri.Y);
if (Min > TamThoi) then
begin
Min := TamThoi;
caut := ct;
end;
end;
CauThuHT[2] := caut;
end;

Procedure TMayTinh.TanCong;
var i,ct,j : integer;
begin
ct := 0;
KiemTra;
for i := 1 to 2 do
if QBong.Sohuu[2,CauThuHT[i]] then
ct := i;
i := ct;
PT := True;
if i <> 0 then
begin
PT := False;
if (CauThu[2,CauThuHT[i]].Vitri.Y < CauThu[1,1].GioiHan.Y2) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#80);
end
else
if (CauThu[2,CauThuHT[i]].Vitri.X < (CauThu[1,1].GioiHan.X2
+ CauThu[1,1].GioiHan.X1) div 2) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#77);
end
else
if (CauThu[2,CauThuHT[i]].Vitri.X > (CauThu[1,1].GioiHan.X2
+ CauThu[1,1].GioiHan.X1) div 2) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#75);
end;
for j := 1 to SoCauthu do
if j <> i then
Begin
CauThu[2,j].DiChuyenNgauNhien;
CauThu[2,j].Dichuyen(Cauthu[2,j].KeyPress)
end;
end;
end;

Procedure TMayTinh.PhongThu;
var i,j: integer;
Begin
KiemTra;
PT := False;
for i := 1 to 2 do
if (not QBong.Sohuu[2,CauThuHT[i]]) and (not QBong.SoHuu[1,1]) then
begin
if (CauThu[2,CauThuHT[i]].Vitri.Y < QBong.Vitri.Y) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#80);
end
else
if (CauThu[2,CauThuHT[i]].Vitri.Y > QBong.Vitri.Y) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#72);
end
else
if (CauThu[2,CauThuHT[i]].Vitri.X < QBong.Vitri.X-1) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#77);
end
else
if (CauThu[2,CauThuHT[i]].Vitri.X > QBong.Vitri.X+1) then
begin
CauThu[2,CauThuHT[i]].DiChuyen(#75);
end;
PT := True;
for j := 1 to SoCauthu do
if j <> i then
Begin
CauThu[2,j].DiChuyenNgauNhien;
CauThu[2,j].Dichuyen(Cauthu[2,j].KeyPress)
end;
end;
end;

(*==============E May Tinh===========================*)

Procedure NewGame;
Begin
clrscr;
SetCusor(32,0);
San.VeSanBong;
QBong.SetSoHuu(0, 0);
TextColor(White);
Qbong.vitri.SetVitri(ChieuRong div 2 + KhoangCachCot,
chieuCao div 2 + KhoangCachDong);
GotoXy(QBong.Vitri.X,QBong.Vitri.Y);
Write(#265);
CauthuHT := 2;
DangSut := False;
DangChuyen := False;
end;

Procedure PlayerPlay;
var i : integer;
Begin
Cauthu[1,CauThuHT].MauAo := Red;
if Keypressed then
begin
Cauthu[1,CauThuHT].KeyPress := readkey;
for i := 1 To SoCauThu do
if i <> CauThuHT then
Cauthu[1,i].DichuyenNgauNhien;
end;
Cauthu[1,CauThuHT].DiChuyen(Cauthu[1,CauThuHT].KeyPress);
for i := 1 To SoCauThu do
if i <> CauThuHT then
Cauthu[1,i].Dichuyen(Cauthu[1,i].KeyPress);
if Dangsut then QBong.SutBong(LastHuong)
else if DangChuyen then QBong.SutBong(HuongChuyen);
MayTinh.PhongThu;
MayTinh.TanCong;
QBong.XuLi;
Cauthu[1,1].SetCauThuHT;
end;

BEGIN
NewGame;
repeat
PlayerPlay;
if MayTinh.PT then
until Cauthu[1,CauThuHT].KeyPress = #27;
END.

*Bậc cmn thầy*

Enter:Sút

space: chuyền

a,s,d,w: di chuyển

* dán vô notepad rồi sau đó đổi đuôi thành .pas nhá. bỏ vào đường link nè:

link: C:\FPC\2.0.4\bin\i386-win32

Lập trình hoàn toàn bằng pascal nhá.

Bậc cmn thầy

1
24 tháng 9 2017

Thế giới này thật là đáng sợ, tui cũng muốn làm lập trình viên nhưng mà .... ếu biết cái gì cả

Phần I. Trắc nghiệm. (5 điểm) 1. Nhặt thóc ra khỏi gạo cho đến khi trong gạo không còn lẫn thóc là hoạt động: a. Lặp 10 lần c. Lặp vô số lần (lặp vô hạn) b. Lặp với số lần chưa biết trước d. Lặp với số lần biết trước 2. Trong câu lệnh lặp For i:=1 to 10 do begin.... end bao nhiêu vòng lặp được thực hiện? a. Không lần nào b. 10 lần c. 1 lần ...
Đọc tiếp

Phần I. Trắc nghiệm. (5 điểm)
1. Nhặt thóc ra khỏi gạo cho đến khi trong gạo không còn lẫn thóc là hoạt động:
a. Lặp 10 lần c. Lặp vô số lần (lặp vô hạn)
b. Lặp với số lần chưa biết trước d. Lặp với số lần biết trước
2. Trong câu lệnh lặp For i:=1 to 10 do begin.... end bao nhiêu vòng lặp được thực hiện?
a. Không lần nào b. 10 lần c. 1 lần d. 2 lần
3. Điều kiện kết thúc vòng lặp For... do của Pascal là:
a. Biến đếm lớn hơn giá trị cuối c. Giá trị đầu bằng giá trị cuối
b. Biến đếm lớn hơn hoặc bằng giá trị cuối d. Giá trị đầu lớn hơn giá trị cuối
4. Trong các câu lệnh Pascal sau, câu lệnh nào hợp lệ?
a. For i:=1 to 10; do x=x+1; c. For i:=1 to 10 do x:=x+1;
b. For i:=10 to 1 do x:=x+1; d. For i:=1.5 to 10 do x:=x+1;
5. Trong lệnh lặp For... do của Pascal, sau từ khóa “do” nếu có từ 2 câu lệnh trở lên (câu lệnh
ghép) thì câu lệnh ghép đó phải đặt trong cặp từ khóa nào sau đây?
a. Begin.....readln; b. Begin.....and;
c. End.....Begin d. Begin.....end;
6. Câu lệnh sau đây cho kết quả như thế nào?
For i:=1 to 10 do Writeln(‘A’);
a. In dãy số từ 10 đến 1 ra màn hình c. In dãy số từ 1 đến 10 ra màn hình
b. In 20 ký tự A ra màn hình d. In 10 ký tự A ra màn hình
7. Sau khi thực hiện đoạn chương trình sau, giá trị của biến T bằng bao nhiêu?

i := 0; T := 0;
While i &lt; 3 do
begin T := T + 1; i := i + 1; end;

a. T = 2 b. T = 3 c. T = 4 d. T = 5
8. Cú pháp của câu lệnh lặp với số lần chưa biết trước trong Pascal:
a. While <câu lệnh> do <điều kiện>; c. While <điều kiện> do <câu lệnh>;
b. While <giá trị cuối > do <giá trị đầu>; d. While <giá trị đầu> do <giá trị cuối>;
9. Trong lệnh lặp While... do của Pascal, nếu điều kiện đúng thì:
a. Tiếp tục vòng lặp c. Vòng lặp vô tận
b. Lặp 10 lần d. Thoát khỏi vòng lặp
10. Trong các câu lệnh Pascal sau, câu lệnh nào hợp lệ?
a. x:=1; while x:= 10 do x:=x+5; c. x =1 while x>10 do x:=x+5;
b. x:=1; while x <10 do x:=x+5; d. x:=10; while x<10 do x=x+5;
Phần II. Bài tập. (5 điểm)
Câu 1: Cho đoạn chương trình sau: (2đ)

m:=2; k:=3;
For i:= 0 to 4 do begin

m:=m+1;
k :=k+m;
end;

Sau khi thực hiện đoạn chương trình trên giá trị của các biến m, k bằng bao nhiêu?
1. Câu 2: (3đ)Viết chương trình tính tổng: S= 1+ 1/2 + 1/3 + ….. + 1/N

(n là số nguyên được nhập từ bàn phím)

Làm giúp mình trước ngày 29/04/2020 nha !

1
27 tháng 4 2020

Cảm ơn ạ !haha

Phần II: Bài tập

Câu 1:

Sau khi thực hiện chương trình, chương trình sẽ báo lỗi thiếu begin

Câu 2:

uses crt;

var i,n:integer;

s:real;

begin

clrscr;

write('n='); readln(n);

s:=0;

for i:=1 to n do

s:=s+1/i;

writeln(s:4:2);

readln;

end.