Giúp bài tập pascal cần rất gấp

horseman

New member
Để quản lý thông tin của học sinh ở trường, người ta yêu cầu cần quản lý các dữ liệu sau:
+ Họ tên
+ Điểm Toán
+ Điểm Văn
+ Điểm Anh
+ Điểm trung binh
a> Hãy xây dựng kiểu bản ghi với cấu trúc như mô tả ở trên
b> Khai báo một mảng động kiểu bản ghi học sinh và sinh số liệu ngẫu nhiên cho mảng
+ Sinh họ tên ngẫu nhiên
+ Sinh điểm các môn ngẫu nhiên và tính điểm trung bình biết Toán x1, Văn x2, Anh x3
c> Nhập giá trị điểm môn Toán từ bàn phím, hãy tìm tất cả các học sinh trong danh sách có điểm môn Toán bằng với giá trị vừa nhập và xuất ra màn hình theo mẫu sau: Hoten-Toan-Van-ANh. Có thống kê số lượng tìm kiếm.
d> Hãy tìm điểm trung bình lớn nhất và liệt kê các học sinh có điểm trung bình lớn nhất theo mẫu ở câu Hoten-Toan-Van-Anh-DTB
e> Hãy sắp xếp danh sách học sinh trên theo chiều giảm dần của điểm trung bình
Em xin cảm ơn:m/
 

Viết Sang

Moderator
Để quản lý thông tin của học sinh ở trường, người ta yêu cầu cần quản lý các dữ liệu sau:
+ Họ tên
+ Điểm Toán
+ Điểm Văn
+ Điểm Anh
+ Điểm trung binh
a> Hãy xây dựng kiểu bản ghi với cấu trúc như mô tả ở trên
b> Khai báo một mảng động kiểu bản ghi học sinh và sinh số liệu ngẫu nhiên cho mảng
+ Sinh họ tên ngẫu nhiên
+ Sinh điểm các môn ngẫu nhiên và tính điểm trung bình biết Toán x1, Văn x2, Anh x3
c> Nhập giá trị điểm môn Toán từ bàn phím, hãy tìm tất cả các học sinh trong danh sách có điểm môn Toán bằng với giá trị vừa nhập và xuất ra màn hình theo mẫu sau: Hoten-Toan-Van-ANh. Có thống kê số lượng tìm kiếm.
d> Hãy tìm điểm trung bình lớn nhất và liệt kê các học sinh có điểm trung bình lớn nhất theo mẫu ở câu Hoten-Toan-Van-Anh-DTB
e> Hãy sắp xếp danh sách học sinh trên theo chiều giảm dần của điểm trung bình
Em xin cảm ơn:m/
Đây là bài cơ bản nhất. Vui lòng đọc kỹ giáo trình để tìm ra hướng giải :)
 

rcp

Administrator
Trích:
Nguyên văn bởi horseman
Để quản lý thông tin của học sinh ở trường, người ta yêu cầu cần quản lý các dữ liệu sau:
+ Họ tên
+ Điểm Toán
+ Điểm Văn
+ Điểm Anh
+ Điểm trung binh
a> Hãy xây dựng kiểu bản ghi với cấu trúc như mô tả ở trên
b> Khai báo một mảng động kiểu bản ghi học sinh và sinh số liệu ngẫu nhiên cho mảng
+ Sinh họ tên ngẫu nhiên
+ Sinh điểm các môn ngẫu nhiên và tính điểm trung bình biết Toán x1, Văn x2, Anh x3
c> Nhập giá trị điểm môn Toán từ bàn phím, hãy tìm tất cả các học sinh trong danh sách có điểm môn Toán bằng với giá trị vừa nhập và xuất ra màn hình theo mẫu sau: Hoten-Toan-Van-ANh. Có thống kê số lượng tìm kiếm.
d> Hãy tìm điểm trung bình lớn nhất và liệt kê các học sinh có điểm trung bình lớn nhất theo mẫu ở câu Hoten-Toan-Van-Anh-DTB
e> Hãy sắp xếp danh sách học sinh trên theo chiều giảm dần của điểm trung bình

Đây là bài cơ bản nhất. Vui lòng đọc kỹ giáo trình để tìm ra hướng giải :)

Chào bạn horseman,

