cho số N nguyên dương và dãy A gồm N phần tử kiểm tra xem dãy số vừa nhập có phải là một cấp số cộng hay không
VD: N= 4
Dãy A: 1 2 3 4 à là cấp số cộng với công sai d=1
Yêu cầu:
- xác định bài toán
- nêu ý tưởng
- mô 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.
#include <bits/stdc++.h>
using namespace std;
double n,a,d;
int main()
{
cin>>n>>a>>d;
cout<<fixed<<setprecision(2)<<n*(a+d)/2;
return 0;
}
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
a) \({u_1} = 8;\;\;\;\;{u_2} = 13;\;\;\;\;\;{u_3} = 18;\;\;\;\;\;{u_4} = 23;\;\;\;\;\;{u_5} = 28\).
Ta có: \({u_n} - {u_{n - 1}} = 3 + 5n - \left[ {3 + 5\left( {n - 1} \right)} \right] = 5,\;\forall n \ge 2\).
Vậy dãy số \(\left( {{u_n}} \right)\) là cấp số cộng với \({u_1} = 8\) và công sai \(d = 5\).
Số hạng tổng quát: \({u_n} = 8 + 5\left( {n - 1} \right)\).
b) \({u_1} = 2;\;\;\;\;{u_2} = 8;\;\;\;\;{u_3} = 14;\;\;\;\;\;{u_4} = 20;\;\;\;\;\;{u_5} = 26\).
Ta có: \({u_n} - {u_{n - 1}} = 6n - 4 - \left[ {6\left( {n - 1} \right) - 4} \right] = 6,\;\forall n \ge 2\).
Vậy dãy số \(\left( {{u_n}} \right)\) là cấp số cộng với \({u_1} = 2\) và công sai \(d = 6\).
Số hạng tổng quát: \({u_n} = 2 + 6\left( {n - 1} \right)\).
c) \({u_1} = 2;\;\;\;\;{u_2} = 4;\;\;\;\;\;{u_3} = 7;\;\;\;\;\;\;{u_4} = 11;\;\;\;\;\;\;\;{u_5} = 16\)
Ta có: \({u_n} - {u_{n - 1}} = n,\;\) n biến động.
Suy ra đây không phải là cấp số cộng.
d) \({u_1} = 2;\;\;\;\;{u_2} = 5;\;\;\;\;\;\;{u_3} = 8;\;\;\;\;\;\;{u_4} = 11;\;\;\;\;\;\;\;{u_5} = 14\)
Ta có: \({u_n} - {u_{n - 1}} = 3\).
Vậy dãy số \(\left( {{u_n}} \right)\) là cấp số cộng với \({u_1} = 2\) và công sai \(d = 3\).
Số hạng tổng quát: \({u_n} = 2 + 3\left( {n - 1} \right),\;\forall n \ge 2\).
n = int(input("Nhập n: "))
a = [ ]
for i in range(n):
a.append(int(input(f"Nhập phần tử a[{i}]: ")))
print("Dãy số vừa nhập:")
# In dãy số theo thứ tự ngược lại
print(a[::-1])
if a == a[::-1]:
print("Dãy số là dãy đối xứng")
else:
print("Dãy số không phải là dãy đối xứng")
c:
#include <bits/stdc++.h>
using namespace std;
long long a[1000],n,i;
int main()
{
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++)
if (a[i]%2==0) cout<<a[i]<<" ";
return 0;
}
d:
#include <bits/stdc++.h>
using namespace std;
long long a[1000],n,i,nn;
int main()
{
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
nn=a[1];
for (i=1; i<=n; i++) nn=min(nn,a[i]);
cout<<nn;
return 0;
}
Input: dãy A và N phần tử
Output: Là cấp số cộng hoặc không là cấp số cộng
Thuật toán:
- Bước 1: Nhập N và dãy A1,A2,...,An
- Bước 2: d←A2-A1; i←2;
-Bước 3: Nếu i>N thì in ra kết quả là cấp số cộng rồi kết thúc
- Bước 4: Nếu Ai+1-Ai khác d thì chuyền xuống bước 6
- Bước 5: i←i+1, quay lại bước 3
- Bước 6: Thông báo không phải là cấp số cộng rồi kết thúc