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 ;