[25.03.20] Bài tập cấu trúc for trong C/C++
Bài 1: Viết chương trình:
- Nhập vào số nguyên n >20
- Tính tổng các số chẵn < n
- Đếm có số lẻ <n.
---------------
---------------
Bài 2: Viết chương trình
- In ra tất cả số nguyên dương có 3 chữ số là số chẵn
- Đếm tất cả các số nguyên dương có 3 chữ số sao cho tổng các chữ số của nó luôn là số lẻ.
---------------
---------------
Ket qua:
*** bài tập nâng cao: bài 17, 18 (bài giảng KTLT)
- Nhập vào số nguyên n >20
- Tính tổng các số chẵn < n
- Đếm có số lẻ <n.
---------------
/*
Bài 1: Viết chương trình:
- Nhập vào số nguyên n >20
- Tính tổng các số chẵn < n
- Đếm có số lẻ <n.
*/
#include<iostream>
#include<stdio.h>
using namespace std;
// Ham chinh
int main(){
int n;
// nhap n >20
cout<<"\n Nhap n: ";
cin>>n;
for(;n<=20;)
{
cout<<"\n Nhap lai n! \n Nhap n: ";
cin>>n;
}
// Tinh tong cac so chan
int tongSoChan =0;
for(int i=0;i<=n;i=i+2)
tongSoChan=tongSoChan+i;
cout<<"\n * Tong so chan: "<<tongSoChan;
// Dem so le
int demSoLe=0;
for(int i=1;i<=n;i=i+2)
demSoLe++;
cout<<"\n * So so le dem duoc: "<<demSoLe;
cout<<"\n - END - \n ";
return 0;
}
Ket qua:
---------------
Bài 2: Viết chương trình
- In ra tất cả số nguyên dương có 3 chữ số là số chẵn
- Đếm tất cả các số nguyên dương có 3 chữ số sao cho tổng các chữ số của nó luôn là số lẻ.
---------------
/*
Bài 2: Viết chương trình
- In ra tất cả số nguyên dương có 3 chữ số là số chẵn
- Đếm tất cả các số nguyên dương có 3 chữ số sao cho tổng các chữ số của nó luôn là số lẻ.
*/
#include<iostream>
#include<stdio.h>
using namespace std;
// Ham chinh
int main(){
int n;
// in ra tat ca so nguyen duong co 3 chu so la so chan
cout<<"\n * In so so chan: \n";
for(int i=100;i<=999;i++)
if(i%2==0) cout<<i<<" ; ";
//Dem so co 3 chu so co tong la so le
int dem=0;
for(int i=100;i<=999;i++)
if((i/100+(i/10)%10+i%10)%2!=0)
dem++;
cout<<"\n * Dem so co 3 chu so co tong la so le: "<< dem;
cout<<"\n - END - \n ";
return 0;
}
---------------
Ket qua:
*** bài tập nâng cao: bài 17, 18 (bài giảng KTLT)
17. Viết chương trình tính các tổng sau:
a) S=1 + 2 + ... + n
b) S=1/2 + 2/3 + ... +n/(n+1)
c) S= - 1 +2 - 3 +4 - ... + (-1)^n*n
a) S=1 + 2 + ... + n
b) S=1/2 + 2/3 + ... +n/(n+1)
c) S= - 1 +2 - 3 +4 - ... + (-1)^n*n
---------------
/*
17. Viết chương trình tính các tổng sau:
a) S=1 + 2 + ... + n
b) S=1/2 + 2/3 + ... +n/(n+1)
c) S= - 1 +2 - 3 +4 - ... + (-1)^n*n
*/
#include<iostream>
#include<stdio.h>
using namespace std;
// Ham chinh
int main(){
int n;
// nhap n bat ky
cout<<"\n Nhap n: ";
cin>>n;
// a) tinh S1 = 1+2+3+...+n
int s1=0;
for(int i=1;i<=n;i++)
s1=s1+i;
cout<<"\n a) S = "<<s1;
// b) S=1/2 + 2/3 + ... +n/(n+1)
float s2=0;
for(int i=1;i<=n;i++)
s2=s2+ (float)i/(i+1);
cout<<"\n b) S = "<<s2;
// c) S= - 1 +2 - 3 +4 - ... + (-1)^n*n
float s3=0;
int dau=-1;
for(int i=1;i<=n;i++)
{
s3=s3+ dau*i;
dau=-dau;
}
cout<<"\n c) S = "<<s3;
cout<<"\n - END - \n ";
return 0;
}
---------------
Ket qua:
18. Viết chương trình nhập vào một dãy n số, tìm số lớn nhất của dãy và xác định vị trí của số lớn nhất trong dãy.
---------------
/*
18. Viết chương trình nhập vào một dãy n số, tìm số lớn nhất của dãy và xác định vị trí của số lớn nhất trong dãy.
*/
#include<iostream>
#include<stdio.h>
#define Max 100
using namespace std;
// Ham chinh
int main(){
// khai bao bien
int a[Max],n;
// nhap so phan tu n
cout<<"\n Nhap n: ";
cin>>n;
// Nhap day so
cout<<"\n Nhap day so: ";
for(int i=0;i<n;i++)
{
cout<<"\n a["<<i<<"]=";
cin>>a[i];
}
// Tim so lon nhat trong day
int max=a[0];
for(int i=1;i<n;i++)
if(max<a[i]) max=a[i];
cout<<"\n * So lon nhat la: "<< max;
// Tim vi tri cua so lon nhat
cout<<"\n * Vi tri cua so lon nhat: ";
for(int i=1;i<n;i++)
if(max==a[i])
cout<<i<<", ";
cout<<"\n - END - \n ";
return 0;
}
---------------
Ket qua: