Tải bản đầy đủ (.docx) (31 trang)

Bài tập về ngôn ngữ C++

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (116.15 KB, 31 trang )

1. Viết chương trình nhập xuất ra màn
hình thông tin của mỗi sinh viên theo
mẫu sau:
Ho ten:
Ma so sinh vien:
Lop:
So dien thoai: Gioi tinh:
#include <iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
int main(int argc, char *argv[])
{ char
hoten[10],masosinhvien[10],lop[8],sodienth
oai[13],gioitinh[5];
cout<<"ho ten"<<"\n";
gets(hoten);
cout<<"ma so sinh vien"<<"\n";
gets(masosinhvien);
cout<<"lop"<<"\n";
gets(lop);
cout<<"so dien thoai"<<"\n";
gets(sodienthoai);
cout<<"gioi tinh"<<"\n";
gets(gioitinh);
cout<<"ho ten: "<1


cout<<"ma so sinh vien:
"<


cout<<"lop: "<cout<<"so dien thoai:
"<cout<<"gioi tinh: "<return 0;
3. Viết chương trình nhập vào 2 số nguyên a, b. Tính tổng,
hiệu, tích, thương
của 2 số trên và in kết quả ra màn hình.
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(int argc, char *argv[])
{
int a,b;
float tong,hieu,tich,thuong;
cout<<"Nhap a="<<"\n";
cin>>a;
cout<<"Nhap b="<<"\n";
cin>>b;
tong=a+b;
hieu=a-b;
tich=a*b;
2


thuong=a/b;
cout<<"tong= "<cout<<"hieu= "<cout<<"tich= "<

cout<<"thuong= "<return 0;
}
4. Viết chương trình nhập vào 4 số nguyên a, b, c, d. Tính
giá trị trung bình
cộng của 4 số trên và in kết quả ra màn hình
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(int argc, char *argv[])
{
int a,b,c,d;
float tbc;
cout<<"nhap a="<<"\n";
cin>>a;
cout<<"nhap b="<<"\n";
cin>>b;
cout<<"nhap c="<<"\n";
cin>>c;
cout<<"nhap d="<<"\n";
cin>>d;
tbc=(a+b+c+d)/4;
cout<<"so trung binh cong= "<3


return 0;
}
5. Nhập vào hai số nguyên a, b. In ra màn hình giá trị

lớn nhất.
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(int argc, char *argv[])
{
int a,b;
cout<<"nhap a="<<"\n";
cin>>a;
cout<<"nhap b="<<"\n";
cin>>b;
if(a>b)
cout<<"a la so lon nhat";
else
cout<<"b la so lon nhat";
return 0;
}
6. Cho ba số a, b, c đọc vào từbàn phím. Hãy tìm giá trịlớn
nhất của ba số
trên và in ra kết quả
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
4


int main(int argc, char *argv[])
{

float a,b,c;
cout<<"nhap so a"<<"\n";
cin>>a;
cout<<"nhap so b"<<"\n";
cin>>b;
cout<<"nhap so c"<<"\n";
cin>>c;
if(a>b)
{
if(a>c)
cout<<"a la so lon nhat";
else
cout<<"b la so lon nhat";
}
else
cout<<"c la so lon nhat";
return 0;
}
9. Giải và biện luận phương trình: ax^2 + bx +c
=0.
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(int argc, char *argv[])
{
float a,b,c,delta,x1,x2;
5



cout<<"nhap so a"<<"\n";
cin>>a;
cout<<"nhap so b"<<"\n";
cin>>b;
cout<<"nhap so c"<<"\n";
cin>>c;
delta=(b*b)-(4*a*c);
if(delta==0)
{
if(delta<0)
cout<<"phuong trinh co nghiem kep X=
"<<(-b)/(2*a)<<" ";
else
cout<<"phuong trinh vo nghiem";
}
else
{
cout<<"phuong trinh co nghiem phan
biet"<<"\n";
cout<<"x1= "<<(-b+sqrt(delta))/(2*a)<<"\n";
cout<<"x2= "<<(-b-sqrt(delta))/(2*a)<<"\n";
}
return 0;
}
16. Viết chương trình tính diện tích và chu
vi các hình: tam giác, hình vuông, hình
chữ nhật và hình tròn với những thông tin
cần được nhập từ bàn phím.
A)


tính diện tích và chu vi hình tam giác:
6


