PDA

View Full Version : Bài tập Pascal



hxnghia1992
13-10-2005, 04:09
Em đang có một mớ bài tập Borland Pascal 7.0 (dễ có, khó cũng có)
Một mình em làm không xuể. Bác nào có lòng hảo tâm xin liên hệ tại hộp mail hxnghia1992@yahoo.com ; Em sẽ gửi BT cho

green_apples002
13-10-2005, 04:40
Bạn ko biết hay ko hiểu bài nào cứ post lên đây đi !!!!

hxnghia1992
13-10-2005, 22:10
PHẦN MA TRẬN
1/ Viết CT theo dạng thủ tục và hàm thực hiện các công việc sau :
a. Nhập ma trận (không cho biết số dòng, cột)
b. Xuất mà trận
c. Sắp xếp MT tăng theo hàng
d. Sắp xếp MT giảm theo cột
e. Sắp xếp MT tăng theo đường chéo chính (MT vuông)
f. Sắp xếp MT tăng theo đường chéo phụ (MT vuông)
g. Sắp xếp MT tăng theo hướng xoắn từ ngoài vào trong
h. KT xem MT có đối xứng loại 1 không
i. Sắp xếp MT tăng theo đường chéo chính, giảm theo đường chéo phụ (MT vuông)
j. KT MT vuông. Tính tổng giá trị tam giác vuông trên kể cả đường chéo
k. KT MT vuông. Lưu đường chéo chính - phụ vào 2 mảng 1 chiều rồi xuất ra
l. KT MT vuông. Lưu các đường chéo song song đường chéo chính vào mảng 1 chiều rồi xuất ra màn hình
m. KT MT có phải là MT có các phần tử trên 2 đường chéo bằng 0
n. KT MT có phải là MT có hơn nửa số phần tử = 0
o. KT MT có pjải là MT có các phần tử trên đường chéo =1,<>0
p. KT tính đối xứng tâm, đối xứng chéo chính, đối xứng chéo phụ
q. KT MT có phải là MT có mỗi hàng mỗi cột đều là hoán vị của [1..n]
r. KT MT có phải là MT có tổng mỗi hàng = tổng mỗi cột = tổng mỗi đừơng chéo
s. Xoá các phần tử trùng nhau trong MT
t. Xoá hàng/cột có STT là số nhập vào

* Đề không có ví dụ. Mong Bác thông cảm và giải giúp !
Cảm ơn

ktoon
14-10-2005, 06:29
Có bao nhiêu bài bạn cứ post cả lên đi. Mọi người chia nhau giải cho lẹ.

hxnghia1992
15-10-2005, 03:49
Mấy anh/chị giải hết mớ bài tập ma trận giúp em trước đi.
Tinh thần "tương thân tương ái" của mấy anh chị em xin ghi nhận nhưng em chưa học tới mấy phần sau, tới đây là đủ rồi !

hxnghia1992
16-10-2005, 22:42
Mong anh chị giải giúp câu g và câu k trước (càng sớm càng tốt trong tuần này)
để em còn nộp bài
Cảm ơn nhiều !

hxnghia1992
17-10-2005, 22:51
Em đã bí rồi mới Post bài lên chứ đâu phải tại lười
Câu k thì em giải xong rồi nhưng còn câu g thì khó quá (chả biết làm từ đâu)
Mong các anh chị cho biết ý tưởng hay hướng giải thì em cũng "mãn nguyện" rồi
Nhớ giúp em nhen !
Cảm ơn nhiều

TrongThaiVN
25-10-2005, 23:52
Mình không biết bạn đã giải các bài tập được hết chưa, nếu chưa thì có thể tham khảo bài này xem sao. Có thể hơi phức tạp đó, bạn chịu khó tìm hiểu nhé!


const
max = 10;

type
matrix = array [1..max, 1..max] of integer;

function min(a, b: integer): integer;
begin
if a <= b then
min := a
else
min := b
end;

procedure Input(var A: matrix; m, n: integer);
var x, y: integer;
begin
for y := 1 to m do
for x := 1 to n do begin
write('A[', y, ',', x, ']= ');
readln(A[y, x]);
end;
end;

procedure Output(const A: matrix; m, n: integer);
var x, y: integer;
begin
for y := 1 to m do begin
for x := 1 to n do
write(A[y, x]:3);
writeln;
end;
end;

{ Duong cheo chinh, tang dan }
procedure Gen_DiagonalIncrease(var A: matrix; n: integer);
var x: integer;
begin
fillchar(A, Sizeof(A), 0);
for x := 1 to n do
A[x, x] := x;
end;

{ Duong cheo phu, giam dan }
procedure Gen_MinorDiagonalIncrease(var A: matrix; n: integer);
var x: integer;
begin
fillchar(A, Sizeof(A), 0);
for x := 1 to n do
A[n-x+1, x] := x;
end;

procedure Gen_IncreaseByRow(var A: matrix; m, n: integer);
var x, y, count: integer;
begin
count := 1;
for y := 1 to m do
for x := 1 to n do begin
A[y, x] := count;
inc(count);
end;
end;

procedure Gen_DecreaseByCol(var A: matrix; m, n: integer);
var x, y, count: integer;
begin
count := m*n;
for x := 1 to n do
for y := 1 to m do begin
A[y, x] := count;
dec(count);
end;
end;

{ Xoan oc }
procedure Gen_Spiral(var A: matrix; m, n: integer);
var x, y, seed, count, direct, total: integer;
begin
direct := 4;
total := m*n;
count := 0;
x := 0;
y := 1;
for seed := 1 to total do begin
while count = 0 do
case direct of
1, 3: begin inc(direct); dec(n); count := m; end;
2, 4: begin
inc(direct); dec(m); count := n;
if direct = 5 then direct := 1;
end;
end;
case direct of
1: inc(x);
2: inc(y);
3: dec(x);
4: dec(y);
end;
dec(count);
a[y, x] := seed;
end;
end;

procedure Swap(var a, b: integer);
var temp: integer;
begin
temp := a;
a := b;
b := temp;
end;

{ Map or Template }
procedure MapSort(var A, B: matrix; m, n, total: integer);
var
x, y, curx, cury, minx, miny: integer;
first: boolean;
cur: integer;
begin
for cur := 1 to total do begin
first := true;
for y := 1 to m do
for x := 1 to n do
if B[y, x] > 0 then begin
if first or (A[miny, minx] > A[y, x]) then begin
minx := x;
miny := y;
first := false;
end;
if B[y, x] = cur then begin
curx := x;
cury := y;
end;
end;
Swap(A[cury, curx], A[miny, minx]);
B[cury, curx] := 0;
end;
end;

var
m, n: integer;
A, B: matrix;
begin
m := 3;
n := 4;
writeln('Nhap ma tran:');
Input(A, m, n);
writeln('Ma tran sau khi nhap:');
Output(A, m, n);
writeln('Sap xep ma tran tang dan theo duong cheo chinh');
Gen_DiagonalIncrease(B, min(m, n));
Output(B, m, n);
MapSort(A, B, m, n, min(m, n));
Output(A, m, n);
writeln('Sap xep ma tran tang dan theo duong cheo phu');
Gen_MinorDiagonalIncrease(B, min(m, n));
Output(B, m, n);
MapSort(A, B, m, n, min(m, n));
Output(A, m, n);
writeln('Sap xep ma tran tang dan theo hang');
Gen_IncreaseByRow(B, m, n);
MapSort(A, B, m, n, m*n);
Output(A, m, n);
writeln('Sap xep ma tran giam dan theo cot');
Gen_DecreaseByCol(B, m, n);
MapSort(A, B, m, n, m*n);
Output(A, m, n);
writeln('Sap xep ma tran tang dan theo duong xoan oc');
Gen_Spiral(B, m, n);
MapSort(A, B, m, n, m*n);
Output(A, m, n);
readln;
end.


Thủ tục sắp xếp là MapSort, dựa trên thuật giải sắp xếp chọn trực tiếp. Thủ tục này sắp xếp tăng dần, ma trận cần sắp xếp là A, còn ma trận B là một ma trận để tham khảo vị trí. Các thủ tục Gen_.. để sinh ra ma trận B theo yêu cầu.
Ví dụ: để sắp xếp tăng dần theo hình xoắn ốc thì phải tạo ma trận B như sau (lấy 3x3):
1 2 3
8 9 4
7 6 5
Để sắp xếp giảm dần theo đường chéo chính thì cần có ma trận B như sau:
3 0 0
0 2 0
0 0 1
Các phần tử tương ứng với 0 trên B sẽ không tham gia vào sắp xếp.
Như vậy, thủ tục MapSort là khá tổng quát cho các yêu cầu sắp xếp trên ma trận đã cho. Vấn đề phức tạp đã được chia làm 2 mảng:
- Mảng 1: Sắp xếp theo thuật giải chọn trực tiếp.
- Mảng 2: Sinh ra một ma trận theo hình thù yêu cầu.
Nếu ma trận A có kích thước/số phần tử là k (ở đây k = m*n) thì độ phức tạp của thuật giải này là O(k^2) (tính luôn phần sinh ra ma trận B). Đối với trường hợp như sắp xếp trên đường chéo chính, mặc dù chỉ có n phần tử tham gia sắp xếp nhưng độ phức tạp của MapSort vẫn là O(k^2); trong khi đó trường hợp đơn giản này có thể cài đặt để có độ phức tạp nhưng kích thước nhỏ hơn O(n^2).

Mình đã chạy thử rồi, thuật giải làm việc rất tốt (hy vọng là không có sai sót nào khác). Bạn cố gắng tìm hiểu nhé! (Để giải thích cặn kẽ bài này khá dài dòng đó)

quocdat82
23-11-2005, 11:24
Hay lắm! Mai em thi Pascal mà nhận được bài hay như thế này thì đã quá!
Em xin chân thành cảm ơn các bác!
Các bác có bài gì hay thì chia sẽ cho em với nha. Thanks

phoenixsinh
31-05-2008, 15:09
borland pascal và turbo pascal có gì khác nhau không?
giúp mình vouiws vì mình mới mua một cuón sách và trong sãhs đẻ borland pascal mình không biết nó là cái gì hết

solidsnack
31-05-2008, 18:09
Borland Pascal chạy trong môi trường WinDows
Turbo Pascal chạy trong môi trường Dos
Nếu bạn sử dụng Borland thì phải khai báo Uses WinCrt;
Còn sử dụng Turbo thì khai báo Uses Crt;
Nó không có khác nhau mấy đâu bạn

7aijoo
31-05-2008, 21:53
topic từ năm 2005 :|

thuynany
02-06-2008, 11:16
hxnghia oi!Em gái này mới học lớp 8 thui;.Em cần một số đề thi về pascal. Giúp em được ko. mùng 10 tháng 6 em thi rùi.Em cho anh nick chat của em.
Khi nào có bài khó anh giup em nha.
dề: 1,viết chương trình tìm hai số nguyên tố có tổng bằng một số chẵn cho trước.

[=========> Bổ sung bài viết <=========]

diep_thuy_13294
ai có thể giúp tui làm bài tập thì giúp nha.

naruto2007
03-06-2008, 10:41
ẻwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
dễ ghê
chỉ cần nhắn vào nick caubedungcam1995 tui sẽ giải cho

crystalsnow
05-06-2008, 20:57
cho hỏi câu này với!. tui khai báo a:string rồi viết câu lệnh : a[r]:=inc(a[r]); sao nó báo sai kiểu, phải là char mới đúng. vậy sửa làm sao đay?

naruto2007
06-06-2008, 10:32
ông khai báo sai rùi
phải là var a : string mới đúng
thử lại xem nào
nếu có sai thì nói tui coi lại

[color=red]
[=========> Bổ sung bài viết <=========]

thông báo nick của tui đã thay đổi
ai cần gì thì nhắn vào nick
vanhoai_nhoem2001 gặp đạt
hoặc ngo.quocdat gặp tín
tui sẽ giải cho giải hết ko cần báo đáp
hjhjhjhjhjhjhjhjhjhj

vanthuybs
07-07-2008, 09:24
cho minh hoi các pác nào có lý thuyết về đồ thị và đệ qui khong cho minh voi, gửi đến địa chỉ dangvanthuybs@yahoo.com mình cảm ơn nhiều!!

naruto2007
16-07-2008, 10:48
vào download sách của thầy LÊ MINH HOÀNG nè về coi
http://dc41.4shared.com/download/31203908/2775337a/DSAPTextbookSetup.exe?tsid=20080714-093830-f9e964e9

vuatrochoi_07
10-08-2008, 16:57
xin loi thuynany nha bi gio to moi len trang nay nen khong biet ban da gui bai. bay gio ban cung thi xong rui con gi nua ney co y dinh thi he thi vao nick vuatrochoi_07 to cho may bai.

[=========> Bổ sung bài viết <=========]

hoac vao trang http://vn.spoj.pl/ khac co thui

naruto2007
26-08-2008, 18:14
mấy huynh có ai biết lf hok. thảo luận đi nghe nói cái này hay lém

congtan94
27-11-2008, 20:53
Bai nay rat hay. Thanks nhieu.

chipchipoo
25-12-2008, 14:50
ai lam on pót 1 so bai pấcn mau duoc ko minh sap thi rui ma ko bit j het
ai giup duoc minh lam on gui qua mail cho minh nha haryporter_nguoitinhthuychung@yahoo.com.vn

