Nhập một số nguyên n, a1...an. Tính trung bình cộng của số đó. Xác định bài toán và viết thuật toán
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
a)
Input: Dãy n số nguyên
Output: Đếm xem trong dãy đó có bao nhiêu số nguyên dương
b)
Bước 1: Nhập n và nhập dãy số
Bước 2: dem←0; i←1;
Bước 3: Nếu a[i]>0 thì dem←dem+1;
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 dem
Bước 7: Kết thúc
#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;
}
-khai báo :
#include<iostream>
using namespace std;
(hoặc bạn có thể khai báo kiểu khác vd :
#include<iostream>
using namespace std;
void show() { ...... }
)
-Tạo 3 biến có thể nhập từ bàn phím a, b, c bằng cách :
int a, b, c;
cin >> a >> b >> c;
-Tạo biến bất kì lưu giá trị của tổng ba số a, b, c bằng cách :
int h = a + b + c;
-xuất ra màn hình giá trị của h / 3 bằng cách :
cout << "(a + b + c) / 3 = " << h / 3;
-kết thúc chương trình :
return 0;
}
(hoặc tùy bạn)
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,t,dem;
int main()
{
cin>>n;
dem=0;
t=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x%2!=0)
{
dem++;
t=t+x;
}
}
double s=t*1.0/dem*1.0;
cout<<fixed<<setprecision(2)<<s;
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;
Tham khảo
Bước 1: Nhập N và dãy a1,a2,...,an
Bước 2: i←1; d←0;
Bước 3: Nếu i>n thì in ra có d số âm và kết thúc
Bước 4: Nếu ai < 0 thì d←d+1;
Bước 5: i←i+1, quay lại bước 3
#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<0) and (x%2!=0)) t=t+x;
}
cout<<t;
return 0;
}
a) Xác định bài toán
-Input: Dãy A gồm n số nguyên
-Output: Tổng các số hạng lẻ trong A
b) Mô tả thuật toán
-Bước 1: Nhập n và nhập dãy số
-Bước 2: s←0; i←1;
-Bước 3: Nếu a[i] không chia hết cho 2 thì s←s+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 s
-Bước 7: Kết thúc
#include <bits/stdc++.h>
using namespace std;
long long i,n,x,k;
int main()
{
cin>>n>>k;
for (i=1; i<=n; i++)
{
cin>>x;
if (x==k) cout<<i<<" ";
}
return 0;
}
B1: Nhập số nguyên n và dãy số a1, a2, ..., an
B2: S \(\leftarrow\) 0; i \(\leftarrow\) 1; d \(\leftarrow\) 0
B3: Nếu i > n, chuyển đến B6
B4: d \(\leftarrow\) d + 1; S \(\leftarrow\) S+ai
B5: i \(\leftarrow\) i+1, quay lại B3
B6: Trung bình cộng S/d, nếu d khác 0 thì kết thúc và ngược lại
Input: Số nguyên N và dãy a1,a2,...an
Output: Trung bình cộng của dãy đó