Tải bản đầy đủ (.ppt) (16 trang)

slide 1 giáo viên hd thầy lê minh triết sinh viên th nguyễn hoàng anh kiểm tra bài cũ câu hỏi 1 định nghĩa mảng một chiều câu hỏi 2 cách khai báo mảng một chiều trong pascal bài

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (641.33 KB, 16 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1></div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

Kiểm tra bài cũ:


Câu hỏi 1:


Định nghĩa mảng một chiều?


Câu hỏi 2:


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

Bài Toán Số 1

:



Tạo mảng A gồm n (n≤100) số nguyên, mỗi


số có giá trị tuyệt đối không quá 300. Tính


tổng của các phần tử của mảng là bội số của


một số nguyên dương k cho trước.



YÊU CẦU
CỦA


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

Các yêu cầu của bài toán:



<b>Yêu cầu 1</b>: Tạo mảng và nhập vào mảng số


nguyên có n phần tử (n≤100). Mỗi phần tử có giá
trị tuyệt đối không quá 300.


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>Với u cầu sớ I:</b>



•<sub>Bước 1: Nhập vào sớ phần tử n.</sub>
•<sub>Bước 2: cho i chạy từ 1</sub><sub></sub><sub>n </sub>


•<sub>Với mỗi i ta nhập vào giá trị cho a[i].</sub>



<b>Với yêu cầu số I:</b>


<b>Thuật Toán- Cài Đặt Bằng Pascal.</b>


<b></b>


---writeln('nhap vao so phan tu (n) cua mang: ');
readln(n);


for i:=1 to n do
begin


writeln('nhap vao phan tu thu ',i,': ');
readln(a[i]);


end;


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>-Với yêu cầu sớ II:</b>


•<sub>Bước 1: Nhập vào sớ K.</sub>


•<sub>Bước 2: cho i chạy từ 1</sub><sub></sub><sub>n </sub>


•Với mỡi i ta kiểm tra a[i] mod K=0?


•Nếu có thì cợng a[i] vào tởng.
<b>Với u cầu số II:</b>


<b>Thuật Toán- Cài Đặt Bằng Pascal.</b>



<b></b>


---writeln('nhap vao mot so nguyen K: ');
readln(k);


s:=0;


for i:=1 to n do


if a[i] mod k=0 then
s:=s+a[i];


writeln('tong cac phan tu la boi cua ',k,' la: ',s);


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

-Chương trình hoàn chỉnh:
Program Thuc_Hanh3;


uses crt;


type myarr=array [1..100] of integer;
var a:myarr;


var n,i,k,s:integer;


Begin
clrscr;


writeln('nhap vao so phan tu (n) cua mang: ');
readln(n);



for i:=1 to n do
begin


writeln('nhap vao phan tu thu ',i,': ');
readln(a[i]);


end;


for i:=1 to n do
write(a[i],' - ');
writeln;


writeln('nhap vao mot so nguyen K: ');
readln(k);


s:=0;


for i:=1 to n do


if a[i] mod k=0 then
s:=s+a[i];


writeln('tong cac phan tu la boi cua ',k,' la: ',s);


readln
End.


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

Bài Toán Số 2

:




</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

Yêu cầu của bài toán:



<b>Yêu cầu</b>

:

Tìm phần tử có giá trị lớn



</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10></div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

<b>Mơ Tả </b>


•Bước 1: gán biến tạm max:=a[1]; maxpos:=1;


•Bước 2: cho i chạy từ 2n


•<sub>Với mỡi i ta kiểm tra a[i]>max?</sub>


•<sub>Nếu a[i]>max thì max:=a[i] và maxpos:=i;</sub>


<b>Thuật Toán- Cài Đặt Bằng Pascal.</b>


<b></b>


---max:=a[1];
maxpos:=1;
for i:=2 to n do
if a[i] > max then
begin


max:=a[i];
maxpos:=i;
end;


writeln('phan tu co gia tri lon nhat mang la: ',max);
writeln('xuat hien o vi tri dau tien la: ',maxpos);



</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

---Chương trình hoàn chỉnh:
Program Thuc_Hanh3;


uses crt;


type myarr=array [1..100] of integer;
var a:myarr;


Var n,i,max,maxpos:integer;
begin


clrscr;


writeln('nhap vao so phan tu (n) cua mang: ');
readln(n);


for i:=1 to n do
begin


writeln('nhap vao phan tu thu ',i,': ');
readln(a[i]);


end;


for i:=1 to n do
write(a[i],' - ');
writeln;


max:=a[1];


maxpos:=1;
for i:=2 to n do
if a[i] > max then
begin


max:=a[i];
maxpos:=i;
end;


writeln('phan tu co gia tri lon nhat mang la: ',max);
writeln('xuat hien o vi tri dau tien la: ',maxpos);


readln
end.


Nếu thay dòng lệnh: if a[i] > max then bằng dòng lệnh sau:


</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

Trong bài toán trên với n nhỏ thì chúng ta có thể
dễ dàng nhập giá trị cho từng phần tử . Nhưng
với những chương trình có lượng dữ liệu lớn


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

Hàm Random(n) là hàm dùng để tạo ra các giá trị
ngẫu nhiên trong khoảng từ 1n-1. Dùng hàm
Random(n) khi ta muốn tạo ra các giá trị ngẫu
nhiên để kiểm tra tính đúng đắn của chương trình
và để tiết kiệm thời gian. Lưu ý khi dùng hàm


Random(n) ta phải gọi thủ tục Randomize() để
khởi tạo cơ chế này.



</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15></div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16></div>

<!--links-->

×