hang_vt
25-12-2008, 17:34
ai lam on pót 1 so bai pấcn mau duoc ko minh sap thi rui ma ko bit j het
ai giup duoc minh lam on gui qua mail cho minh nha haryporter_nguoitinhthuychung@yahoo.com.vn

"pấcn" ? đánh sai chính tả òi :(

nguyentamvnuk
29-12-2008, 13:10
Câu 1:
Viết chương trình nhập vào độ dài các cạnh của 2 hình chữ nhật. Cho biết có thể đặt một trong hai hình chữ nhật vào hình chữ nhật kia không.?

Câu 2:
Viết chương trình nhập từ bàn phím một xâu kí tự. In ra màn hình số từ của xâu (Từ được xem là một nhóm ký tự liền nhau không chứa ký tự trắng).
Ví dụ xâu nhập vào:
Lop toan A1 hoc phong 17

In ra màn hình số từ: 6

Câu 3:
Người ta lưu thông tin các cán bộ trong cơ quan vào fie có tên CANBO.DAT, mỗi cán 1 bộ là một bản gh gồm các trường: STT, Hoten, Ngaysinh, Diachi, HSLuong, HSPhucap, SoDT. Hãy viết chương trình thực hiện các yêu cầu sau:
a) Nhập danh sách cán bộ và lưu vào file, quá trình nhập dừng khi họ tên nhập vào là xâu rỗng và trường STT chưa gán.
b) In ra danh sách cán bộ có hệ số lương nằm trong khoảng từ x đến y, x và y là các số thực được nhập từ bàn phím khi thực hiện chương trình.


Mình giải Bài 1 và Bài 2 nhưng bị lỗi, còn bài 3 thì không biết.
Bạn nào cứu mình với nha.

Đây là bài giải:

Bài 1:
Program HCN;
{Nhap kich thuoc hinh chu nhat va kiem tra hinh nao nam trong}
Var
a1, a2, b1, b2: real;

Begin

Write(‘Nhap chieu dai HCN1: ‘);
Readln(a1);
Write(‘Nhap chieu rong HCN1:’);
Readln(b1);
Write(‘Nhap chieu dai HCN2:’)
Readln(a2);
Write(‘Nhap chieu rong HCN2:’);
Readln(b2);
Writeln(‘Ket qua cua bai toan:’);

If (a2>a1) and (b2>b1)
Then
Writeln(‘HCN1 co the dat trong HCN2’)
Else
If (a2<a1) and (b2<b1)
Then
Writeln(‘HCN2 co the dat trong HCN1’)
Else
If(a2=a1) and (b2=b1)
Then
Writeln(‘HCN1 trung HCN2’)
Else
If(a2>a1) and (b2<1) or (a2<a1) and (b2>b1)
Then
Writeln(‘Khong the long vao nhau’);
Writeln(‘--------------------------------‘);
End.
End.



