Nơi trao đổi thông tin Văn Lang
Chào mừng bạn đến với nơi trao đổi thông tin của chúng tôi !
Hãy đăng nhập hoặc đăng kí tài khoản để trải nghiệm nhiều điều thú vị tại đây !
Thân ái !
Nơi trao đổi thông tin Văn Lang
Chào mừng bạn đến với nơi trao đổi thông tin của chúng tôi !
Hãy đăng nhập hoặc đăng kí tài khoản để trải nghiệm nhiều điều thú vị tại đây !
Thân ái !
Nơi trao đổi thông tin Văn Lang
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.
Nơi trao đổi thông tin Văn Lang

Nơi trao đổi thông tin, tăng cường hợp tác, giải đáp những vướng mắc khi học lập trình Pascal
 
Trang ChínhTìm kiếmLatest imagesĐăng kýĐăng Nhập

 

 đề về nhà 2

Go down 
2 posters
Tác giảThông điệp
pqtoan
Admin



Posts : 76
Danh tiếng : 3
Join date : 10/11/2014

đề về nhà 2 Empty
Bài gửiTiêu đề: đề về nhà 2   đề về nhà 2 Icon_minitime17/1/2017, 10:29

Bài 1  xếp hàng
Lớp 9A có N bạn học sinh (n<=50), mỗi bạn được gắn với một mã số bất kì. Trong buổi đồng diễn thể dục N bạn được xếp thành một hàng dọc theo thứ tự từ nhỏ đến lớn của mã số. Để đội hình toàn trường cân đối thầy giáo chuyển một  bạn lớp khác vào vị trí trong hàng có mã số là K vào đội hình lớp 9A. Em hãy giúp thầy giáo xếp bạn có mã số K vào vị trí trong hàng sao cho không làm xáo trộn đội hình đã được sắp xếp mà vẫn đảm bảo nguyên tắc xếp hàng đã nói trên. Hãy viết chương trình để thực hiện công việc đó.
Dữ liệu vào: cho file text XEPHANG.INP có 2 dòng, trong đó:
-Dòng đầu :ghi hai số N và K
-Dòng thứ hai ghi các mã số của mỗi học sinh viết cách nhau ít nhất một dấu cách.
Kết quả ra: ghi ra file text XEPHANG.OUT gồm hai dòng
-Dòng một: ghi vị trí xếp bạn mã số K vào hàng
-Dòng hai: hàng được xếp
Ví dụ
Xephang.inp Xephang.out
7 3
2 4 5 7 8 9 12 2
2 3 4 5 7 8 9 12
Bài 2: MA TRẬN VUÔNG ĐỐI XỨNG
Cho ma tr ận vuông A kích thư ớc N x N chứa các số tự nhiên trong kho ảng từ 0 đến 255; 4 ≤ N ≤ 50. Hãy tìm một ma trận vuông đối xứng có kích thước lớn nhất B trong A theo nghĩa các phần tử đối xứng qua đường chéo chính của B thì bằng nhau.
Dữ liệu : Vào từ file văn bản matrix.inp • Dòng đầu ghi giá trị N. • Tiếp đến là N dòng của ma trận A. Dữ liệu trên cùng một dòng cách nhau ít nhất một khoảng trắng.
Kết quả : Ghi ra file văn bản matrix.out • Gồm một dòng chứa ba giá trị i, j, d cách nhau ít nhất một khoảng trắng, trong đó i, j cho biết vị trí (dòng i, cột j) đầu tiên của ma trận B cần tìm trong ma trận A, còn d cho biết số phần tử trên cùng một dòng của B. Chỉ số dòng và cột được tính từ 1 đến N. (nếu có nhiều ma trận vuông đối xứng cùng kích thước trong A thì chọn một trong số đó).
Ví Dụ : matrix.inp matrix.out 4 7 6 8 9 1 2 3 0 2 4 5 7 3 5 6 9 2 1 3
Bài 3: ĐỔI TIỀN
Có n loại tiền từ A1, A2,…..,An. Hãy tìm cách dùng các loại tiền này để có số tiền L sao cho tổng số tờ tiền là ít nhất.
Dữ liệu : Vào từ file money.inp • Dòng đầu ghi số nguyên L (10≤ L ≤ 10000). • Dòng thứ 2 ghi số n (n ≤ 40). • Các dòng tiếp theo ghi giá trị của các số ai (ai ≤ 100).
Kết quả : Ghi ra file văn bản money.out các dòng chứa hai số k, m theo thứ tự là số lượng và loại tờ tiền (nếu không có cách đổi thì ghi 0).
Ví Dụ : money.inp money.out 13 3 2 5 10 4 2 1 5 (Với 13 đồng thì dùng 4 tờ 2 đồng; 1 tờ 5 đồng.)
Về Đầu Trang Go down
nhathuyvanlang

nhathuyvanlang


Posts : 49
Danh tiếng : 10
Join date : 26/03/2016

đề về nhà 2 Empty
Bài gửiTiêu đề: Re: đề về nhà 2   đề về nhà 2 Icon_minitime17/1/2017, 19:48

Bài 1
Code:
uses crt;
var a,b:array[1..100] of integer;
    k,n,i,j,l,m,c,d,vt,thu:integer;
    f:text;
procedure dc(var a,b:integer);
var t:integer;
begin
t:=a;a:=b;b:=t;
end;
{--------------}
begin
clrscr;
assign(f,'xephang.inp');
rewrite(f);
write('nhap so ban hoc sinh:');readln(n);
write(f,n:3);
write('nhap so k:');readln(k);
writeln(f,k:3);
for i:=1 to n do
    repeat
          write('a[',i,']:');readln(a[i]);
          thu:=0;
          if a[i]=k then thu:=thu+1;
          if i<>1 then for j:=i-1 downto 1 do if a[i]=a[j] then thu:=thu+1;
          if thu<>0 then writeln('ma so da bi trung');
    until thu=0;
for i:=1 to n do
    b[i]:=a[i];
for i:=1 to n-1 do
for j:=i+1 to n do
if b[i]>b[j] then dc(b[i],b[j]);
for i:=1 to n do write(f,b[i]:3);
close(f);
{Xong phan input}
a[n+1]:=k;
n:=n+1;
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then dc(a[i],a[j]);
assign(f,'xephang.out');
rewrite(f);
for i:=1 to n do
if a[i]=k then vt:=i;
writeln(f,vt:3);
for i:=1 to n do write(f,a[i]:3);
close(f);
readln;
end.
Về Đầu Trang Go down
 
đề về nhà 2
Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Nơi trao đổi thông tin Văn Lang  :: Thảo luận :: đưa bài-
Chuyển đến