Hãy mô tả thuật toán cho các bài toán sau: a) Tính tổng các phần tử chia hết cho 3 và chia hết cho 9 trong dãy gồm n số a1, a2, a3, …, an.
: Hãy mô tả thuật toán cho các bài toán sau:
a) Tính tổng các phần tử chia hết cho 3 và chia hết cho 9 trong dãy gồm n số a1, a2, a3, …, an.
b) Tính tổng các ước số của một số nguyên N.
c) Hoán đổi giá trị của hai số nguyên M và N.
d) Tìm ước chung lớn nhất của hai số X và Y
Cho dãy A gồm N số nguyên tử A1,A2,...An.Hãy tính tổng các phần tử chia hết cho 3 trong dãy A.Viết thuật toán giải bài toán trên bằng cách liệt kê.
Thuật toán
-Bước 1: Nhập dãy số
-Bước 2: t←0; i←1;
-Bước 3: Nếu a[i] mod 3=0 thì t←t+a[i];
-Bước 4: i←i+1;
-Bước 5: Nếu i<=n thì quay lại bước 3
-Bước 6: Xuất t
-Bước 7: Kết thúc
Xây dựng thuật toán của bài toán sau: Cho dãy A gồm N số nguyên a1,a2,...,aN và 1 số nguyên k cho trước. Đếm xem có bao nhiêu phần tử trong dãy A chia hết cho số k. Mô phỏng thuật toán với 2 bộ input.
1. Tính tổng các số trong dãy số A = a1+a2+a3+..aN. Xác định input của bài toán
2. Cho N và dãy a1,a2,...aN. Trường hợp tìm thấy và đưa ra chỉ số i đầu tiên mà a i chia hết cho 3 thì với điều kiện nào thuật toán sẽ dừng?
A. i>N
B.ai chia hết cho 3
C. ai không chia hết cho 3
D. i<N
3. Thuật toán sau dùng để giải quyết bài toán nào?
B1: Nhập N, các số hạng a1,a2,a3,..aN
B2: Tong - 0, i - 1
B3. Nếu I>N thì đưa ra Tong rồi kết thúc
B4: Nếu i chia thì hết cho 2 thì Tong - Tong + Ai
B5: i - i+1
B6: quay lại B3
A. Tính tổng các số có vị trí chẵn
B. Tính tổng dãy số
C. Tính tổng các số dương trong dãy
D. Tính tổng các số chẵn trong dãy
4. Thuật toán sau dùng để giải quyết bài toán nào?
B1: Nhập giá trị hai số a,b
B2: c -a
B3: a - b
B4: b - c
B5: đưa ra giá trị mới của a và b rồi kết thúc
A. Hoán đổi giá trị 2 số a,b
B. Hoán đổi giá trị 3 số a,b,c
C. Tìm giá trị của a,b,c
D. Nhập giá trị của 3 số a,b,c
1:
#include <bits/stdc++.h>
using namespace std;
long long n,i,x;
int main()
{
cin>>n;
long long t=0;
for (i=1; i<=n; i++)
{
cin>>x;
t=t+x;
}
cout<<t;
return 0;
}
Nhập vào dãy số nguyên N và dãy số a1, a2...aN. Hãy tính tổng các số trong dãy chia hết cho 3 b) xây dựng thuật toán c) mô phỏng thuật toán (chọn 10 giá trị bất kì )
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,t;
int main()
{
cin>>n;
t=0;
for (i=1; i<=n;i++)
{
cin>>x;
if (x%3==0) t=t+x;
}
cout<<t;
return 0;
}
Xây dựng thuật toán của bài toán sau cho dãy số nguyên A gồm N : số a1,a2...an và khoá K .Tính tổng các số chia hết cho k
#include <bits/stdc++.h>
using namespace std;
long long a[100],n,i,t,k;
int main()
{
cin>>n>>k;
t=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x%k==0) t=t+x;
}
cout<<t;
return 0;
}
Cho dãy A gồm N số nguyên a1,a2 ,…aN. Hãy cho biết tổng tất cả các số trong dãy A và giá trị trung bình cộng của các số trong dãy A?
Hãy xác định bài toán và mô tả thuật toán giải các bài toán
#include <bits/stdc++.h>
using namespace std;
double x,t;
int n,i;
int main()
{
cin>>n;
t=0;
for (i=1; i<=n; i++)
{
cin>>x;
t=t+x;
}
cout<<"tong cac so la:"<<fixed<<setprecision(2)<<t<<endl;
cout<<"trung binh la:"<<fixed<<setprecision(2)<<t/(n*1.0);
return 0;
}
Y tưởng : xét từng số hạng trong dãy nếu số hạng > 0 thì xếp vào một biến tổng rồi chia cho số hàng đã xếp được
Input : Dãy A gồm N số nguyên a1....aN;
Output : Trung bình cộng của các số dương;
B1 : Nhập N số nguyên a1.... aN;
B2 : TB <--- 0, dem <---- 0, i <---- 1, Tong <--- 0;
B3 : Nếu a[i] > 0 thì Tong <--- TB + a[i];
B4 : dem <--- dem + 1;
B5 : Nếu i > N thì đưa ra màn hình kết quả TB = Tong/Dem rồi kết thúc chương trình;
B 6 : i <--- i + 1 rồi quay lại B3;