Bài 2:
Program DEM_TU;
Var
St:String;
Function Sochu (Xau:string):integer;
Var
Dem, i: integer;
Begin
Dem:=0;
i:=1;
Repeat
While((Upcase(xau[i]<’A’) or (Upcase(xau[i]>’Z’))
And (I <=length(Xau)) Do
i:=i+1;
If i <=1 length(xau) then
Dem:=Dem + 1;
While ((upcase(xau[i])=>’A) and (upcase(xau[i])<=’z’))
And (i<=length(xau)) do i:=i+1;
Until i>length(xau);
So chu:=dem;
End;
{------------------------------------------}
Begin
Write(‘-Vui long nhap mot cau:’);
Readln(st);
Writeln(‘-Cau nay co: ‘, So chu (st), ‘tu’);
Readln.
End.

hang_vt
29-12-2008, 18:33
bài 1:
Lỗi vik ct khá nhiều , sai n~ cái đơn giản nhất ( thiếu readln ) . Ý tưởg của bạn khá rắc rối , phức tạp . N~ bài thế này đâu cần phải vik ct rườm rà thế . Khắc phục nha bạn .


var a,b,c,d:integer;
begin
writeln('nhap chieu dai hcn1 ');
readln(a);
writeln('nhap chieu rog hcn1 ');
readln(b);
writeln('nhap chieu dai hcn2 ');
readln(c);
writeln('nhap chieu rog hcn2 ');
readln(d);
if (a<=c) and (b<=d) then writeln('co the dat hcn1 trog hcn2')
else
if (a>=c) and (b>=d) then writeln('co the dat hcn2 trog hcn1')
else writeln('k the dat 2 hcn vào nhau');
readln;
end.

bài 2:


var s:string;
n,d,i:integer;
begin
writeln('nhap xau ki tu');
readln(s);
if s[1]<>' ' then d:=1;
for i:=2 to length(s) do
if (s[i]<>' ') and (s[i-1]=' ') then inc(d);
writeln('co ',d, ' chu');
readln;
end.

tranhiephoi
09-01-2009, 09:49
co ai giup e voi! gio e dang ban lam nhung bai tap pascal ne nhung e dang gap nhieu vuon mac.
bai tap cua e ve tap hop do, bac nao giup voi !!

namguitarist
10-01-2009, 17:53
cái câu g của ma trận là xoắn từ ngoài vào trong là bắt đầu từ vị trí nào vậy? không thì khó làm lắm bạn ạ.

quangdiemhp
13-02-2009, 09:59
Bạn tải chuyên đề "Chuyển đổi hệ đếm trong Turbo Pascal 7.0", tài liệu do tôi viết để tham khảo nhé.
TURBO PASCAL 7.0 (http://download372.mediafire.com/yzgkjhy9x3zg/jt3mh4ocflf/LAP+TRINH+CHUYEN+DOI+HE+DEM+TRONG+TP+7.0.rar)

[=========> Bổ sung bài viết <=========]

Chương trình chuyển đổi hệ đếm trong TP7
http://download372.mediafire.com/yzgkjhy9x3zg/jt3mh4ocflf/LAP+TRINH+CHUYEN+DOI+HE+DEM+TRONG+TP+7.0.rar

play
22-03-2009, 09:12
                             

[=========> Bổ sung bài viết <=========]

                         

[=========> Bổ sung bài viết <=========]

Spam vui thiệt Spam đi Spam Spam dkm thang nao` la`m admin va Mod

quangdiemhp
23-03-2009, 10:15
Bài tính giai thừa kiểu này không ổn. Vì chỉ tính được số <=12 là cùng. Nếu bạn tính số n >=12 và có thể lên tới 100 hoặc lớn hơn thì có thể làm được bằng thuật toán này không?
Mọi góp ý, ý kiến xin chia sẻ qua mail quangdiem_hp@yahoo.com.vn

thanung789
11-05-2009, 09:37
bac nao giai giup em bai nay voi
(đếm từ và chuẩn hóa xâu văn bản ) có nghĩa là người ta cho mot doan van bat minh dem xem co bao nhieu tu o do hay jup em voi nha

[=========> Bổ sung bài viết <=========]

mong moi nguoi giup em voi em rat can bai nay cam on nhieu

thanung789
14-05-2009, 16:47
bác nào có lòng hảo tâm giải giúp em bài này với
" đếm từ va chuẩn hóa xâu văn bản" em ko biết phải bắt đầu từ đâu giúp em với nha

khoc_tham121311
16-05-2009, 15:06
em thấy viết chương trình con khó thế em kg biết làm bài tập hu hu sắp kiểm tra rồi ..........

[=========> Bổ sung bài viết <=========]

có ai có ví dụ bài tập pascal về phần viết chương trình con và mảng không cho em với.càng nhiều càng tốt để em xem cách viết.cảm ơn trước hihi..

Nguyen Nhat Quan
16-05-2009, 19:45
Dùng thủ tục chuyển một số tự nhiên n cho trước sang hệ cơ số 2

procedure change(n:integer;var st:string);
type a:array [0..1] of char=('0','1');
var du,so:integer;
s:string;
begin
s:='';
so:=N;
repeat
du:=so mod 2;
so:=so div 2;
s:=b[du]+s;
until so=0;
st:=s;
end;

anhthu90hy2005
18-05-2009, 11:49
trời ơi
học pasca; khó quá
mới học mà chả biết gì
ai có nhiều bài tập thì cho em xem với

quycoctu
21-07-2009, 20:44
anh chi giúp em đề này em hok bik giải
đề: dùng hàm để giải :
trăm trâu trăm cỏ
trâu đứng ăn năm
trâu nằm ăn ba
ba trâu già ăn một
em sắp nộp bài rồi!!! giúp em với

bld
21-07-2009, 20:52
vét cạn
.....................a cứ code đi mọi người sẽ sửa

lehang_gb1
21-07-2009, 21:00
anh chi giúp em đề này em hok bik giải
đề: dùng hàm để giải :
trăm trâu trăm cỏ
trâu đứng ăn năm
trâu nằm ăn ba
ba trâu già ăn một
em sắp nộp bài rồi!!! giúp em với

Bài này đơn giản mà chỉ cần dùng 3 vòng for thôi phải dùng hàm làm gì cho mệt

[=========> Bổ sung bài viết <=========]



Var
i,j,k:byte;{Sô trau dung, nam, gia}
Begin
For i:=1 to 20 do
For j:=1 to 33
For k:=1 to 100-i-j do
if (5*i+3*j+k/3=100) and (i+j+k=100) then writeln('Trau dung=',i,'Trau nam=',j,'trau gia=',k);
Readln
End.


Var
i,j,k:byte;{Sô trau dung, nam, gia}
Begin
For i:=1 to 20 do
For j:=1 to 33
For k:=1 to 100-i-j do
if (5*i+3*j+k/3=100) and (i+j+k=100) then writeln('Trau dung=',i,'Trau nam=',j,'trau gia=',k);
Readln
End.

quangtq
21-07-2009, 23:08
Cái bài đếm số từ trong xâu thì đơn giản là thế này đỡ phải chuẩn hóa.


n:=length(s);
d:=0; i:=1;
Repeat
While not (Upcase(s[i]) in ['A'..'Z']) do i:=i+1;
If i<n then d:=d+1;
While Upcase(s[i]) in ['A'..'Z'] do i:=i+1;
Until i>n;

Tư tưởng là nhảy qua hết mấy cái space, nếu còn trong xâu thì + d lên. Sau đó nhảy qua hết chữ cái

hang_vt
22-07-2009, 14:19
nếu k phải chuyển hóa thì thế này nhanh hơn k Quang?


for i:=1 to length(s) do
if s[i]=' ' and s[i+1]<>'' then inc(d);

quangtq
22-07-2009, 17:42
Uhm. Cùng là O(N) nhưng pà chị nhanh hơn ở cái khâu kiểm tra.
Chuẩn đấy.

chu hoai
03-08-2009, 23:22
Bạn nào có bài tập pascal cả khó và dễ không cần lời giải gửi lên cho mình xin được không? Mình đang rất cần vì sắp thi tuyễn rồi. Khó khó một chút thì càng tốt để mọi người cùng xem và tham khảo nhé. Thanks

quangtq
03-08-2009, 23:37
Bạn khai bao string lam sao dung duoc lenh inc() no bao sai la dung roi. ban chi dung lenh nay cho cac bien co kieu co TT thoi
Không phải. a là string nhưng a[r] là char là đúng.
Nhưng inc là thủ tục, ko phải hàm. Chỉ phải viết Inc(a[r]) thôi

bld
04-08-2009, 07:44
Bạn nào có bài tập pascal cả khó và dễ không cần lời giải gửi lên cho mình xin được không? Mình đang rất cần vì sắp thi tuyễn rồi. Khó khó một chút thì càng tốt để mọi người cùng xem và tham khảo nhé. Thanks
trong box pascal này có nhiều bài hay lắm . (các topic gần đây)

ga2005
24-09-2009, 17:44
cho 2 tệp: 1.dat, 2.dat . lưu trữ 2 ma trận theo cấu trúc sau:
dòng đầu tệp chứa 2 số nguyên lần lượt là số dòng và số cọt của ma trận
các dòng sau lần lượt là các dòng ma trận tương ứng
Viết chương trình đọc ma trận . Tính ma trận tích nếu có và lưu trữ vào tệp 3.dat với cấu trúc như trên

quangtq
24-09-2009, 17:57
Tích của A(M*N) và B(N*K) là C(M*K)


For i:=1 to m do
For j:=1 to k do
Begin
C[i,j]:=0;
For t:=1 to n do C[i,j]:=C[i,j]+A[i,t]*B[t,j];
End;

lecaothuyduong
26-09-2009, 16:46
giải giùm em bài này với anh chị ơi em cần gấp,em cảm ơn trươc nha
lập trình tính giá trị biểu thức(bằng pascal)
1^2+2^2+3^2+...+n^2(n là số nguyên dương nhập từ bàn phím)

namvv
26-09-2009, 17:31
[QUOTE=
lập trình tính giá trị biểu thức(bằng pascal)
1^2+2^2+3^2+...+n^2(n là số nguyên dương nhập từ bàn phím)[/QUOTE]

Var n:integer;
S:Longint;
Begin
Write('Nhap n=');Readln(n);
S:=0;
for i:=1 ton do s:=s+SQR(i);
Write('Tong la:',s);
Readln
END.

lecaothuyduong
27-09-2009, 10:48
cám ơn bạn đã giải giúp mình nha,thanks nhiều

manhhung022193
01-10-2009, 22:45
program chuong_trinh;{sap xep theo thu tu tang dan cua cot mang 2 chieu}
var a:array[1..100,1..100] of integer;
i,j,n:byte;
procedure nhap;
begin
read(n);
for i:=1 to n do
for j:=1 to n do
read(a[i,j]);
end;
procedure xuly;
var doi:boolean;
tam:integer;
begin
for j:=1 to n do
repeat
doi:=true;
for i:=n downto 2 do
if a[j,i]<a[j,i-1] then
begin
tam:=a[j,i];
a[j,i]:=a[j,i-1];
a[j,i-1]:=tam;
doi:=false;
end;
until doi;
end;
begin
assign(input,'nhap.inp');
assign(output,'xuat.out');
reset(input);
rewrite(output);
nhap;
xuly;
for i:=1 to n do
for j:=1 to n do
writeln(a[i,j],' ');
close(input);
close(output);

end.

hacker1234
02-10-2009, 16:45
green_apples002 này
bạn có thể cho toi làm quen được hok?
tôi đây cũng thik pascal lắm đó
ak nhân tiện hỏi ở đây có ai ở DHKHT-ĐHQGHN hay TPHCM gì không cho làm quen đi

[=========> Bổ sung bài viết <=========]

hey cho tớ hỏi về đồ thị xíu

vuthithuong.nam
15-10-2009, 14:59
mình sắp thi đến nới mà có câu khó quá . Giải giùm mình nhe!
cho tệp Thuong.inp với dòng đầu là số N;
N dòng tiếp theo là N số A[i]
Dòng cuối cùng ghi số B
Yêu cầu lập trinh đưa ra tệp thuong.out dòng đầu ghi co nếu tìn được tổng của M số A[i] bằng B nều không thi ghi là không
M dòng tiếp ghi thứ tự của các A[i] có tổng bằng B nếu tìm thấy
Thank nhiều hen!@!@!@@!!!!!!!!

hxrong
21-10-2009, 21:06
một bàn cờ có 64 ô, ô thứ nhất đặt một hạt thóc, ô thứ hai đặt gấp đôi ô thứ nhất, ô thứ ba gấp đôi ô thứ 2, cứ như thế cho đến hết 64 ô (ô sau gấp đôi ô trước) tính số hạt thóc có trên bàn cờ.
ai giải giúp em bài tập pascal này, em cảm ơn

[=========> Bổ sung bài viết <=========]

ai giup mình với: trong pascal làm thế nào để tính lũy thừa của một số thì viết như thế nào?
ví dụ 3 lũy thừa 5

phongtran92
21-10-2009, 21:39
với số lũy thừa lớn 2^64 thì bạn ko thể làm thông thường dc !! phải chuyển tất cả các số muốn thao tác thành dạng chuỗi sau đó lập trình cho nó cộng trừ nhân chia bằng dạng chuỗi !! (Dùng các quy tắc đã dc học ở lớp 5 ^^)

Tiểu Tuyết Hồ
26-12-2009, 11:01
Các bạn làm giúp mình mấy bài này với
Chương 1
1) Viết thuật giải nhập 1 số từ bàn phím và in ra bình phương của số đó nếu số đó dương
2) Viết thuật giải nhập từ bàn phím 1 số tự nhiên N và in ra các số nguyên trong phạm vi từ 1 đến N
3) Viết thuật giải nhập từ bàn phím 2 số tự nhiên m,n (mHướng dẫn: Để kiểm tra xem 1 số x có chia hết cho m ko ta dùng biểu thức kiểm tra X MOD M = 0. Nếu biểu thức này đúng thì x chia hết cho m
4) Viết thuật giải nhập 3 số từ bàn phím và in ra số lớn nhất trong 3 số đó
5) Viết thuật giải nhập 2 số từ bàn phím và in ra UCLN, BCNN của 2 số đó
Hưỡng dẫn: UCLN của 2 số m và n (UCLN(m,n)) được tính như sau:
UCLN(m,m)=m
UCLN(m,n)= UCLN(m-n,n) với m>n
UCLN(m,n-m) với n>m
BCNN(m,n)=m*n/UCLN(m,n)

