Bài 1: (Nếu đề bài là chỉ tìm TBC của 2 chữ số lớn nhất và bé nhất thì bạn bỏ phần trong dấu /* */ đi )
Program dsa;
Uses crt;
Var i,j,n,a,dem1,dem2,Min,Max:integer;
S,S1:String;
Begin
Writeln('Moi ban nhap a=');
Readln(a);
Str(a,S);
{Tim min}
Min:=Maxint;
For i:=1 to length(S) do
Begin
S1:=Copy(S,i,1);
Val(S,t,c);
If t<Min then Min:=t;
End;
{Tim max}
Max:=0;
For i:=1 to length(S) do
Begin
S1:=Copy(S,i,1);
Val(S,t,c);
If t>Max then Max:=t;
End;
/*For i:=1 to lengt(S) do
Begin
S1:=Copy(S,i,1);
Val(S,t,c);
If t=Min then inc(dem1);
If t=Max then inc(dem2);
End;
TBC:=(dem1*Min+dem2*Max)/(dem1+dem2));
Writeln('TBC bằng ',TBC:5:5);*/
Writeln('TBC của chữ số lớn nhất và bé nhất là :',(Min+Max)/2:5:5);
Readln;
End.
Bài 2:
Program dsa;
Uses crt;
Var i,j,n,a,dem,Tong:integer;
S,S1:String;
Begin
Writeln('Moi ban nhap n=');
Readln(n);
For i:=1 to n do
If (n mod i=0) and (i mod 2=1) then
Begin
dem=dem+1;
Tong:Tong+i;
End;
Writeln('TBC các ước lẻ là :',Tong/dem:5:5);
Readln;
End.
Bài 3 đề là a<=2 hay a>=2?
Bài 4:
Program dsa;
Uses crt;
Var i,j,n,Tong:integer;
Begin
Writeln('Moi ban nhap n=');
Readln(n);
For i:=1 to n do
If (n mod 2=i mod 2) and (n mod i=0) then
Tong:=Tong+i;
Writeln('Tổng cần tính là :',Tong);
Readln;
End.