Xây dựng thuật toán sắp xếp bằng tráo đổi một dãy số ko tăng.
-Xác định input, output
-Xác định ý tưởng
-Xác định thuật toán
Đề tự ra và làm với chủ đề sau:
Xây dựng thuật toán sắp xếp bằng tráo đổi một dãy số ko tăng.
-Xác định input, output
-Xác định ý tưởng
-Xác định thuật toán
Giúp mình với
#include <bits/stdc++.h>
using namespace std;
long long a[100],n,i,j;
int main()
{
cin>>n;
for (i=1; i<=n; i++)
cin>>a[i];
for (i=1; i<=n-1; i++)
for (j=i+1; j<=n; j++)
if (a[i]<a[j]) swap(a[i],a[j]);
for (i=1; i<=n;i++)
cout<<a[i]<<" ";
return 0;
}
Cho Dãy A gồmN=8.Dãy A gồm các số nguyênlà : 9 ,11, 3, 25, 1, 18,20, 2.Hãy sử dụng thuật toán sắp xếp tráo đổi( sắp xếp dãy A thành dãy không tăng)
Cách làm: Làm theo thứ tự các bước:
1.Xác định bài toán
2.Ý tưởng
3.Thuật toán( làm 1 trong 2 cách:Liệt kê và sơ đồ khối)
4.Ápdụng làm dãy số trên theo các lần duyệt như trong sách giáo khoa
#include <bits/stdc++.h>
using namespace std;
long long a[8],n,i,j;
int main()
{
n=8;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n-1; i++)
for (j=i+1; j<=n; j++)
if (a[i]<a[j]) swap(a[i],a[j]);
for (i=1; i<=n; i++) cout<<a[i]<<" ";
return 0;
}
Cho dãy số A a1,a2,.... aN và khóa k đếm xem trong dãy có bao nhiêu phần tử bằng k .
Xác định input,output , nêu ý tưởng , thuật toán , mô phỏng thuật toán .
Tham khảo
Input: N, dãy số nguyên a1,a2,...,aN và k
Output: Số phần tử là bội của k
Thuật toán liệt kê:
Bước 1: Nhập N, dãy số nguyên a1,a2,...,aN và k
Bước 2: d←0; i←1;
Bước 3: Nếu i>N thì in ra d và kết thúc
Bước 4: Nếu ai chia hết cho k thì d←d+1;
Bước 5: i←i+1; quay lại bước 3
Bài 2: Xây dựng thuật toán tìm GTNN của hai số x,y
-Xác định:
+input:
+output:
-Hướng giải:
-Xây dựng thuật toán:
PP liệt kê
Input: x,y
Output: số lớn nhất là x hoặc y
Hướng giải:
So sánh 2 số nếu số nào lớn hơn thì số đó là GTLN
Thuật toán:
-Bước 1: Nhâp x và y
-Bước 2: Nếu x>y thì max←x;
-Bước 3: Nếu x<y thì max←y;
-Bước 4: In ra kết quả và kết thúc
Cho số nguyên dương N và dãy số nguyên a1,a2,…,aN. Tính tổng của các số dương trong dãy số trên. (2đ)
a. Xác định input và output ?
b. Xây dựng thuật toán cho bài toán trên bằng phương pháp liệt kê (hoặc sơ đồ khối)?
c. Mô phỏng thuật toán với ví dụ dưới đây: Với N =
i | ||||||||
ai | 3 | -4 | 6 | -5 | -12 | 7 | 0 | 8 |
Tổng |
Quá trình giải bài toán trên máy tính gồm các bước nào? *
A Xây dựng thuật toán, xác định bài toán, viết chương trình
B Xác định bài toán, xây dựng thuật toán, viết chương trình.
C Tìm hiểu bài toán, xây dựng thuật toán, viết chương trình.
D Xác định giả thiết kết luận của bài toán, tìm lời giải.
Giúp mình với mình đang cần gấp lắm 😭😭 Cho bài toán tìm giá trị nhỏ nhất của một dãy số nguyên a1, a2,... ax Em hãy thực hiện các yêu cầu sau: a. Xác định input và output của bài toán b. Nêu ý tưởng của bài toán c. Viết thuật toán giải bài toán d. Mô phỏng thuật toán trên với dãy số 11, 30, 8, 67
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,nn;
int main()
{
cin>>n;
cin>>x;
nn=x;
for (i=1; i<n; i++)
{
cin>>x;
nn=min(nn,x);
}
cout<<nn;
return 0;
}
Viết thuật toán tính tổng các giá trị dương trong dãy số cho trước A = { a1, a2,…,an }
- Xác định input/output
- thuật toán
- ví dụ minh hoạ
hộ mình zới ạaa
#include <bits/stdc++.h>
using namespace std;
long long x,n,i,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;
}
Câu 6. Xác định Input, output, mô tả thuật toán và viết chương trình giải các bài toán:
a. Sắp xếp 2 số a, b theo thứ tự không tăng, không giảm.
b.Tìm giá trị lớn nhất, nhỏ nhất trong 3 số a, b, c.