Chương 2
1) Tọa độ con trỏ là bao nhiêu khi thực hiện xong các lệnh sau:
Gotoxy(12,10); Write('123'); Readln; Writeln('123');
2) Tọa độ con trỏ là bao nhiêu khi thực hiện xong các lệnh sau:
Gotoxy(5,5); Write('123'); ClrScr; Readln; Writeln('123');
3) Viết chương trình tính lương của 1 nhân viên
Yêu cầu: Nhập vào mức lương cơ bản của nhân viên, số ngày nghỉ làm việc trong tháng. In ra tiền lương của nhân viên đó, biết rằng:
Tiền lương = Lương + Phụ cấp
Lương = (Lương hệ số + Phụ cấp)*(26-số ngày nghỉ)
Lương hệ số = Mức lương cơ bản * 22500
Phụ cấp = Lương hệ số * 10%
4) Khi gửi tiền ở ngân hàng, người gửi được hưởng lãi suất lũy tiến nếu ko lấy lãi từng tháng. Viết chương trình để tìm số tiền được lĩnh sau N tháng gửi với T đồng gửi lúc đầu và lãi suất là h% 1 tháng
5) Viết chương trình đọc vào tên mặt hàng, đơn vị tính, đơn giá, số lượng. Tính thành tiền theo công thức: Thành tiền = Đơn giá * Số lượng
Sau đó đưa dữ liệu ra màn hình theo bảng sau:
======================================…
! Tên hàng ! Đơn vị ! Đơn giá ! Số lượng ! Thành tiền !
!-------------- !-----------!--------------!------------…
! ! ! ! ! !
======================================…
6) Khoanh vào câu trả lời đúng giá trị của biến T sau khi thực hiện đoạn chương trình sau:
x:=5; y:=x*x; x:=x*y; T:=x=100; T=?
A.25
B.26
C.27
D.28