Đúng như lời bạn Viết Sang nói trên đây, bài tập của bạn khá là cơ bản. Bạn hãy tập tành đọc xem giáo trình, từ đó mày mò tự giải đáp.

Xong rồi và nếu ko ăn chắc thì bạn cứ đưa bài giải đáp của bạn lên đây, thể nào cũng có các bạn khác giải thich thêm hoặc góp ý để hướng dẫn thêm cho bạn hiểu hen.

Chúc bạn học tập tốt.

--- rcp ---
 

horseman

New member
Mình không khai báo được. Bạn chỉ giúp mình khai báo ( tức làm câu a b ) giúp mình.
 

Viết Sang

Moderator
Mình không khai báo được. Bạn chỉ giúp mình khai báo ( tức làm câu a b ) giúp mình.
Như đã nói ở trên. Xin nhắc lại cho bạn là điều cấm kị của "Programmer" là làm giúp (dùm). Nói thẳng là COPY. Bạn hãy viết những gì bạn suy nghĩ để tìm ra hướng. Bạn có thể gửi bài của bạn lên đây để mọi người khác góp ý bài làm cho bạn (không giải hay làm giúp) để bạn hiểu và lần sau không có đi hỏi nữa :).

VS biết bạn là một người mới lập trình nên vấp phải là đúng. Nhưng những gì VS học được thì sẽ truyền đạt lại cho bạn (nếu bạn có theo nghề lập trình)
 

horseman

New member
Type
quanly=record
hoten:string[30];
toan,van,anh,dtb:real;
end;
var
a:array of quanly;
i,n,d:integer;
m:real;
max:real;
begin
write(' So hoc sinh : '); readln(n);
setlength(a,n);
randomize;
for i:= low(a) to high(a) do
begin
a.hoten:=chr(random(26)+65);
a.toan:=random*random(11);
a.van:=random*random(11);
a.anh:=random*random(11);
a.dtb:=(a.toan+a.van*2+a.anh*3)/6;
writeln(' hoten : ',a.hoten);
writeln(' Diem Toan : ',a.toan:0:2);
writeln(' Diem Van : ',a.van:0:2);
writeln(' Diem Anh : ',a.anh:0:2);
writeln(' DTB : ',a.dtb:0:2);
end;
write(' Nhap diem Toan : ');readln(m);
d:=0;
for i:= low(a) to high(a) do
if (a.toan= m) then
begin
writeln(' Ho ten:',a.hoten,'-Toan:',m:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2);
d:=d+1;
end;
if (d=0) then writeln(' khong co hoc sinh nao ')
else
writeln(' co ',d, ' hoc sinh co diem Toan = ',m:0:2);
max:=a[0].dtb;
for i:=low(a)+1 to high(a) do
if (max<a.dtb) then max:=a.dtb;
writeln(' hoc sinh co dtb lon nhat la : Hoten:',a.hoten,'-Toan:',a.toan:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2,'-DTB:',max:0:2);

readln;
end.

ĐÂY la bài cua minh . Nhưng no vẫn không chạy đúng . Phần in ra học sinh có điểm trung bình lớn nhất.

writeln(' hoc sinh co dtb lon nhat la : Hoten:',a.hoten,'-Toan:',a.toan:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2,'-DTB:',max:0:2);
Nó chỉ in ra DTB mã, còn họ tên ĐIem TOán VĂn Anh thì của thg Cuối cùng.
Bạn đọc và sửa lại cho mình vs. thank
 

rcp

Administrator
Type
quanly=record
hoten:string[30];
toan,van,anh,dtb:real;
end;
var
a:array of quanly;
i,n,d:integer;
m:real;
max:real;
begin
write(' So hoc sinh : '); readln(n);
setlength(a,n);
randomize;
for i:= low(a) to high(a) do
begin
a.hoten:=chr(random(26)+65);
a.toan:=random*random(11);
a.van:=random*random(11);
a.anh:=random*random(11);
a.dtb:=(a.toan+a.van*2+a.anh*3)/6;
writeln(' hoten : ',a.hoten);
writeln(' Diem Toan : ',a.toan:0:2);
writeln(' Diem Van : ',a.van:0:2);
writeln(' Diem Anh : ',a.anh:0:2);
writeln(' DTB : ',a.dtb:0:2);
end;
write(' Nhap diem Toan : ');readln(m);
d:=0;
for i:= low(a) to high(a) do
if (a.toan= m) then
begin
writeln(' Ho ten:',a.hoten,'-Toan:',m:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2);
d:=d+1;
end;
if (d=0) then writeln(' khong co hoc sinh nao ')
else
writeln(' co ',d, ' hoc sinh co diem Toan = ',m:0:2);
max:=a[0].dtb;
for i:=low(a)+1 to high(a) do
if (max<a.dtb) then max:=a.dtb;
writeln(' hoc sinh co dtb lon nhat la : Hoten:',a.hoten,'-Toan:',a.toan:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2,'-DTB:',max:0:2);