#include<iostream.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
int main(int argc, char *argv[])
{
int a,b,c;
float p,dientich,chuvi;
cout<<"nhap a"<cin>>a;
cout<<"nhap b"<cin>>b;
cout<<"nhap c"<cin>>c;
p=(a+b+c)/2;
if((a+b>c)&&(a+c>b)&&(b+c>a)&&(a>0)&&(b>
0)&&(c>0))
{
cout<<"dien tich tan giac= "<cout<<"chu vi tam giac=
"<}
return 0;
}

tính diện tích và chu vi hình vuông:

7


#include<iostream.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
int main(int argc, char *argv[])
{
int a,b,c,d;
float dientich,chuvi;
cout<<"nhap a"<cin>>a;
cout<<"nhap b"<cin>>b;
cout<<"nhap c"<cin>>c;
cout<<"nhap d"<cin>>d;
if((a=b=c=d)&&(a>0)&&(b>0)&&(c>0))
{
cout<<"dien tich hinh vuong= "<cout<<"chu vi hinh vuong= "<<4*a<<"\n";
}
return 0;
}
B)

tính diện tích và chu vi hình chu nhat:
#include<iostream.h>

#include<stdlib.h>
#include<conio.h>
#include<math.h>
8


int main(int argc, char *argv[])
{
int a,b;
float dientich,chuvi;
cout<<"nhap a"<cin>>a;
cout<<"nhap b"<cin>>b;
if((a!
=b)&&(a>0)&&(b>0))
{
cout<<"dien tich hinh
chu nhat= "<<(a+b)*2<<"\n";
cout<<"chu vi hinh chu
nhat= "<}
return 0;
}
Viết chương trình nhập vào sốnguyên
dương n. Kiểm tra xem n có phải là số chính
phương hay không? (sốchính phương là sốkhi lấy
căn bặc 2 có kết quả là nguyên).
19.


#include<iostream.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
int main(int argc, char *argv[])
{
9


int n,i;
cout<<"nhap so nguyen
n"<cin>>n;
i=sqrt(n);
if(n==i*i)
cout<<"la so chinh
phuong"<<"\n";
else
cout<<"khong phai so
chinh phuong";
return 0;
}
20. Viết chương trình nhập sốnguyên
dương n. Liệt kê n sốnguyên tố đầu tiên.
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
int ktSNT (const int a)
{

int i = 0;
for(i = 2; i <= (int)sqrt(a); i++)
{
if( a % i == 0 || a < 2 && a != 2)
{
return 0;
}
}
10


return 1;
}
int main ()
{
int N,i, k = 0;
int* snt = 0;
printf("\n Nhap vao N:");
scanf("%d", &N);
snt = (int*)malloc(N*sizeof(int));
k = 0;
i = 2;
while(k < N)
{
i++;
if(ktSNT(i) == 1)
{
snt[k] = i;
k++;
}

}
printf("\n
Bang cac so nguyen
to\n");
for (i = 0; i < k; i++)
{
printf("%5d", snt[i]);
}
free(snt);
getch();
return 0;
11


}
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>
#include <stdio.h>
#include <math.h>
int main(int argc, char *argv[])
{
float r,s,p;
cout<<"nhap so r"<cin>>r;
p=r*2*3.14;
s=r*r*3.14;
cout<<"dien tich hinh tron =
"<

43.
cout<<"chu vi hinh tron = "<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 "<12


cin>>n;
for (int i=2;i<=n;i++)
{
for (int j=1;j<=i;j++)
{
if(i%j==0)
dem=dem+1;
}
if(dem==2)
cout<<” so nguyen to nho hon
”<dem=0;
}
return 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 "<cin>>n;
for(i=1; i<=n; i++)
{
j=1;
while(j*j13


j+=1;
if(j*j==i)
cout<}
cout<return 0;
}
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)*(pb)*(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 "<cin>>a;
14


cout<<"nhap so "<cin>>b;
cout<<"nhap so "<cin>>c;
if(a=b=c)
cout<<"la tam giac"<else
cout<<"khong phai la tam giac"<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 = "<cout<<"chieu cao canh a ha="<cout<<"chieu cao canh b hb="<cout<<"chieu cao canh c hb="<return 0;


15


}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"<cin>>a;
cout<<"nhap so b"<cin>>b;
c=a;
d=b;
while(a!=b)
{
if(a>b)
a-=b;
else
b-=a;
ucln=a;
}
cout<<"uoc chung lon nhat= "<bcnn=(c*d)/ucln;
cout<<"boi chung nho nhat= "<return 0;
}


16


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);