Chương 3
1) Viết chương trình nhập họ tên, chỉ số điện tiêu thụ và tính tiền điện cho khách hàng theo quy định sau:
- Định mức tiêu thụ 80 KW/tháng
- Trong phạm vi định mức thì lấy giá 200 đ/KW
- Số KW vượt định mức thì tính 350 đ/KW
2) Viết chương trình nhập vào 3 số. In ra số lớn nhất và số nhỏ nhất trong 3 số này
3) Viết chương trình nhập 3 số a, b, c. Giải phương trình ax b = c
4) Viết chương trình giải phương trình bậc 2: ax*x+bx+c=0
5) Viết chương trình nhập vào 1 số tiền Việt và tỷ giá quy đổi ra USD. In ra màn hình số lượng USD tương ứng với số tiền đã nhập
6) Viết chương trình nhập điểm cho 1 sinh viên gồm 3 môn toán, lý, hóa. Tính điểm trung bình (TB) của sinh viên này và in ra:
- "Xuất sắc" nếu điểm TB>=9
- "Giỏi" nếu 8<=TB<9
- "Khá" nếu 6.5<=TB<8
- "Trung bình" nếu 5<=TB<6.5
- "Yếu" nếu điểm TB <5
7) Viết chương trình yêu cầu người sử dụng nhập vào 1 ký tự. Nếu ký tự nhập vào là 'a' thì in ra 'Xin chào các bạn.'; nếu ký tự nhập vào là 'd' thì in ra 'Hoan nghênh.'; nếu nhập các ký tự khác thì in ra thông báo 'Xin lỗi. Hôm nay nghỉ.'
8) Viết chương trình nhập từ bàn phím 3 số nguyên a, b, c. Sau đó thể hiện menu sau trên màn hình và yêu cầu người sử dụng lựa chọn 1 giá trị. Với giá trị nhập vào hãy thực hiện công việc tương ứng
*******************************
* Hãy chọn 1 công việc *
* 1. Tính a+b+c *
* 2. Tính a*b*c *
* 3. In ra giá trị lớn nhất *
* 4. In ra giá trị nhỏ nhất *
******************************
9) Viết chương trình nhập 3 số a, b, c và thể hiện trên màn hình thông báo sau:
Chọn 1 công việc:
1. Giải phương trình ax+b=c
2. Giải phương trình ax*x+bx+c=0
Với giá trị người sử dụng nhập vào, hãy thực hiện công việc tương ứng. Với giá trị khác 1 và 2 thì in ra thông báo 'Xin chào.'
10) Hãy dùng vòng lặp For để viết chương trình tính các biểu thức sau:
a. S=1+3+5+...+2n-1
b. S=2+4+6+...+2n
c. S=1+1/2+1/3+...+1/n
11) Hãy dùng vòng lặp For để viết chương trình tính tổ hợp chập j của n phần tử
= n!/(j!*(n-j)!)
12) Hãy dùng vòng lặp For để viết chương trình in ra màn hình tất cả các số có 4 chữ số abcd thỏa mãn a+b=c+d
13) Hãy dùng vòng lặp For để viết chương trình nhập vào 1 số nguyên dương n và in ra màn hình tất cả các ước số của nó
14) Viết chương trình nhập 1 số nguyên dương h và dùng vòng lặp For in ra 3 hình tam giác cân có chiều cao h như sau:
***** * * * * *
******* * * * *******
15) Viết chương trình nhập vào 1 số nguyên dương N và dùng vòng lặp For in ra tất cả các số chính phương trong phạm vi N, các số lẻ trong phạm vi N, các số chẵn trong phạm vi N
16) Hãy dùng vòng lặp For để viết chương trình in ra màn hình các số từ 0 đến 99 theo quy cách mỗi số chiếm 2 chỗ, giữa các số có dấu cách và in ra theo mẫu sau:
0 1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19
20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39
...
90 91 92 93 94 95 96 97 98 99
17) Viết chương trình nhập từ bàn phím vào 2 số nguyên và dùng vòng lặp While...Do để tính ước số chung lớn nhất (USCLN) của chúng
Hướng dẫn: Sử dụng tính chất sau:
USCLN(m,n) = m nếu m=n
= USCLN(m-n,n) nếu m>n
= USCLN(m,n-m) nếu m
18) Hãy dùng cấu trúc lặp Repeat...Until để viết chương trình nhập vào các số thực cho đến khi số 0 được nhập vào và cho biết:
a. Số phần tử đã nhập
b. Tổng của các phần tử đã nhập
c. Giá trị lớn nhất
d. Giá trị nhỏ nhất
19) Viết chương trình tìm tất cả các phương án trả tiền cho 1 số tiền cho trước (số tiền này nhập từ bàn phím). Biết rằng trong kho hiện đang có các loại giấy bạc 5000,2000,1000,10000,20000
20) Viết chương trình giải bài toán cổ và in ra số trâu mỗi loại:
Trăm trâu trăm cỏ
Trâu đứng ăn nằm
Trâu nằm ăn ba
Lụ khụ trâu già
Ba con 1 bó

Chương 4
1) Viết chương trình nhập vào 5 số từ bàn phím và in ra số lớn nhất, số nhỏ nhất trong 5 số đó. Sử dụng chương trình tìm số lớn nhất, nhỏ nhất trong 2 số làm chương trình con
2) Viết chương trình nhập 3 số từ bàn phím và tìm USCLN của 3 số đó. Sử dụng chương trình tìm USCLN của 2 số làm chương trình con
3) Viết 1 hàm để tính tiền điện như sau:
Function Tiendien(SoKW:integer):LongInt;
trong đó SoKW: là số KW điện tiêu thụ trong tháng
Hàm Tiendien trả về trị số là số tiền điện phải trả. Cách tính tiền điện như sau:
Từ KW thứ 1 đến 50: 250 đồng/KW
Từ KW thứ 51 đến 70: 300 đồng/KW
Từ KW thứ 71 đến 100: 350 đồng/KW
Từ KW thứ 101 trở lên: 400 đồng/KW
4) Tạo các hàm xử lý chuỗi với tên và chức năng như sau:
a. Function Left(S:String;n:byte):String
Chức năng: cho kết quả là 1 chuỗi con lấy ra n ký tự từ chuỗi S tính từ vị trí ngoài cùng bên trái sang phải của chuỗi
b. Function Right(S:String;n:byte):String
Chức năng: Cho kết quả là 1 chuỗi con lấy ra n ký tự từ chuỗi S tính từ vị trí ngoài cùng bên phải sang trái của chuỗi
c. Function RTRIM(S:String):String
Chức năng: loại bỏ các ký tự trắng nằm ở phần cuối của chuỗi S
d. Function LTRIM(S:String):String
Chức năng: loại bỏ các ký tự trắng nằm ở đầu chuỗi S
e. Function IIF(a:boolean;S1,S2:String):String
Chức năng: Trả về chuỗi S1 nếu a=TRUE,về S2 nếu a=FALSE
VD: IIF(Tuoi<17,'Thieu nien','Thanh nien');
5) Viết chương trình dùng giải thuật đệ quy để tính giá trị của hàm F(n). Biết hàm này được tính theo công thức sau:
F(0)=0
F(1)=1
F(n)-F(n-1)=2*(F(n-1)-F(n-2))