readln;
end.

ĐÂY la bài cua minh . Nhưng no vẫn không chạy đúng . Phần in ra học sinh có điểm trung bình lớn nhất.

writeln(' hoc sinh co dtb lon nhat la : Hoten:',a.hoten,'-Toan:',a.toan:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2,'-DTB:',max:0:2);
Nó chỉ in ra DTB mã, còn họ tên ĐIem TOán VĂn Anh thì của thg Cuối cùng.
Bạn đọc và sửa lại cho mình vs. thank



Bài của bạn bị sai ở đoạn:
---Sai...
for i:=low(a)+1 to high(a) do
if (max<a.dtb) then max:=a.dtb;
writeln(' hoc sinh co dtb lon nhat la : Hoten:',a.hoten,'-Toan:',a.toan:0:2,'-Van:',a.van:0:2,'-Anh:',a.anh:0:2,'-DTB:',max:0:2);
---...sai.

-------------------->>>>Nên sửa lại như sau:
---Sửa..
var
..
maxD: quanly;
...
for i:=low(a) to high(a) do
begin
if (max<a.dtb) then
begin
max:=a.dtb;
maxD.hoten:= a.hoten
maxD.toan:=a.toan
maxD.van:=a.van
maxD.anh:=a.anh
end;
end;
// Hoten-Toan-Van-Anh-DTB học sinh có điểm trung bình lớn nhất
writeln(' hoc sinh co dtb lon nhat la :
Hoten:',maxD.hoten,'-Toan:',maxD.toan:0:2,'-Van:',maxD.van:0:2,'-Anh:',maxD.anh:0:2,'-DTB:',max:0:2);
end;
---..Sửa.


TB.: bạn nên tự suy ra xem tại sao bị sai hen..

--- rcp ---
 

Facebook Comment

Similar threads
Thread starter Tiêu đề Diễn đàn Trả lời Ngày
T Bí quyết bài trí bàn học theo phong thủy để giúp con học tập tốt Du lịch - Mua sắm 0
N Giúp mình viết bài luận này với,cần gấp lắm CLB Tiếng Anh 2
K Giúp chèn flash vào bài viêt Phần cứng 1
Z Có một số bài mình sưu tầm được, nhưng ko biết tác giả, ai biết thì chỉ giúp nhé Thơ 1
P [Hà Nội] Những điểm hấp dẫn của Feliz Homes giúp bạn cảm thấy thoải mái Nhà đất Đà Nẵng 0
Q Root máy Android có giúp máy mạnh hơn không? Hỏi đáp Tin học 0
bbcincorporation [Tin tức] Kính thông minh giúp người khuyết tật của chàng trai Đà Nẵng Thông tin & Giao lưu 0
A [Phần mềm] Bí kíp giúp bạn thu hàng trăm đơn hàng từ phương pháp nuôi fanpage Website - Blog 0
A [Phần mềm] Tuyệt chiêu giúp bạn kinh doanh trên facebook hiệu quả Website - Blog 0
P Hầu hết chúng ta thường lợi dụng điểm yếu của người khác thay vì giúp đỡ họ khắc Lời muốn nói 0
D Giúp đỡ Ngôn ngữ WEB 2
rcp [Sự kiện] Xe chở bia bị lật, dân giúp tài xế thu gom Tin tức 24h 0
L Thực đơn của bé giúp bé ăn ngoan mà dinh dưỡng đầy đủ Cà phê - ẩm thực 2
Q Có người giúp sức trong vụ “nổ mìn tự sát cùng người yêu cũ”? Tin tức 24h 0
Viết Sang Nhờ tư vấn giúp về máy ảnh KTS CLB NHIẾP ẢNH ĐÀ NẴNG 4
N Nhờ các bạn dịch giúp CLB Tiếng Trung 0
BNN [Thương hiệu] 5 yếu tố giúp định giá sản phẩm Tổng quát thương hiệu 0
BNN [Marketing] Bao bì tốt giúp bán được nhiều hàng Tổng quát thương hiệu 0
BNN [Thương hiệu] Hai bước giúp tăng thêm khách hàng Tổng quát thương hiệu 0
N Cần sự giúp đở của mọi người Chương trình - sự kiện 0
degiocuondi Giúp Gió cả nhà nhé Kế toán - Tài chính 1
G Cần giúp về nikon N6006 CLB NHIẾP ẢNH ĐÀ NẴNG 2
BNN [Môi trường] IBM giúp Đà Nẵng làm "thành phố thông minh hơn" Tin tức 24h 0
BNN [Xã hội] Đà Nẵng dành 80 tỉ đồng giúp phụ nữ thoát nghèo Tin tức 24h 0
N Giúp bạn hết ngại học tiếng Anh! Lời Khuyên Chung 0
V [Album ảnh] Cần làm 1 bộ ảnh, các photographer vào đây xem giúp CLB NHIẾP ẢNH ĐÀ NẴNG 0
BNN [Xã hội] Hơn 11.000 người khuyết tật tại Đà Nẵng được các dự án của chính phủ Hoa Kỳ giúp Tin tức 24h 0
hanlong Đức giúp Đà Nẵng xây dựng TP môi trường Tin tức 24h 0
M 10 thiết lập IE giúp bạn lướt web an toàn Thủ thuật - Mẹo vặt 1
BNN [Ký sự] Thầm lặng giúp bệnh nhân nghèo Viết về Đà Nẵng 0
mr_tran89 Nhờ mọi người giúp đỡ Thủ thuật - Mẹo vặt 0
N Giúp mình phân biệt mấy từ tiếng anh này với: CLB Tiếng Anh 0
N Giúp mình phân biệt mấy từ tiếng anh này với: CLB Tiếng Anh 0
V Giúp mọi người học tập CLB Tiếng Anh 4
Viết Sang Hãy giúp đỡ cháu bé bị nhiễm trùng máu thoát cơn hiểm nghèo Địa chỉ cần giúp 1
BNN Mỹ giúp Philippines Sóng BIỂN ĐÔNG 1
Viết Sang [Đà Nẵng] Hơn 60 ngày công thanh niên tình nguyện giúp đỡ các vùng khó khăn Tin tức 24h 0
F Vấn đề canon 600D giúp mình với nào.. CLB NHIẾP ẢNH ĐÀ NẴNG 4
O Du học Anh: 10 gợi ý giúp bạn học tốt tiếng Anh CLB NGOẠI NGỮ 0
binho243 Ngủ trưa giúp ta học giỏi hơn Kinh nghiệm - Chia sẻ 2
L Gia Đình Nghèo Mắc Phải Bệnh Nhà Giàu Cần Được Giúp Đỡ! Địa chỉ cần giúp 1
V Nhà nghỉ dịp 30/4-1/5.Giúp em ! Khách sạn - Nhà hàng 3
binho243 Các biện pháp giúp người gầy tăng cân Kinh nghiệm - Chia sẻ 6
D Xin hãy giúp đỡ cháu Nguyễn Thành Đạt CLB Fireclub 2
K Địa hình Đà nẵng.Ai giúp em với.... Danh lam - Thắng cảnh 1
sakura_1008 Đà Nẵng- 1 hoàn cảnh thương tâm đang cần được giúp đỡ Địa chỉ cần giúp 1
N Cần giúp địa chỉ học luyện thi TOEIC đảm bảo CLB Tiếng Anh 3
R Giải giúp em với a Kế toán - Tài chính 4
tulip6193 Chương trình giúp đỡ trẻ em khuyết tật trường Nguyễn Đình Chiểu Chương trình - sự kiện 2
bachsa Tình yêu giúp ta mạnh mẽ hơn! Bài học cuôc sống 3

Similar threads

Top