Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
368,5 KB
Nội dung
BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Kiểm tra bài cũ Bài 1 cho chương trình sau: Const nmax=100; Type MyArray=Array[1 nmax] of integer; Var A:MyArray; n,i,Dem:integer; Begin Randomize; Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do A[i]:=Random(301)-Random(301); For i:=1 to N do Write(a[i]:5); Writeln; Dem:=0; For i:=1 to N do If A[i] >0 then Dem:=Dem+1; Write(Dem); Readln End. Giải thích các thành phần trong chương trình Dem:=0; For i:=1 to N do if A[i] >0 then Dem:=Dem+1; Write(Dem); Giả sử Nhập N=5 15 -48 -35 200 12 Kết quả in ra màn hình như thế nào? Đáp án: 3 Bài 2: Cho chương trình sau: Const nmax=100; Type MyArray=Array[1 nmax] of integer; Var A:MyArray; n,i,CS:integer; Begin Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do Begin Write('A[',i,']= '); Readln(A[i]); End; cs:=1 For i:=2 to N do if A[i] <A[cs] then Cs:=i; Write(A[cs]); Readln End. Giả sử nhập N=5 2 -5 8 6 12 Hỏi kết quả in ra màn hình như thế nào? Minh họa Bài tập và thực hành 4 (tiết 1) BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1a: Const nmax=250; Type ArrInt=Array[1 nmax] of Integer; Var n,i,j,t:integer; A:ArrInt; Begin Randomize; Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do A[i]:=Random(301)-Random(301); For i:=1 to N do Write(a[i]:4); Writeln; For j:=N downto 2 do For i:=1 to j-1 do If A[i]>A[i+1] then Begin t:=A[i]; A[i]:=A[i+1]; A[i+1]:=t End; Writeln('Day so sau khi duoc sap xep: '); For i:=1 to N do Write(A[i]:4); Readln; End. Giải thích các thành phần trong chương trình BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1a: Soạn thảo chương trình sau: Nhập N= 10 và xem kết quả. Lưu File với tên sxgiamB5 Const nmax=250; Type ArrInt=Array[1 nmax] of Integer; Var n,i,j,t:integer; A:ArrInt; Begin Randomize; Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do A[i]:=Random(301)-Random(301); For i:=1 to N do Write(a[i]:4); Writeln; For j:=N downto 2 do For i:=1 to j-1 do If A[i]>A[i+1] then Begin t:=A[i]; A[i]:=A[i+1]; A[i+1]:=t; End; Writeln('Day so sau khi duoc sap xep: '); For i:=1 to N do Write(A[i]:4); Readln; End. BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1: Từ chương trình trên hãy sửa lại để có chương trình sắp xếp các phần tử của mảng thành 1 dãy không tăng Const nmax=250; Type ArrInt=Array[1 nmax] of Integer; Var n,i,j,t:integer; A:ArrInt; Begin Randomize; Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do A[i]:=Random(301)-Random(301); For i:=1 to N do Write(a[i]:4); Writeln; For j:=N downto 2 do For i:=1 to j-1 do If A[i]>A[i+1] then Begin t:=A[i]; A[i]:=A[i+1]; A[i+1]:=t; End; Writeln('Day so sau khi duoc sap xep: '); For i:=1 to N do Write(A[i]:4); Readln; End. If A[i]<A[i+1] then If A[i]>A[i+1] then Minh họa BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1b: Khai báo thêm biến Dem và bổ sung vào chương trình những câu lệnh cần thiết để biến Dem tính số lần thực hiện tráo đổi Const nmax=250; Type ArrInt=Array[1 nmax] of Integer; Var n,i,j,t A:ArrInt; Begin Randomize; Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do A[i]:=Random(301)-Random(301); For i:=1 to N do Write(a[i]:5); Writeln; For j:=N downto 2 do For i:=1 to j-1 do If A[i]>A[i+1] then Begin t:=A[i];A[i]:=A[i+1]; A[i+1]:=t; End; Writeln('Day so sau khi duoc sap xep: '); For i:=1 to N do Write(A[i]:5); Writeln; Readln; End. Minh họa Dem Dem:=0; Dem:=dem+1; Write('So lan trao doi la: ',Dem); ,Dem Dem:=0; Dem:=dem+1; Write('So lan trao doi la: ',Dem); Đoạn lệnh nào thể hiện một lần tráo đổi giữa 2 phần tử Begin t:=A[i];A[i]:=A[i+1]; A[i+1]:=t; End; If A[i]>A[i+1] then Việc thực hiện tráo đổi khi thoả mãn đk gì? :integer; BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1b: Mở bài tập 1a và sửa lại chương trình cách thêm vào các câu lệnh để được chương trình sắp xếp thành 1 dãy không giảm và số lần tráo đồi Const nmax=250; Type ArrInt=Array[1 nmax] of Integer; Var n,i,j,t,Dem:integer; A:ArrInt; Begin Randomize; Write('Nhap so luong phan tu N= ');readln(n); For i:=1 to N do A[i]:=Random(301)-Random(301); For i:=1 to N do Write(a[i]:5); Writeln; [...]... -15 Dn dũ - V nh hon thin bi tp 1b vo v - Xem trc bi tp 2 trong BT v TH 4 - S dng gii thut khỏc sp xp cỏc phn t ca dóy thnh mt dóy khụng gim Bài giảng đến đây kết thúc Kính mong sự góp ý của quý thầy cô và các em học sinh để bài giảng sau đợc tốt hơn Xin chân thành cảm ơn! . Writeln; BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1b: Mở bài tập 1a và sửa lại chương trình cách thêm vào các câu lệnh để được chương trình sắp xếp thành 1 dãy không giảm và số lần tráo đồi . A[i]>A[i+1] then Việc thực hiện tráo đổi khi thoả mãn đk gì? :integer; BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1b: Mở bài tập 1a và sửa lại chương trình cách thêm vào các câu lệnh để được. 8 6 12 Hỏi kết quả in ra màn hình như thế nào? Minh họa Bài tập và thực hành 4 (tiết 1) BÀI TẬP VÀ THỰC HÀNH 4 TIẾT 1 Bài tập 1a: Const nmax=250; Type ArrInt=Array[1 nmax] of Integer; Var