Chương 5
1) Biết rằng S1 là 1 biến được khai báo như sau:
Var S1: ('Chunhat','Hai','Ba','Tu','Nam','Sau','Bay');
Hỏi S1 thuộc kiểu gì?
2) Cho kiểu liệt kê Week=(Sun,Mon,Tue,Wed,Thu,Fri,Sat).
a. Tính giá trị của biểu thức (ORD(Mon)=2)
b. Tính giá trị của biểu thức Pred(Mon)
c. Tính giá trị của biểu thức Succ(Wed)
3) Biết rằng trong chương trình có sử dụng hàm Pred(n). Hãy xác định tất cả các kiểu có thể khai báo cho n
4) Biết rằng trong chương trình có sử dụng 1 lệnh gán i:=ORD(n). Hãy xác định các kiểu có thể sử dụng được trong khai báo của n

Chương 6
1) Viết chương trình nhập 1 dãy gồm N ký tự. In ra màn hình theo thứ tự ngược lại với thứ tự nhập
2) Cho mảng A có n phần tử nguyên (n:hằng số). Viết chương trình xây dựng lại mảng A theo yêu cầu sau:
A(1)=Min A(i) i=1,...,n
A(2)=Max A(i)
A(3)>=A(4)>=A(5)>=...>=A(n)
3) Cho mảng A có n phần tử là những giá trị nguyên (n:hằng số). Viết chương trình để:
- Tính trung bình cộng các phàn tử dương trong mảng
- Sắp xếp mảng theo thứ tự giảm dần
4) Viết chương trình nhập vào 1 dãy gồm n số nguyên. In ra màn hình:
- 1 dòng gồm các số lẻ của dãy
- 1 dòng gồm các số chẵn của dãy
- 1 dòng gồm các số >=100 của dãy
- 1 dòng gồm các số <100 của dãy
5) Viết chương trình nhập 1 dãy n số nguyên (n: hằng số). In ra màn hình các giá trị khác nhau của dãy số này
VD:- Nhập vào 5 20 15 5 20 17
In ra 5 20 15 17
6) Cho 1 dãy gồm n số nguyên dương có 3 chữ số, hãy sắp xếp dãy theo thứ tự tăng dần của chữ số hàng đơn vị; hàng đơn vị bằng nhau thì sắp xếp theo thứ tự tăng dần của hàng chục; hàng đơn vị và hàng chục bằng nhau thì sắp xếp theo thứ tự tănh dần của hàng trăm
7)Cho 2 mảng A, B đã được sắp xếp theo thứ tự tăng dần. Hãy trộn 2 mảng đó lại với nhau để có mảng thứ 3 là mảng C với điều kiện mảng C cũng được sắp xếp theo thứ tự tăng dần ngay sau khi trộn

Chương 7
1) Biết rằng các biến St1,St2,St3 được khai báo như sau:
Var St1, St2, St3 :String[12]
Tính giá trị của St3 sau khi thực hiện các lệnh sau:
St1:='KIEMTRA'; St2:='PASCAL'; St3:=St1+St2;
2) Tính giá trị của S (với S có kiểu String) sau khi thực hiện các lệnh dưới đây:
S:='F la mot so nguyen to';
Delete(S,3,5);
3) Viết chương trình nhập vào 10 chuỗi ký tự. In ra chuỗi có chiều dài dài nhất, chuỗi có chiều dài ngắn nhát
4) Viết chương trình nhập vào 1 chuỗi và in ra màn hình chuỗi đó theo từng dạng sau:
VD: Nhập vào chuỗi 'Toi di hoc'
a. In ra dạng
T
TO
TOI
.............
TOI DI HOC
b. In ra dạng
T
TO
TOI
............
TOI DI HOC
c. In ra dạng
T
TO
TOI
............
TOI DI HOC
5)Viết chương trình nhập vào 1 chuỗi gồm nhiều từ cách nhau bởi dấu cách. In ra từng từ 1 của chuỗi đó, mỗi từ in trên 1 dòng
VD: Nhập vào TOI DI HOC
In ra màn hình:
TOI
DI
HOC
6) Viết chương trình nhập vào 1 chuỗi sau đó in ra chuỗi đó theo chiều ngược lại
VD: Nhập: 123 456 789
In ra: 987 654 321
7) Viết chương trình nhập vào 1 câu gồm nhiều từ cách nhau bởi khoảng trắng. In ra số từ trong câu đó
8) Viết chương trình nhập vào 1 câu và đếm số lần xuất hiện của từng ký tự trong câu đó
VD: Nhập vào: 'Trời mưa to'
In ra: Số lần xuất hiện của ký tự T là 1
Số lần xuất hiện của ký tự r là 1
Số lần xuất hiện của ký tự o là 2
...
9)Viết chương trình nhập vào 1 câu quảng cáo và i ra trên màn hình dòng quảng cáo đó được chạy từ trái sang phải

[=========> Bổ sung bài viết <=========]

làm trước hộ mình mấy câu này nha
Chương 6
5) Viết chương trình nhập 1 dãy n số nguyên (n: hằng số). In ra màn hình các giá trị khác nhau của dãy số này
VD:- Nhập vào 5 20 15 5 20 17
In ra 5 20 15 17
6) Cho 1 dãy gồm n số nguyên dương có 3 chữ số, hãy sắp xếp dãy theo thứ tự tăng dần của chữ số hàng đơn vị; hàng đơn vị bằng nhau thì sắp xếp theo thứ tự tăng dần của hàng chục; hàng đơn vị và hàng chục bằng nhau thì sắp xếp theo thứ tự tănh dần của hàng trăm
7)Cho 2 mảng A, B đã được sắp xếp theo thứ tự tăng dần. Hãy trộn 2 mảng đó lại với nhau để có mảng thứ 3 là mảng C với điều kiện mảng C cũng được sắp xếp theo thứ tự tăng dần ngay sau khi trộn
thanks mọi người nhìu

peterprodarwin
26-01-2010, 06:40
moi nguoi thu jai bai ma tran nay xem

* 9 7 5 3 1
9 7 5 3 1 2
7 5 3 1 2 4
5 3 1 2 4 6
3 1 2 4 6 8
1 2 4 6 8 *

nh0xPun
16-03-2010, 10:26
mấy bác ơi làm zùm em bài lài đc không
viết chương trình nhập vào 1 số nguyên n
a/in ra chữ số hàng đơn vị
b/.................chục
c/.................trăm
d/đếm N có bao nhiêu chữ số

[=========> Bổ sung bài viết <=========]

