nêu ý tưởng giải bài toán sau : cho số nguyên N và dãy gồm N số nguyên khác nhau A1,A2,....An hãy đưa ra dãy sau khi đổi chỗ phần tử đầu tiên và phần tử có giá trị lớn nhất cho nhau
Xây dựng thuật toán cho bài toán sau: cho 1 số nguyên dương N và dãy số nguyên A: a1,a2…aN. Hãy tính: a) Tổng các phần tử có giá trị dương: a1+a3+a5+a7 b) đếm xem trong dãy A có bao nhiêu phần tử có giá trị
a: #incldue <bits/stdc++.h>
using namespace std;
long long i,n,x,t;
int main()
{
cin>>n;
t=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x>0) t=t+x;
}
cout<<t;
return 0;
}
Trình bày các bước giải bài toán sau:
Cho số nguyên N và dãy A1,A2.....AN
Hãy tìm và đưa ra vị trí của phần tử có giá trị lớn nhất.
#include <bits/stdc++.h>
using namespace std;
long long a[10000],n,i,ln;
int main()
{
cin>>n;
ln=LLONG_MIN;
for (i=1; i<=n; i++)
{
cin>>a[i];
ln=max(ln,a[i]);
}
for (i=1; i<=n; i++)
if (ln==a[i]) cout<<i<<" ";
return 0;
}
Bài 3. Viết chương trình nhập từ bàn phím dãy số thực có N phần tử (1<N<100). hãy in ra màn hình
a. dãy số ban đầu đã nhập
b. dãy số đã sắp xếp lại. biết sắp xếp các phần tử theo nguyên tắc sau: a1 đổi chỗ cho an, a2 đổi chỗ cho an-1,...
Giúp mik với ạ!!! Mik cần gấp!!!Mik xin cảm ơn trước ạ!!!
#include <bits/stdc++.h>
using namespace std;
double a[100];
int i,n;
int main()
{
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++) cout<<a[i]<<" ";
cout<<endl;
for (i=1; i<=n; i++)
swap(a[i],a[n+1-i]);
for (i=1; i<=n; i++) cout<<a[i]<<" ";
return 0;
}
Nói nhanh: Từ dãy số nguyên A ban đầu gồm n phần tử: a1,a2,...,an (ai ). An và Bình thay phiên nhau nói nhanh các số sao cho số thứ nhất là phần tử đầu tiên của dãy A, số thứ hai là tổng của hai phần tử đầu tiên của dãy A, số thứ i là tổng của i phần tử đầu tiên của dãy A.
Yêu cầu: Hãy viết lại các số An và Bình nói nhanh đó;
Dữ liệu gồm:
- Dòng 1: một số nguyên dương n (n )
- Dòng 2: ghi lần lượt các số a1, a2, …, an tương ứng với các số của dãy A.
Cho dãy A gồm n số nguyên (n>0), các phần tử lần lượt của dãy số có giá trị A1,A2,.....An . Hãy đếm xem trong dãy A có bao nhiêu phần tử có giá trị là 27 .
a) Xác định bài toán
b) Xây dựng thuật toán
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,dem;
int main()
{
cin>>n;
dem=0;
for (i=1;i<=n; i++)
{
cin>>x;
if (x==27) dem++;
}
cout<<dem;
return 0;
}
a)
Input: số nguyên dương n và dãy số A1,A2,...,An
Output: Số phần tử có giá trị bằng 27
b) Thuật toán liệt kê:
Bước 1: Nhập n và dãy A1,A2,..,An
Bước 2: Dem←0; i←1;
Bước 3: Nếu i>n thì in ra Dem và kết thúc
Bước 4: Nếu Ai = 27 thì Dem←Dem+1;
Bước 5: i←i+1, quay lại bước 3
Cho dãy A gồm n số nguyên (n>0), các phần tử của dãy số lần lượt có giá trị A1, A2,….,An. Hãy đếm xem trong dãy A có bao nhiêu phần tử có giá trị là 50
a. Xác định bài toán
b. Xây dựng thuật toán
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,dem;
int main()
{
cin>>n;
dem=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x==50) dem++;
}
cout<<dem;
return 0;
}
Em hãy mô tả thuật toán bằng cách liệt kê hoặc sơ đồ khối để giải bài toán sau
“Cho dãy số nguyên gồm N phần tử : A1, A2.... An, đếm xem có bao nhiêu số nguyên âm có trong dãy”.
#include <bits/stdc++.h>
using namespace std;
long long x,i,n,dem;
int main()
{
cin>>n;
dem=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x<0) dem++;
}
cout<<dem;
return 0;
}
Cho một dãy số nguyên A gồm N phần tử A1, A2,…, AN và hai số nguyên dương U, V (1 ≤ U ≤ V ≤ N). Hãy tìm một đoạn con liên tiếp của dãy A có tổng các phần tử đạt giá trị lớn nhất và độ dài là D tùy ý với U ≤ D ≤ V. (Độ dài của đoạn con là số lượng phần tử trên đoạn con đó).
input out
5 1
2 3 -4 3 -2 -6 5
giúp em với c++ ạ