BT Su dung lenh For

7 7 0
BT Su dung lenh For

Đang tải... (xem toàn văn)

Thông tin tài liệu

Viết chương trình tìm ƯSCLN của N số được nhập từ bàn phím ..[r]

(1)

Sử dụng lệnh For

Bài :

Lập trình tính tích số tự nhiên từ tới 10

Bài :

Viết chương trình đếm số lần xuất kí tự thuộc bảng chữ 50 lần gõ kí tự bàn phím (khơng phân biệt a với A, b với B …, dùng hàm Upcase để chuyển đổi chữ thường với chữ hoa)

Bài :

Cho số tự nhiên n , lập trình để tính tổng sau :

a. a 1 + 1/22 + 1/32 + … + 1/n2

b. b 1 + 1/2! + 1/3! + … + 1/n!

Bài :

Tính giá trị biểu thức sau :

( + 1/12 ) ( + 1/22 ) … ( + 1/n2 )

Sử dụng lệnh While

Bài :

Lập trình tính tổng :

A = + 1/2 + 1/3 + … + 1/n

ở n số tự nhiên nhập vào từ bàn phím

Bài :

Tính hàm lũy thừa an , a thực n tự nhiên nhập vào từ bàn phím

Bài :

Viết chương trình nhập dãy số tối đa 100 số , sau in hình số khác

Bài :

Viết chương trình nhập dãy số tối đa 100 số , sau xếp lại theo thứ tự tăng dần

Sử dụng lệnh Repeat

Bài :

Cho dãy số nhập từ bàn phím Hãy viết chương trình nhập số a liệt kê tất cả phần tử dãy lớn a.

Bài 10 :

Viết chương trình nhập dãy số tối đa 50 số in hình số trùng dãy.

Bài 11 :

Bạn có 1000 đ đem gửi ngân hàng với lãi suất 8%/tháng Sau tháng tiền lãi nhập vào để tính lãi suất tháng sau Bạn muốn để dành số tiền tăng lên x Vậy phải để bao lâu

Bài 12 :

(2)

BÀI GIẢI Sử dụng lệnh For

Bài :

Lập trình tính tích số tự nhiên từ tới 10

Var i : Byte ; (* số chạy *) p : word ; (* tích số *) BEGIN

p := 1; (* cho giá trị ban đầu tích *)

For i := to 10 Do (* cho i chạy từ tới 10 *)

p := p * i ; (* nhân i với p *)

Write (' * * * 10 = ', p ) ; Readln ;

END Bài : Uses Crt ;

Var a : Array[ 'A' 'Z' ] of integer; (* mảng đếm *) ch : char ; (* biến nhập kí tựù *) i : byte ; (* số lần gõ phím *) BEGIN

Clrscr ;

For ch :='A' to 'Z' Do a[ch] := ; (* xả đếm *) Writeln (' Go phim 50 lan ') ;

For i := To 50 Do (* thực 100 lần *) Begin

ch :=Readkey ; (* nhập kí tự vào Ch khơng cần gõ Enter *) ch := Upcase(ch) ; (* Đỗi chữ thường thành chữ hoa *) a[ch] := a[ch] + ;

End;

Writeln (' So lan xuat hien cac ki tu la :') ;

For ch :='A' to 'Z' (* Kiểm tra đếm từ 'A' tới 'Z' *) If a[ch] > Then (* Nếu Ch có xuất *)

Writeln (ch , a[ch] : , ' lan ') ; (* Viết hình kí tự số lần xuất *)

Readln ; END

Bài : a)

Var n , i : Word ; S : Real ; BEGIN

Write (' Nhap n : ') ; Readln (n) ; S := ;

For i := To n Do S := S + / sqr(i) ; Writeln (' S = ', S:0:2) ; Readln ;

END b)

Var n , i , j , p : Word ; S : Real ;

BEGIN

(3)

p := ; s := ;

For i :=1 To n Do Begin

p := p * i ; (* tính i *) S := S + / p ;

End ;

Writeln (' S = ', S:0:2) ; Readln ;

END Bài :

Var i , n : Byte ; p : Real ; Begin

Write(' Nhap n : ') ; Readln (n) ; p := ;

For i := To n Do p := p * ( + 1/sqr(i) ) ; Writeln(' p = ', p:10:5 ) ;

Readln ; End

Sử dụng lệnh While

Bài : Uses Crt ;

Var i , n : Integer ; tong: Real ; BEGIN

Clrscr ;

Write (' Cho so tu nhien n : ') ; Readln (n) ; tong :=0 ;

i :=1 ;

While i <= n Do Begin

tong := tong + 1/i ; i := i + ;

End ;

Writeln (' Tong can tim la : ', tong:12:6 ) ; Readln ;

END Bài : Uses Crt ;

Var i , n : Integer ; a , giatri : Real ; BEGIN

Clrscr ;

