1. 41. Viết chương trình tính diện tích và chu vi của hình chữ nhật với chiều dài và
chiều rộng được nhập từ bàn phím.
#include <iostream.h>
#include <stdio.h>
#include <math.h>
int main(int argc, char *argv[])
{
float a,b,s,p;
cout<<"nhap so a"<<endl;
cin>>a;
cout<<"nhap so b"<<endl;
cin>>b;
s=a*b;
p=(a+b)*2;
cout<<"dien tich hinh chu nhat= "<<s<<endl;
cout<<"chu vi hinh chu nhat= "<<p<<endl;
return 0;
}
42. Viết chương trình tính diện tích và chu vi hình tròn với bán kính được nhập
từ bàn phím.
#include <iostream.h>
2. #include <stdio.h>
#include <math.h>
int main(int argc, char *argv[])
{
float r,s,p;
cout<<"nhap so r"<<endl;
cin>>r;
p=r*2*3.14;
s=r*r*3.14;
cout<<"dien tich hinh tron = "<<s<<endl;
cout<<"chu vi hinh tron = "<<p<<endl;
return 0;
}
43. Nhập số nguyên dương n (n>0). Liệt kê tất cả các số nguyên tố nhỏ hơn n.
#include <iostream.h>
#include <stdio.h>
#include <math.h>
void main()
{
int n,dem=0;
cout<<"nhap so "<<endl;
cin>>n;
for (int i=2;i<=n;i++)
3. {
for (int j=1;j<=i;j++)
{
if(i%j==0)
dem=dem+1;
}
if(dem==2)
cout<<” so nguyen to nho hon ”<<n<<”= ”<< i<<endl;
dem=0;
}
return 0;
}
44. Nhập sốnguyên dương n (n>0). Liệt kê n số chính phương đầu tiên.
#include <iostream.h>
int main(int argc, char *argv[])
{
int n,j,i;
cout<<"nhap so "<<endl;
5. {
cout<<"Nhap so nguyen n : ";
cin>>a;
}
bool KiemTraHT(int n)
{
int tong=0;
for (int i=1;i<n;i++)
if (n%i==0)
tong=tong+i;
if (tong ==n)
return true;
return false;
}
int DemSoHT(int n)
{
int dem=0;
for(int i=1;i<=n;i++)
7. cout<<"Nhap so nguyen a:";
cin>>a;
}
void DocSo(int n)
{
int tram=n/100;
int chuc=n/10%10;
int dv=n%10;
switch(tram)
{
case 1: cout<<"Mot Tram ";break;
case 2: cout<<"Hai Tram ";break;
case 3: cout<<"Ba Tram ";break;
case 4: cout<<"Bon Tram ";break;
case 5: cout<<"Nam Tram ";break;
case 6: cout<<"Sau Tram ";break;
case 7: cout<<"Bay Tram ";break;
case 8: cout<<"Tam Tram ";break;
case 9: cout<<"Chin Tram ";break;
}
switch(chuc)
{
case 0: if (dv==0)
{cout<<" ";break;}
else
{cout<<"Le ";break;}
case 1: cout<<"Muoi ";break;
case 2: cout<<"Hai Muoi ";break;
case 3: cout<<"Ba Muoi ";break;
8. case 4: cout<<"Bon Muoi ";break;
case 5: cout<<"Nam Muoi ";break;
case 6: cout<<"Sau Muoi ";break;
case 7: cout<<"Bay Muoi ";break;
case 8: cout<<"Tam Muoi ";break;
case 9: cout<<"Chin Muoi ";break;
}
switch(dv)
{
case 5:if (chuc==0)
{cout<<"Lam ";break;}
else
{cout<<"Nam ";break;}
case 1: cout<<"Mot"<<endl;break;
case 2: cout<<"Hai"<<endl;break;
case 3: cout<<"Ba"<<endl;break;
case 4: cout<<"Bon"<<endl;break;
case 6: cout<<"Sau"<<endl;break;
case 7: cout<<"Bay"<<endl;break;
case 8: cout<<"Tam"<<endl;break;
case 9: cout<<"Chin"<<endl;break;
}
}
int main()
{
int(n);
Nhap(n);
DocSo(n);
9. }
47. Viết chương trình tính tiền thuê máy dịch vụInternet và in ra màn hình kết
quả. Với dữliệu nhập vào là giờbắt đầu thuê (GBD), giờkết thúc thuê
(GKT), số máy thuê (SoMay).
- Điều kiện cho dữliệu nhập: 6<=GBD<GKT<=21. Giờ là số nguyên.
- Đơn giá: 2500đcho mỗi giờmáy trước 17:30 và 3000đcho mỗi giờ máy
sau 17:30.
#include <iostream.h>
#include <math.h>
int main(int argc, char *argv[])
{
int gbd,gkt,sotien;
do
{
cout<<"nhap gbd"<<endl;
cin>>gbd;
}
while(gbd<6 || gbd>21);
do
{
cout<<"nhap gio ket thuc"<<endl;
10. cin>>gkt;
}
while(gkt< 11 || gkt>21 || gkt<gbd );
//gio bat dau va ket thuc tu 6 gio den 21 gio//
if(gbd<=17 && gkt<=17 )
sotien=2500*(gkt-gbd);
//gio bat dau gio ket thuc sau 17 gio//
if(gbd>17 && gkt>17)
sotien=3000*(gkt-gbd);
//gio vao<=17 gio va ket thuc >17 gio//
if(gbd <=17 && gkt >17)
sotien=(17-gbd)*2500+(gkt-17)*3000;
cout<<"tong so tien= "<<sotien<<endl;
return 0;
}
48. Viết chương trình tính tiền lương ngày cho công nhân, cho biết trước giờ
vào ca, giờ ra ca của mỗi người.
Biết rằng:
- Tiền trả cho mỗi giờ trước 12 giờ là 6000đ và sau 12 giờ là 7500đ.
- Giờ vào ca sớm nhất là 6 giờ sáng và giờ ca trễ nhất là 18 giờ(Giả
sử giờ nhập vào nguyên).
11. #include <iostream.h>
#include <math.h>
int main(int argc, char *argv[])
{
int n,i,a,ra,vao,sotien;
do
{
cout<<"nhap vao gio vao "<<endl;
cin>>vao;
}
while(vao<6 || vao>18);
do
{
cout<<"nhap vao gio ra "<<endl;
cin>>ra;
}
while(ra<6 || ra>18 || ra<vao);
//gio vao va gio ra tu 6 den 12 gio
if(ra<=12 && vao<=12)
sotien=6000*( ra - vao );
//gio vao va gio ra sau 12 h
if(ra>12 && vao>12)
sotien=7500*(ra-vao);
//gio vao <=12 va gio ra >12
if(vao<=12 && ra>12)
sotien=(12-vao)*6000+(ra-12)*7500;
cout<<"so tien phai tra la: "<<sotien<<endl;
return 0;
12. }
50. Nhập vào 3 sốthực a, b, c và kiểm tra xem chúng có thành lập thành 3 cạnh
của một tam giác hay không? Nếu có hãy tính diện tích, chiều dài mỗi
đường cao của tam giác và in kết quả ra màn hình.
- Công thức tính diện tích s = sqrt(p*(p-a)*(p-b)*(p-c) )
- Công thức tính các đường cao: ha = 2s/a, hb=2s/b, hc=2s/c.
(Với p là nữa chu vi của tam giác).
#include <iostream.h>
int main(int argc, char *argv[])
{
int a,b,c;
float p,s,ha,hb,hc;
cout<<"nhap so "<<endl;
cin>>a;
cout<<"nhap so "<<endl;
13. cin>>b;
cout<<"nhap so "<<endl;
cin>>c;
if(a=b=c)
cout<<"la tam giac"<<endl;
else
cout<<"khong phai la tam giac"<<endl;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
ha=(2*s)/a;
hb=(2*s)/b;
hc=(2*s)/c;
cout<<"dien tich tam giac = "<<s<<endl;
cout<<"chieu cao canh a ha="<<ha<<endl;
cout<<"chieu cao canh b hb="<<hb<<endl;
cout<<"chieu cao canh c hb="<<hc<<endl;
return 0;
}
14. 51. Nhập vào 6 sốthực a, b, c, d, e, f . Giải hệ phương trình sau :
#include <iostream.h>
#include <math.h>
int main(int argc, char *argv[])
{
float a,b,c,d,e,f;
float x,y;
float dx,dy,dd;
cout<<"nhap so a"<<endl;
cin>>a;
cout<<"nhap so b"<<endl;
cin>>b;
cout<<"nhap so c"<<endl;
cin>>c;
cout<<"nhap so d"<<endl;
cin>>d;
15. cout<<"nhap so e"<<endl;
cin>>e;
cout<<"nhap so f"<<endl;
cin>>f;
dd=a*e-d*b;
dx=c*e-b*f;
dy=a*f-d*c;
x=dx/dd;
y=dy/dd;
if(dd==0)
{
if(dx==0 && dy==0)
cout<<"phuong trinh vo so nghiem"<<endl;
else
cout<<"phuong trinh vo nghiem"<<endl;
}
else
{
cout<<"phuong trinh co nghiem La: "<<endl;
cout<<"x= "<<x<<endl;
cout<<"y= "<<y<<endl;
}
return 0;
}
16. 52. Viết chương trình nhập 2 số nguyên dương a, b. Tìm USCLN và BSCNN
của hai số nguyên đó.
#include <iostream.h>
int main(int argc, char *argv[])
{
int a,b,c,d,ucln,bcnn;
cout<<"nhap so a"<<endl;
cin>>a;
cout<<"nhap so b"<<endl;
cin>>b;
c=a;
d=b;
while(a!=b)
{
if(a>b)
17. a-=b;
else
b-=a;
ucln=a;
}
cout<<"uoc chung lon nhat= "<<ucln<<endl;
bcnn=(c*d)/ucln;
cout<<"boi chung nho nhat= "<<bcnn<<endl;
return 0;
}
53. Viết chương trình tính tổng nghịch đảo của n giai thừa.
#include <iostream.h>
#include <math.h>
int main(int argc, char *argv[])
{
int n;
float tong,gt;
cout<<"nhap so "<<endl;
cin>>n;
tong=0;
18. gt=1;
for(int i=1; i<=n; i++)
{
gt=gt*i;
tong=tong+1/gt;
}
cout<<"tong nghich dao giai thua= "<<tong<<endl;
return 0;
}
54. Cho 2 số nguyên a, b. Viết hàm hoán vị giá trị 2 số trên.
#include <iostream.h>
int main(int argc, char *argv[])
{
int a,b,max;
cout<<"nhap so "<<endl;
cin>>a;
cout<<"nhap so"<<endl;
cin>>b;
if(a>b)
{
max=a;
19. a=b;
b=max;
}
else
{
max=b;
b=a;
a=max;
}
cout<<"hoan vi cua hai so la "<<a<<b<<endl;
return 0;
}
55. (*)Viết chương trình nhập số nguyên dương n gồm 5 chữ số, kiểm tra xem
các chữ số n có phải là số đối xứng hay không.
Ví dụ: Đối xứng: 13531
Không đối xứng: 13921
#include <iostream.h>
int main(int argc, char *argv[])
{
long int n,so,sodao=0;
cout<<"nhap so "<<endl;
cin>>n;
20. so=n;
while(so!=0)
{
sodao=sodao*10+so%10;
so=so/10;
}
if(sodao==n)
cout<<"la so doi xung"<<endl;
else
cout<<"khong la so doi xung"<<endl;
return 0;
}
57. Viết chương trình nhập số nguyên dương n gồm k chữ số, (0<=k<=5) đếm
xem n có bao nhiêu chữ số là số nguyên tố.
#include <iostream.h>
int main(int argc, char *argv[])
{
int i,a,n,dem,demt=0;
cout<<"nhap so"<<endl;
cin>>n;
do
{
22. cin>>n;
}
cout<<"so "<<n<<" co tong cac uoc so "<<tonguocso(n)<<endl;
}
int tonguocso(int n)
{
int tong=0;
for(int i=1; i<=n; i++)
{
if(n%i==0) tong+=i;
}
return tong;
}
60. Viết chương trình nhập số nguyên dương n gồm k chữ số (0<=k<=5) , kiểm
tra xem các chữ số của n có toàn lẻ hay toàn chẵn không.?
#include <iostream.h>
#include <math.h>
void nhap(int M[5], int &n);
int toanchan(int M[5], int n);
int main(int argc, char *argv[])
{
int M[5];
int n;
23. nhap(M,n);
toanchan(M,n);
if(toanchan(M,n))
cout<<"mang toan chan"<<endl;
else
cout<<"mang toan le"<<endl;
return 0;
}
void nhap(int M[5], int &n)
{
cout<<"nhap mang"<<endl;
cin>>n;
for(int i=0; i<n; i++)
{
cout<<"nhap gia tri phan tu mang "<<i+1<<"= ";
cin>>M[i];
}
}
int toanchan(int M[5], int n)
{
for(int i=0; i<=n; i++)
{
if(M[i]%2==0)
return 1;
return 0;
}
}
24. 61. (*)Viết chương trình nhập số nguyên dương n gồm k chữ số ,(0<= k < =5) sắp
xếp các chữ sốcủa n theo thứ tự tăng dần.
Ví dụ: Nhập n=1536
Kết quả sau khi sắp xếp: 1356.
#include <iostream.h>
#include <conio.h>
int main()
{
int a[5],so,n=0,i,j;
cout<<"Nhap 1 so toi da 5 chu so: ";
cin>>so;
do
{
a[n]=so % 10;
so=so/10;
n++;
}
while(so!=0);