Cho số nguyên dương N và dãy số nguyên khác nhau a1,a2,....,an và số nguyên k.Viết phương trình tìm vị trí xuất hiện của k trong dãy số trên. (sử dụng thuật toán tìm kiếm tuần tự)- Viết trên Pascal.
cho dãy a là dãy gồm N(<=250)số nguyên dương A1...An và số nguyên k hãy tìm kiếm số nguyên k trong dãy a
xác định bài toán
Viết thuật toán tìm kiếm nhị phân cho bài toán
#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;
}
Nhập số nguyên dương N và dãy số a1,a2,…,An. số nguyên K; Đếm có bao nhiêu số nguyên k xuất hiện trong dãy A
1)Xác định input, output bài toàn
2) Mô tả thuật toán trên bằng PP Liệt kê
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,k,dem;
int main()
{
cin>>n>>k;
dem=0;
for (i=1;i<=n; i++)
{
cin>>x;
if (x==k) dem++;
}
cout<<dem;
return 0;
}
cho số nguyên dương n và dãy số nguyên dương a1, a2,...,an. hãy cho biết vị trí của các số mà chữ số tận cùng là 0 hoặc 5
- Nêu ý tưởng để giải bài toán
- Viết thuật toán bằng cách vẽ sơ đồ khối cho bài toán trên
- Kẻ bảng mô phỏng thuật toán với dãy số: 10, 13, 55, 53, 30, 21, 32
Ý tưởng: Sau khi nhập dãy xong rồi chúng ta sẽ xét từng phần tử trong dãy nếu có phần tử nào chia 10 dư 0 hoặc 5 thì tăng dem lên, và dem chính là két quả của đề bài
Bài 1. Cho số nguyên dương N, dãy các số nguyên dương a1, a2, a3,…,aN và một số nguyên dương x. Trình bày thuật toán kiểm tra xem số x có trong dãy hay không? (có thể trình bày thuật toán dưới dạng liệt kê hoặc sơ đồ khối).
Giả sử có dãy số: a1, a2, a3, a4. Trong đó:
- a1: là ngày sinh của học sinh.
- a2: là tháng sinh của học sinh.
- a3: là năm sinh của học sinh.
- a4: là số 2021.
- x: là số 15.
Hãy trình bày các bước để kiểm tra x có trong dãy a1, a2, a3, a4 hay không?
Ví dụ: học sinh sinh ngày 18/05/2005 thì cần trình bày các bước để kiểm tra số 15 có trong dãy số 18, 5, 2005, 2021 hay không?
#include <bits/stdc++.h>
using namespace std;
long long a[4],n,x;
int main()
{
cin>>n>>x;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++)
if (a[i]==x)
{
cout<<"YES";
break;
}
cout<<"NO";
return 0;
}
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 |
Input: dãy số nguyên gồm n số được nhập từ bạn phím
Output: số lớn nhất, bé nhất trong dãy
B1: nhập dãy số nguyên
B2: gán max:=a[1]; min:=a[1]
B3: nếu max<a[i] thì max:=a[i]; min>a[i] then min:=a[i]
B4: in kết quả ra màn hình
Lập trình giải quyết bài toán sau cho số nguyên dương N (N<-500) và dãy số nguyên a1,a2,...aN. Tính và đưa ra màn hình tổng các số chẵn ở vị trí lẻ trong dãy.
#include <bits/stdc++.h>
using namespace std;
long long a[1000],i,n,t;
int main()
{
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
t=0;
for (i=1; i<=n; i++)
if (a[i]%2==0 && i%2==1) t+=a[i];
cout<<t;
return 0;
}
Cho dãy số n số nguyên dương a1,a2,...,an. Hãy tìm hai số ai,aj sao cho i khác j và ai+aj đạt max. Xây dựng thuật toán bằng sơ đồ khối hoặc liệt kê cho bài toán trên.
Viết một chương trình nhập n nguyên dương và n số nguyên a1, a2,…,an. a/ Tính tổng các số chẵn của dãy (In kết quả trên một dòng) b/ In các số của dãy nằm ở vị trí chẵn (2,4, 6…) ra màn hình (trên 1 dòng ),