17


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;
nhap(M,n);
toanchan(M,n);
if(toanchan(M,n))
cout<<"mang toan chan"<else
cout<<"mang toan le"<return 0;
}
void nhap(int M[5], int &n)
{
cout<<"nhap mang"<cin>>n;
for(int i=0; i{
cout<<"nhap gia tri phan tu mang "<";
cin>>M[i];
}
18


}

int toanchan(int M[5], int n)
{
for(int i=0; i<=n; i++)
{
if(M[i]%2==0)
return 1;
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"<cin>>n;
do
{
a=n%10;
n=n/10;
dem=0;
for(i=1; i<=a; i++)
if(a%i==0)
dem++;
if(dem==2)
demt++;
19



}
while(n!=0);
cout<<"demsont= "<return 0;
}
58.
#include <iostream.h>
int tonguocso(int n);
int main(int argc, char *argv[])
{
int n;
cout<<"tinh tong cac uoc so"<cout<<"nhap so can tinh "<cin>>n;
while(n<0 || n>99999)
{
cout<<"so N co toi da 5 chu so0"<cout<<"Nhap lai so n can kiem tra "<cin>>n;
}
cout<<"so "<"<}
int tonguocso(int n)
{
int tong=0;
for(int i=1; i<=n; i++)
{
20



if(n%i==0) tong+=i;
}
return tong;

21


69. Viết chương trình nhập vào mảng một chiều các số
nguyên và xuất ra màn hình các phần tử là số nguyên tố.
#include <iostream.h>
void nhapmang(int mang[],int &n);
void SNT(int mang[],int &n);
int main(int argc, char *argv[])
{
int mang[100];
int n;
nhapmang(mang,n);
SNT(mang,n);
return 0;
}
void nhapmang(int mang[],int &n)
{
cout<<"nhap so phan tu: ";
cin>>n;
int i;
for( i=0;i{
cout<<"nhap gia tri phan tu ["<

cin>>mang[i];
}
}
void SNT(int mang[],int &n)
{
int i,dem;
for( i=0;i{
dem=0;
22


for(int t=1;t<=mang[i];t++)
if(mang[i]%t==0)dem++;
if(dem==2)
cout<<"a["<}
cout<}

72. Viết phương thức tìm vịtrí của phần tửnhỏnhất trong
mảng các số nguyên.
#include <iostream.h>
void nhapmang(int mang[],int &n);
void timM(int mang[],int &n);
int main(int argc, char *argv[])
{
int mang[100];
int n;
nhapmang(mang,n);

timM(mang,n);
return 0;
}
void nhapmang(int mang[],int &n)
{
cout<<"nhap so phan tu: ";
cin>>n;
23


int i;
for( i=0;i{
cout<<"nhap gia tri phan tu ["<cin>>mang[i];
}
}
void timM(int mang[],int &n)
{
int i,min=mang[0];
for(i=0;iif(min>mang[i])
min=mang[i];
cout<<"gia tri nho nhat trong mang la:"<}
Bài 3. Viết chương trình có dùng hàm kiểm tra số nguyên tố.
#include <iostream>
#include <conio.h>
#include <math.h>
int isPrime(int p)

{
float sqrtp = sqrt(p);
if (p < 2) return 0;
if (p == 2) return 1; //2 la so nguyen to dau tien
if (p % 2 == 0) return 0; // 2 la so nguyen to chan duy nhat
for (int d = 3; d <= sqrtp; d += 2)
if (p % d == 0) return 0;
return 1;
}
void main()
24


{
clrscr();
int n;
cout<<"\n Nhap n = "; cin>>n;
for (int i = 1; i < n; i++)
if (isPrime(i)) cout << i << ' ';
cout << endl;
getch();
}
63. Viết chương trình khởi tạo giá trị các phần
tử là 0 cho mảng một
chiều các số nguyên gồm n phần tử.
#include <iostream.h>
void nhapso(int M[5], int &n);
void xuatso(int M[5], int n);
int main(int argc, char *argv[])
{

int M[5],n;
nhapso(M,n);
xuatso(M,n);
return 0;
}
void nhapso(int M[5], int &n)
{
cout<<"nhap so "<cin>>n;
for(int i=0; i<=n; i++)
25


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×