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.
2:
#include <bits/stdc++.h>
using namespace std;
int A[100],ln,nn,vt1,vt2,n;
int main()
{
cin>>n;
for(int i=1; i<=n; i++) cin>>A[i];
ln=A[1];
for (int i=1; i<=n; i++)
ln=max(ln,A[i]);
nn=A[1];
for (int i=1; i<=n; i++)
nn=min(nn,A[i]);
vt1=1; vt2=n;
for (int i=1; i<=n; i++)
if (ln==A[i] && vt1<=i) vt1=i;
for (int i=n; i>=1; i--)
if (nn==A[i] && vt2>=i) vt2=i;
swap(A[vt1],A[vt2]);
for (int i=1; i<=n; i++)
cout<<A[i]<<" ";
}
2:
uses crt;
var a:array[1..100]of integer;
n,i:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
for i:=1 to n do
if a[i]<0 then write(i:4);
readln;
end.
Uses crt;
var n,i,max,min: integer;
a: array[1..100] of longint;
begin clrscr;
readln(n);
for i:=1 to n do read(a[i]); readln;
max:=a[1];
for i:=1 to n do if(max<a[i]) then max:=a[i];
writeln(max);
min:=a[1];
for i:=1 to n do if(min>a[i]) then min:=a[i];
writeln(min);
readln;
end.
3:
#include <bits/stdc++.h>
using namespace std;
int A[100],i,n,x,kt;
int main()
{
cin>>n;
for (int i=1; i<=n; i++) cin>>A[i];
cin>>x;
kt=0;
for (int i=1; i<=n; i++)
if (A[i]==x) then kt=1;
if (kt==0) cout<<"NO";
else
{
for (int i=n; i>=1; i--)
if (A[i]==x)
{
cout<<A[i];
return 0;
}
}
return 0;
}
4:
#include <bits/stdc++.h>
using namespace std;
int A[100],i,n;
int main()
{
cin>>n;
for (int i=1; i<=n; i++)
cin>>A[i];
sort(A+1,A+n+1);
for (int i=1; i<=n; i++)
cout<<A[i]<<" ";
return 0;
}
uses crt;
var a:array[1..100] of integer;
max,n,i:integer;
begin
writeln('nhap do dai cua day');readln(n);
for i:=1 to n do begin writeln('A[',i,']=;);readln(a[i]); end;
max:=a[1];
for i:=2 to n do if a[i] > max then begin
max:=a[i]; writeln('vi tri cua max trong day la',i);end;
readln
end.
thật ra thì cũng không cần biến max nhưng mình làm vậy cho dễ hiểu hơn nhé!
*Thuật toán:
-Bước 1: Nhập n và nhập dãy số
-Bước 2: max←a[1]; i←1;
-Bước 3: i←i+1;
-Bước 4: Nếu max<a[i] thì max←a[i];
-Bước 5: Nếu i<=n thì quay lại bước 3
-Bước 6: Cho for chạy từ 1 đến n
Nếu a[i]=max thì xuất i
-Bước 7: Kết thúc
Câu 1: Tính số fibonaci thứ N. biết f(1)= 1; f(2) = 1; f(N)=f(N-2)+F(N-1)
#include <iostream>
int fibonacci(int n) {
if (n <= 2) {
return 1;
}
int prev = 1;
int current = 1;
int fib;
for (int i = 3; i <= n; i++) {
fib = prev + current;
prev = current;
current = fib;
}
return fib;
}
int main() {
int N;
std::cin >> N;
int result = fibonacci(N);
std::cout << "Số Fibonacci thứ " << N << " là: " << result << std::endl;
return 0;
}
Câu 2: Cho dãy a gồm m số nguyên (|ai| <=10), dãy b gồm n số nguyên (bị <=10). 2 dãy này đã được sắp xếp không giảm. Hãy in ra một dãy c có các phần tử gồm 2 dãy số trên cũng được sắp xếp không giảm.
#include <iostream>
#include <vector>
std::vector<int> mergeArrays(const std::vector<int>& a, const std::vector<int>& b) {
std::vector<int> c;
int i = 0;
int j = 0;
while (i < a.size() && j < b.size()) {
if (a[i] <= b[j]) {
c.push_back(a[i]);
i++;
} else {
c.push_back(b[j]);
j++;
}
}
while (i < a.size()) {
c.push_back(a[i]);
i++;
}
while (j < b.size()) {
c.push_back(b[j]);
j++;
}
return c;
}
int main() {
int m, n;
std::cin >> m >> n;
std::vector<int> a(m);
std::vector<int> b(n);
for (int i = 0; i < m; i++) {
std::cin >> a[i];
}
for (int i = 0; i < n; i++) {
std::cin >> b[i];
}
std::vector<int> c = mergeArrays(a, b);
std::cout << "Dãy c sau khi sắp xếp không giảm là:" << std::endl;
for (int i = 0; i < c.size(); i++) {
std::cout << c[i] << " ";
}
std::cout << std::endl;
return 0;
}
Câu 3: Cho dãy số gồm có N phần tử. Hãy đổi vị trí của phần tử lớn nhất và nhỏ nhất cho nhau. Nếu có nhiều phần tử lớn nhất và nhỏ nhất thì đổi chỗ phần tử lớn nhất có vị trí lớn nhất cho phần tử nhỏ nhất có vị trí nhỏ nhất cho nhau.
#include <iostream>
#include <vector>
#include <algorithm>
void swapMinMax(std::vector<int>& arr) {
int minIndex = std::min_element(arr.begin(), arr.end()) - arr.begin();
int maxIndex = std::max_element(arr.begin(), arr.end()) - arr.begin();
std::swap(arr[minIndex], arr[maxIndex]);
}
int main() {
int N;
std::cin >> N;
std::vector<int> arr(N);
for (int i = 0; i < N; i++) {
std::cin >> arr[i];
}
swapMinMax(arr);
std::cout << "Dãy số sau khi đổi vị trí của phần tử lớn nhất và nhỏ nhất cho nhau là:" << std::endl;
for (int i = 0; i < N; i++) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}