mấy bác zúp em cái :L:L:L:L :((:((:((

first_love0o0
27-03-2010, 17:16
ai co the giup em khao sat va ve do thi ham so bac 3 bang pascal voi'

[=========> Bổ sung bài viết <=========]

co the gui vao mail :nguyenduchien2608@gmail.com

ngocheocr
04-04-2010, 09:15
các bạn có thể giúp mình giải 3 BT tin học sử dụng hàm (function) với nhé:
BT1:Viết hàm tính n!
BT2:Viết hàm tính tổng các số chẵn từ a đến b
BT3:Viết hàm tính số lớn nhất trong 10 số
mong các bạn giúp mình trong thời gian ngắn. Came ơn các bạn nhiều !!!

etc2012
27-05-2010, 16:44
xin các bác giải giúp em bài này được không ạ.
Lập chương trình để in ra màn hình tam giác sau.
n n-1 n-2.....3 2 1
n-1 n-2 n-3.....2 1
.
.
.
3 2 1
2 1
1
với n nguyên dương nhập từ bàn phím

nhat_truong
30-05-2010, 21:59
to etc2012


uses crt;
var n, i, j: integer;
begin
clrscr;
write('Nhap N: ');
readln(N);
for i:=N downto 1 do
begin
for j:=i downto 1 do write(j:3);
writeln;
end;
readln
end.

macvosong
13-08-2010, 12:40
các bạn có thể giúp mình làm mẫu bài nay ko? mình chỉ không biết nên xử lý các tập tin input và out put thế nào thôi
đề :
- Đọc số nguyên dương n từ tập từ tập tin input.txt (n<=100)
- Tính kết quả của biểu thức T với : T=1-2+3-4+...n
- Ghi các kết quả ra tập tin output.txt



các bạn giúp minh giải bài này với nhe.thanks nhìu

nhok_9x
10-10-2010, 20:43
anh chị ơi.!!!
Anh chị chỉ giùm em cách học pascal với, em thấy học pascal khó quá.!!!hjjj cô cho 1 đống bài tập nhưng em bó tay...!!!

zummy92
15-11-2010, 23:32
các bác ơi giúp em với.đến thứ 5 Em phài nộp bài kiểm tra oy!hjx!thanks các bác nhiu2!
bai 1:cho dãy số gồm n phần tử(n<=5),giá trị từng phần tử là số thực.thực hiện các yêu cầu sau:
a, nhập từ bàn phím số phần tử và giá trị của từng phần tử.
b, sắp xếp dãy đã cho theo chiều tăng dần về giá trị của từng phần tử
c, in dãy số nhập vào và dãy sau khi sắp ra màn hình
bai 2:cho dãy số gồm n phần tử(n<=20),giá trị từng phần tử là số thực.thực hiện các yêu cầu sau:
a, nhập từ bàn phím số phần tử và giá trị của từng phần tử.
b,tìm phần tử nhỏ nhất trong dãy và chỉ ra vị trí của tất cả các phần tử đạt giá trị nhỏ nhất(nếu có)
c, in dãy số nhập ra màn hình và các kết quả tìm được
d, thêm vào đoạn chương trình câu hỏi đáp:co tinh tiep khong(c/k)?
nếu gõ C hoặc c thì chương trình thực hiện lại từ đầu

[=========> Bổ sung bài viết <=========]

giúp lẹ dùm em nha!thanks mọi người nhju!

cyber2006
16-11-2010, 17:37
em có bài này các bác giúp với chết mất thôi. nhờ bác chủ thớt nhé

3.(2đ) Một cửa hàng đại lý thu đổi ngoại tệ cho Ngân hàng Ngoại thương Việt nam. Biết số tiền USD đã thu được mỗi ngày trong tháng 8/2010. Hãy viết chương trình để nhập vào, tính và in ra số tiền VND đã phải chi trả trung bình mỗi ngày. Biết rằng tỷ giá quy định của ngân hàng là 1 USD = 19540 VND.

4 (2đ). 4(4đ).Có 20 nhân viên đại diện cho 200 đơn vị đến mua hàng, mỗi người chỉ mua một loại hàng. Biết tên nhân viên, đối tượng đơn vị mà nhân viên đó làm đại diện, số lượng hàng đã mua của mỗi nhân viên, đơn giá bán của mặt hàng mà nhân viên đó đã mua. Hãy viết chương trình PASCAL để tính và in ra BÁO CÁO KINH DOANH VĂN HOÁ PHẨM CUỐI NĂM 2009. Bảng gồm các cột: số thứ tự, tên nhân viên, số lượng, tổng số tiền thực thu. Đối tượng mà nhân viên đó đại diện cho đơn vị có ba loại: Đơn vị là "Đại lý", Đơn vị là "Doanh nghiệp" và đơn vị là "Khách lẻ", nếu "Đại lý" thì đơn giá bán buôn bằng 75% đơn giá bán lẻ, nếu đơn vị là "Doanh nghiệp" thì đơn gia bán buôn là 90% đơn giá bán lẻ, còn "Khách lẻ" đơn giá không giảm.

[=========> Bổ sung bài viết <=========]

Học kinh tế mà thầy giao bài quá trời luôn

lamdangnhap
05-12-2010, 09:30
các anh giai giúp em bài này với:
"Quay an can su dung d1 d2 d3... dN khan cho N ngay lien tiep.
Khach san co the:
- Mua A dong 1 khan
- Thue giat B dong mot khan (Nhan khan giat vao ngay hom sau)
- Thue giat cham C dong mot khan (Nhan khan giat vao 2 ngay sau i ---> i+2)
Gia su trong ngay 1 khach san chua co khan.Hay lap ke hoach mua va giat sao
cho dam bao yeu cau ve so luong khan va chi phi la nho nhat.
Dữ liệu:
KHAN.INP
D1 N A B C(N < 100 , A>B>C>0)
D2 N so nguyen di cach nhau 1 dau cach.
KHAN.OUT
D1 Chi phi
N dong tiep ghi 2 so nguyen M[i] T[i].
la so khan can mua thue giat cho ngay i./."
em ngồi nghĩ ko ra. em chi mới học dạng này thôi.các anh giúp em với

thayhungvn
09-03-2011, 14:00
mình đang kiếm bộ tài liệu ôn thi hs giỏi thcs môn tin học về pascal nhưng chưa biết kiếm` đâu bạn nào có cho mình xin.cam on

xuperman
09-03-2011, 14:03
mình đang kiếm bộ tài liệu ôn thi hs giỏi thcs môn tin học về pascal nhưng chưa biết kiếm` đâu bạn nào có cho mình xin.cam on

Thầy giáo à, hê thầy nhiệt tình quá, chắc đào tạo học sinh giỏi tin thi olimpyc hả thầy.Chúc thầy may mắn

vietgiap
29-03-2011, 21:26
Tôi cũng là giáo viên thcs cũng đang rìm tài liệu ôn thi olympic tin. Ban nào có thì chia sẻ nhe! Mail của mình là: nguyenvietgiap@gmail.com