Write (' Cho so a : ') ; Readln(a) ; Write (' Cho so mu n : ') ; Readln(n) ; i := ;

giatri := ; While i <= n Do Begin

giatri := giatri * a ; i:= i+1 ;

End ;

(4)

END Bài : Uses Crt;

Var A : Array [1 100] Of Integer; i , j , n : Integer ;

BEGIN

Clrscr ;

Write(' Do dai cua day so N = ') ; Readln (N) ; For I := To N Do

Begin

Write ('A[', i , ']= ') ; Readln ( A[i] ) ; End ;

Writeln (' Cac so khac la : ') ; Writeln ( A[1] ) ; i := ;

While i <= N Do Begin

j := ;

While ( j < i ) and ( A[j] <> A[i] ) Do inc(j) ; If j = i Then Writeln( A[i] ) ;

i :=i + ; End ;

Readln ; END

Bài : Uses Crt;

Var A : Array [1 100] Of Integer ; i , j , n , T : Integer ; BEGIN

Clrscr ;

Write(' Do dai cua day so N = ') ; Readln (N) ; Writeln (' Nhap day so : ') ;

For i := To N Do Begin

Write('A[', i ,'] = ') ; Readln ( A[i] ) ; End ;

i := ;

While (i <= n-1) Do Begin

j := i+1; While j<=n Begin

If A[j] < A[i] then Begin

T := A[j]; A[j ] := A[i];

A[i] := T ; End ; j := j + 1; End ;

i := i + 1; End ;

Writeln(' Day sau sap xep : ') ; For i := To N Do Write(A[i] : 4) ; Readln ;

(5)

Sử dụng lệnh Repeat

Bài : Uses Crt ;

Var b : Array[1 100] Of Real; a : Real ;

n , i : Byte ; BEGIN

Clrscr ;

Write ('Nhap dai cua day so : ') ; Readln(n) ; Writeln (' Nhap cac phan tu cua day : ') ;

For i := To n Do Begin

Write (' b[', i ,'] = ') ; Readln( b[i] ) ; End ;

Write (' Nhap so thuc a : ') ; Readln(a) ; Writeln (' Cac phan tu lon hon a cua day : ') ; i:=1;

Repeat

If ( b[i] > a ) Then Writeln (' b[', i ,'] = ', b[i]:8:2 ) ; inc(i) ;

Until i > n ; Readln ; END

Bài 10 : Uses crt ;

Var a , b : Array[1 50] Of Integer ; n , m , i , j , k : Byte ; trung : Boolean ;

BEGIN

Clrscr ;

Write (' Nhap dai cua day so nguyen : ') ; Readln(n) ; Writeln (' Nhap cac phan tu cua day : ') ;

For i := To N Begin

Write (' a[', i ,'] = ') ; Readln( a[i] ) ; End ;

i := ; m := ; Repeat

trung := false ; j := i + 1; Repeat

If ( j <= n ) and ( a[i] = a[j] ) Then trung := true ; inc (j) ;

Until trung or ( j > n ) ; If trung Then

Begin

m := m + 1;

b[m] := a[i] ; writeln ( b[m] : ) ; End ;

inc(i) ; Until i > n ; If m > Then Begin

i := ; Repeat

(6)

Repeat

trung := false ;

If b[i] = b[j] Then trung := true ; If trung Then

Begin If j < m Then

For k := j To m - Do b[k] := b[k + 1] ; m := m - ;

dec ( j ) ; End ; inc ( j ) ; Until j > m ; inc ( i ) ; Until i > m ; End ;

If m > Then

For k := To m Do Write ( b[k] : ) ; Readln ;

END Bài 11 : uses crt ; var

thang : Byte ;

tien , lai , x : Real ; BEGIN

clrscr ;

writeln (' Chuong trinh tinh thoi gian rut tien lai ') ; write (' So tien lai muon rut : ') ; readln(x) ; tien := 1000 ;

thang :=1 ; repeat

lai := tien * / 100 ; tien := tien + lai ; thang := thang + ; until tien >= x ;

writeln (' Ban phai gui tien ', thang div 12 , ' nam ',

thang mod 12 ,' thang ') ;

writeln (' Khi so tien ban rut duoc la ', tien:12:2 ,' dong ') ; readln ;

END Bài 12 : Uses crt ;

Var a : Array [1 100] Of Integer ; n , i : Byte ;

d : integer ; BEGIN

Clrscr ;

Writeln (' Tim USCLN cua N so :') ; Write (' Nhap so N : ') ; Readln(n) ; Writeln ('Nhap ', N ,' so : ') ; For i := To n Do

Begin

Write(' So thu ', i ,' = ') ; Readln( a[i] ) ; End ;

For i := To n-1 Do Repeat

d := a[i] ;

(7)

a[i+1] := d ; Until a[i] = ;

Writeln (' USCLN cua ', N ,' so la : ', a[n] ) ; Readln ;

Ngày đăng: 21/04/2021, 08:39