Nội dung của Bài thực hành 5: Sử dụng lệnh lặp For…Do dưới đây các em sẽ được thực hành về cách viết chương trình Pascal có câu lệnh lặp For..do, thực hành về sử dụng được câu lệnh ghép và rèn luyện kĩ năng đọc hiểu chương trình có sử dụng vòng lặp for...do. Mời các em cùng theo dõi nội dung chi tiết của bài thực hành.
Cú pháp:
For < biến đếm >:= < giá trị đầu > to < giá trị cuối > do
< câu lệnh >;
Trong đó:
Ý nghĩa:
Khi thực hiện, biến đếm sẽ nhận giá trị là giá trị đầu, sau mỗi vòng lặp, biến đếm sẽ tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối thì dừng lại.
a. Khởi động Pascal. Gõ chương trình sau và tìm hiểu ý nghĩa của từng câu lệnh trong chương trình;
uses crt;
var N,i:integer;
begin
clrscr;
write('Nhap so N=');
readln(N);
writeln;
writeln('Bang nhan ',N);
writeln;
for i:=1 to 10 do
writeln(N,' x ', i:2,' = ',N*i:3);
readln;
end.
b. Lưu chương trình với tên BANGNHAN.PAS;
c. Dịch và chỉnh sửa các lỗi gõ, nếu có;
d. Chạy chương trình với các giá trị nhập vào lần lượt bằng 1, 2, …,10. Quan sát kết quả nhận được trên màn hình.
Gợi ý làm bài:
Kết quả in ra màn hình:
Hình 1. Kết quả in ra màn hình bảng nhân 6
Nhận xét kết quả trên:
Hình 2. Kết quả in ra màn hình bảng nhân 7
Gợi ý làm bài:
Chương trình:
uses crt;
var N,i:integer;
begin
clrscr;
write('Nhap so N='); readln(N);
writeln;
writeln('Bang nhan ',N);
writeln;
for i:=1 to 10 do
begin
GotoXY(5,WhereY);
writeln(N,' x ',i:2,' = ',N*i:3);
writeln;
end;
readln
end.
Các câu lệnh được thêm vào:
Lưu ý: Chỉ sử dụng được các lệnh GotoXY(a,b), WhereX, WhereY sau khi đã khai báo thư viện crt; của Pascal.
Hình 3. Kết quả in ra màn hình các số từ 0 đến 99
Gợi ý làm bài:
Chương trình:
Program Tao_bang;
Uses Crt;
Var
i: byte; {chi so cua hang}
j: byte; {chi so cua cot}
Begin
Clrscr; {xoa man hinh}
For i:=0 to 9 do {viet theo tung hang}
begin
For j:=0 to 9 do {viet theo tung cot tren moi hang}
write(10*i+j:4); {viet cac so ij ra man hinh}
writeln; {xuong hang moi}
end; {xong hang thu i}
readln; {dung chuong trinh de xem ket qua}
end.
Sau khi học xong Bài thực hành 5: Sử dụng lệnh lặp For…Do, các em cần ghi nhớ:
1. Cấu trúc lặp với số lần được biết trước thể hiện bằng lệnh For …do
2. Câu lệnh GotoXY(a,b) có tác dụng đưa con trỏ về cột a, hàng b.
3. Hàm WhereX cho biết số thứ tự của cột đang có con trỏ.
4. Hàm WhereY cho biết số thứ tự của hàng đang có con trỏ.
5. Chỉ sử dụng các lệnh GotoXY, WhereX, WhereY sau khi khai báo thư viện crt của Pascal.
Các em có thể hệ thống lại nội dung kiến thức đã học được thông qua bài kiểm tra Trắc nghiệm Tin học 8 Bài thực hành 5 cực hay có đáp án và lời giải chi tiết.
Lệnh lặp For, mỗi lần lặp giá trị của biến đếm thay đổi như thế nào?
Lệnh lặp nào sau đây là đúng?
Câu 3- 5: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!
Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học DapAnHay sẽ hỗ trợ cho các em một cách nhanh chóng!
Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!
-- Mod Tin Học 8 DapAnHay
Lệnh lặp For, mỗi lần lặp giá trị của biến đếm thay đổi như thế nào?
Lệnh lặp nào sau đây là đúng?
Câu lệnh pascal nào sau đây là hợp lệ?
Vòng lặp for ..do là vòng lặp:
Với ngôn ngữ lập trình Pascal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i phải được khai báo là kiểu dữ liệu:
Họ và tên
Tiêu đề câu hỏi
Nội dung câu hỏi
Viết chương trình nhập vào một dãy số nguyên gồm n phần tử từ bàn phím đưa rãi vừa nhập ra màn hình Tìm giá trị lớn nhất trong dãy đưa kết quả tìm được ra màn hình.
Câu trả lời của bạn
Var z:array[1..1000] of longint;
n, i, max:longint;
Begin
Readln(n);
For i:=1 to n do begin writeln('s',i,'=');
Readln(z[i]);
max:= z[1];
End;
For i:=1 to n do begin if max<z[i] then max:=z[i];
Writeln('So lon nhat la ',max);
End.
Bạn thử kiểm tra trên Pascal nhé.
Viết chương trình nhập một mảng số nguyên gồm n phần tử đưa mảng vừa nhập ra màn hình tính tổng bình phương của các số âm trong một mảng đưa kết quả ra màn hình.
Câu trả lời của bạn
Mảng một chiều là một dãy hữu hạn các phần tử có cùng dữ liệu khi khai báo và cá phần tử này có chung một tên nhưng khác nhau bởi các chỉ số phân biệt vị trí trong mảng. Các phần tử trong mảng có thể chứa cùng một giá trị nhưng khác nhau về chỉ số. Ví dụ: A[i] = 10, A[j] = 10 chúng giống nhau về giá trị là chứa một số nguyên dương bằng 10 nhưng khác nhau về chỉ số khi i khácj. Để mô tả mảng 1 chiều cần xác định kiểu của các phần tử và cách đánh số các phần tử của nó.
Viết chương trình nhập một dãy số nguyên gồm n phần tử. Đưa các số chẵn ra màn hình.
Câu trả lời của bạn
Var z:array[1..1000] of longint;
n, i,A:longint;
Begin
Readln(n);
For i:=1 to n do begin writeln('s',i,'=');
Readln(z[i]);
End;
For i:=1 to n do begin if z[i] mod 2 = 0 then begin A:= z[i];
End;
Writeln('Cac so chan la ',A);
End;
End.
Bạn kiểm tra lại nhé.
giúp em với : viết chương trình nhập vào số N và in ra màn hình tổng các số lẻ từ 1 đến N
Gợi ý: sử dụng phép toán mod , câu lệnh điều khiển
lớp8 tin học ạ
Câu trả lời của bạn
Chào thầy
Program Baitap;
Uses Crt;
Var i, Tong: Longint;
Begin
Clrscr;
Writeln('Nhap so N='); Readln(N);
Tong:=0;
For i := 1 to N do
If i mod 2 = 0 then;
Tong:=Tong+i;
Writeln('Ket qua',Tong);
Readln;
End.
Viết chương trình nhập vào số tự nhiên N sau đó in ra màn hình tổng các số chẵn nhỏ hơn N
Mong các bạn giúp minh cần rất gấp
Câu trả lời của bạn
Program bai1;
uses crt;
var n,i,s: integer;
begin
clrscr;
write('nhap so n =');
readln(n);
s:=0;
for i:= 2 to n-1 do
if i mod 2 = 0 then s:=s+i;
writeln ('tong cac so chan nho hon n =' ,s :4);
readln;
end.
vt ct nhập vào dãy số gồm n sô nguyên
nhập thêm 1 số và chèn vào day sau phần tử k
Câu trả lời của bạn
program bai1;
var a:array[1..100] of longit;
i,n,k:longint;
begin
write('NHap so N= ');readln(n);
for i:=1 to n do
write('A[',i,']');readln(a[i]);
write('NHap them mot so vao day ');readln(k);
writeln(a[i],' ',k);
readln
end.
Viết chương trình nhập vào số nguyên n. In ra màn hình số lớn nhất và số bé nhất của số có n chữ số.
Câu trả lời của bạn
var n,nn,dem,i:longint;
begin
read(n);
nn:=n;
while nn<>0 do
begin
inc(dem);
nn:=nn div 10;
end;
for i:=1 to dem do write('9');
writeln;
write('1');
for i:=1 to dem-1 do write('0');
end.
viet chuong trình in ra 100 dong thong bao chao cac ban
Câu trả lời của bạn
program bai1;
var i:longint;
begin
for i:=1 to n do
writeln('Chao cac ban');
readln
end.
Viết chương trình tính điểm trung bình n môn học của một học sinh với n và điểm được nhập từ bàn phím
Câu trả lời của bạn
program bai1;
var a:array[1..100] of longint;
i,n:longint;
begin
{Thu tu hoc sinh duoc viet theo a[..]}
repeat write('N= ');
readln(n);
until n>0;
for i:=1 to n do
begin write('a[',i,']= ');
readln9a[i]);
end;
write('Diem cua ',n,' hoc sinh la ');
for i:=1 to n do write(a[i],' ');
readln
end.
Viết chương trình nhập số a từ bàn phím. In số a ra màn hình.
Giúp hộ mk nha >< mai mk thi HK1 r :(
Câu trả lời của bạn
uses crt;
var a:real;
Begin
clrscr;
write('Nhap vao so a: '); (bỏ bc này lun cũng đc)
readln(a);
write('So a la:',a:3:1)
readln
End.
***ể, mà pascal cũng thi hk nữa hả?
câu 1 viết chương trình tính tổng từ 1 đến 50
câu 2 Nhập vào 1 số nguyên N. Viết chương trình In ra tổng các số từ 1/1*2 + 1/ 2*3+ ...1/n*(n+1)
câu 3 Nhập vào 1 số nguyên N<20. Viết chương trình in ra tích các số chẵn từ 1 đến N.
help me
Câu trả lời của bạn
Cau 3
program Tim_tich;
uses crt;
var a:array[1..50] of integer;
i.n.S: integer;
begin
writeln('Nhap vao sp phan tu:');
readln(n); S:=1;
for i:=1 to n do
begin
writeln('a[',i,']=');
readln(a[i]);
end;
for i:=1 to n do if a[i] mod 2=0 then S:=S*a[i];
writeln('Tich la:',S);
readln
end.
Viết chương trình nhập N số nguyên từ bàn phím , in ra màn hình số nhỏ nhất và lớn nhất
Câu trả lời của bạn
Viết chương trình nhập vào một mảng gồm N số nguyên. In ra màn hình tổng các số dương của chúng.
Câu trả lời của bạn
Program hoc24h;
Var a:array[1..1000000] of longint;
S,n,i:longint;
Begin
Write('n=');Readln(n);
For i:=1 to n do
Begin
Write('a[',i,']=');
Readln(a[i]);
End;
S:=0;
For i:=1 to n do
S:=S+a[i];
Write('Tong la',S);
End.
viết chương trình tính tổng S=1+3+5+...+99
Câu trả lời của bạn
cách này của mk đã lược bỏ đi vài phần k cần thiết
program ct;
var s,i,n: integer;
begin
readln(s,i);
s:= 0;
for i:= 1 to 99 do s:=s+i;
readln(n)
end.
mk ch pt dúng hay sai nha!!!
đúng thì chọn nha!!
viết chương trình tính tổng các số chẵn với số nguyên n (với n nhập từ bàn phím )
Câu trả lời của bạn
var n,i,s:longint;
begin
read(n);
s:=0;
for i:=1 to n do if i mod 2=0 then s:=s+i;
write(s);
end.
Viết chương trình tính tổng :
1, \(\dfrac{1}{1.2}+\dfrac{1}{2.3}+\dfrac{1}{3.4}+.....\dfrac{1}{n\left(n+1\right)}\)
2, \(\dfrac{1}{1}+\dfrac{1}{3}+\dfrac{1}{5}+.....\dfrac{1}{2n-1}\)
Câu trả lời của bạn
1) var n,i:integer;
s:real;
begin
write('n=');readln(n);
s:=0;
for i:=1 to n do s:=s+(1/(i*(i+1)));
writeln(' Tong la: ',s);
readln;
end.
2) var n,i:integer;
s:real;
begin
write('n=');readln(n);
s:=0;
for i:=1 to n do s:=s+(1/((2*i)-1));
writeln(' Tong la: ',);
readln;
end.
viết chương trình (pascal) nhập vào 1 số nguyên n
-xét số đó chẵn hay lẻ
-tìm các ước của nó in ra màn hình
-tính tổng các ước chẵn ( lệnh for..do )
không làm ý 1 cũng đc ( mình lm đc)
thanks
Câu trả lời của bạn
khỏi ý 1 nha
program bai1;
var n,s,i:longint;
begin
write('N= ');readln(n);
write('Uoc cua ',n,' la: ');
for i:=1 to n do
if (n mod i=0) then write(i,' ');
s:=0;
for i:=1 to n do
begin
if (n mod i=0) then
if (i mod 2=0) then s:=s+i;
writeln('Tong cac uoc chan la: ',s);
readln
end.
Viết chương trình nhập n số nguyên và tính trung bình cộng
Câu trả lời của bạn
var n,i,s,tb:longint;
begin
read(n);
s:=0;
for i:=1 to n do s:=s+i;
for i:=1 to n do tb:=s/n;
write(n);
end.
mk cũng chưa kiểm tra nên k biết đúng không ? bạn kiểm tra dùm mk nha!
viết chương trình nhập vào số nguyên dương n (0<n<=3000) và in ra màn hình các ước của nó
Câu trả lời của bạn
program bai1;
var n,i:longint;
begin
repeat
write('N= ');readln(n);
until ((n>=0) and (n<=3000));
write('Cac uoc cua ',n,' la: ');
for i:=1 to n do
if (n mod i=0) then write(i,' ');
readln
end.
cho S=\(\dfrac{1}{2}+\dfrac{3}{4}+\dfrac{6}{5}+..........+\dfrac{2n-1}{2n}\)
viết chương trình nhập số nguyên n (1<=n<=32000) từ bàn phím và in ra màn hình giá trị của S.
Câu trả lời của bạn
Program bai1;
uses crt;
var n,i: integer;
s:real;
begin
clrscr;
s:=0;
write('nhap n ='); readln(n);
for i:= 1 to n do
s:=s+(2*i-1)/(2*i);
writeln('S = ' ,s :4:2);
readln;
end.
0 Bình luận
Để lại bình luận
Địa chỉ email của hạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *