K
Khách

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.

Dưới đây là mã chương trình Pascal để sắp xếp dãy số theo yêu cầu đã cho:

```pascal
program sorting;

const
MAX_N = 1000;

var
N, i, j, temp: integer;
arr: array[1…MAX_N] of integer;
oddArr, evenArr: array[1…MAX_N] of integer;
oddCount, evenCount: integer;
inputFile, outputFile: text;

begin
// Mở file input và đọc dữ liệu
assign(inputFile, 'sorting.inp');
reset(inputFile);
readln(inputFile, N);
for i := 1 to N do
read(inputFile, arr[i]);
close(inputFile);

// Sắp xếp mảng theo yêu cầu
oddCount := 0;
evenCount := 0;
for i := 1 to N do
begin
if arr[i] mod 2 = 1 then
begin
oddCount := oddCount + 1;
oddArr[oddCount] := arr[i];
end
else
begin
evenCount := evenCount + 1;
evenArr[evenCount] := arr[i];
end;
end;

// Sắp xếp mảng số lẻ tăng dần
for i := 1 to oddCount - 1 do
for j := i + 1 to oddCount do
if oddArr[i] > oddArr[j] then
begin
temp := oddArr[i];
oddArr[i] := oddArr[j];
oddArr[j] := temp;
end;

// Sắp xếp mảng số chẵn giảm dần
for i := 1 to evenCount - 1 do
for j := i + 1 to evenCount do
if evenArr[i] < evenArr[j] then
begin
temp := evenArr[i];
evenArr[i] := evenArr[j];
evenArr[j] := temp;
end;

// Mở file output và ghi kết quả
assign(outputFile, 'sorting.out');
rewrite(outputFile);
for i := 1 to oddCount do
write(outputFile, oddArr[i], ' ');
writeln(outputFile);
for i := 1 to evenCount do
write(outputFile, evenArr[i], ' ');
close(outputFile);
end.
```

Bạn có thể sao chép mã chương trình trên vào một tệp tin có tên `sorting.pas`, sau đó tạo một tệp tin `sorting.inp` và nhập dữ liệu theo định dạng đã cho. Chạy chương trình và kết quả sẽ được ghi vào tệp tin `sorting.out`.

var i,n:longint; a:array[1..1000] of longint;

begin

readln(n);

for i:=1 to n do read(a[i]);

for i:=1 to n do

     if a[i] mod 2=0 then 

         begin

              inc(k);

              b[k]:=a[i];

         end

else

begin

inc(t);

c[t]:=a[i];

end;

for i:=1 to k-1 do

for j:=i+1 to k do

if b[i]<b[j] then

begin

d:=b[i];

b[i]:=b[j];

b[j]:=d;

end;

for i:=1 to  t-1 do

for j:=i+1 to t do

if c[i]>c[j] then

begin

d:=c[i];

c[i]:=c[j];

c[j]:=d;

end;

for i:=1 to k do write(b[i],' ');

for i:=1 to t do write(c[i],' ');

end.

5 tháng 9 2023

Chắc chắn rồi, đây là code C++ để đếm ngược từ N về 0:

C++

#include <iostream>

 

int main() {

  int n;

  std::cout << "Nhập số nguyên N: ";

  std::cin >> n;

 

  for (int i = n; i >= 0; i--) {

    std::cout << i << std::endl;

  }

 

  return 0;

}

Input:

Nhập số nguyên N: 5

Output:

5

4

3

2

1

0

Giải thích:

Code sử dụng vòng lặp for để lặp từ n đến 0, với mỗi vòng lặp, in ra giá trị của biến i.

Bạn có thể thay đổi input để kiểm tra xem chương trình có hoạt động chính xác hay không.

 

23 tháng 8 2023

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int n,k;
    cin >> n >> k;
    int a[n];
    for (int i=0;i<n;i++)
        cin >> a[i];
    sort(a,a+n);
    cout << a[k-1];
    return 0;
}

8 tháng 2 2022

t ko bt lm, ms k10

#include <iostream>
#include <vector>

using namespace std;

vector<int> primeFactors(int n) {
    vector<int> factors;
    for (int i = 2; i * i <= n; i++) {
        while (n % i == 0) {
            factors.push_back(i);
            n /= i;
        }
    }
    if (n > 1) factors.push_back(n);
    return factors;
}

int main() {
    int n, k;
    cin >> n >> k;
    vector<int> a(n);
    for (int i = 0; i < n; ++i) {
        cin >> a[i];
    }

    vector<int> factors = primeFactors(k);
    int sum = accumulate(a.begin(), a.end(), 0);
    vector<vector<bool>> dp(n+1, vector<bool>(sum+1, false));
    dp[0][0] = true;

    for (int i = 1; i <= n; ++i) {
        for (int j = 0; j <= sum; ++j) {
            dp[i][j] = dp[i-1][j];
            if (j >= a[i-1]) {
                for (int factor : factors) {
                    if (a[i-1] % factor == 0) {
                        dp[i][j] = dp[i][j] || dp[i-1][j-a[i-1]];
                        break;
                    }
                }
            }
        }
    }

    for (int j = 0; j <= sum; ++j) {
        if (dp[n][j]) {
            cout << j << endl;
            break;
        }
    }

    return 0;
}

Một số nguyên dương S gồm n chữ số (1 ≤ n ≤ 106).Yêu cầu: Hãy liệt kê các chữ số ai (1 ≤ i ≤ n) là số nguyên tố xuất hiện trong S theo thứ tự từ trái sang phải, nếu các chữ số tìm được trùng nhau thì chỉ liệt kê lần xuất hiện đầu tiên.Dữ liệu vào: Nhập từ bàn phím một dòng chứa số nguyên dương S.Dữ liệu ra: Ghi ra một dãy các số ai tìm được thỏa mãn yêu cầu của đề bài. Trường hợp không tìm...
Đọc tiếp

Một số nguyên dương S gồm n chữ số (1 ≤ n ≤ 106).

Yêu cầu: Hãy liệt kê các chữ số ai (1 ≤ i ≤ n) là số nguyên tố xuất hiện trong S theo thứ tự từ trái sang phải, nếu các chữ số tìm được trùng nhau thì chỉ liệt kê lần xuất hiện đầu tiên.

Dữ liệu vào: Nhập từ bàn phím một dòng chứa số nguyên dương S.

Dữ liệu ra: Ghi ra một dãy các số ai tìm được thỏa mãn yêu cầu của đề bài. Trường hợp không tìm được thì ghi ra số 0.

Ví dụ:

Bàn phím

Màn hình

23271

2 3 7

Giải thích: Các chữ số nguyên tố xuất hiện trong S là 2 3 2 7 nhưng vì số 2 xuất hiện hai lần nên chỉ in ra 2 3 7.

Ràng buộc:

Có 60% test tương ứng với 60% số điểm có 0<n≤6.

Có 20% test tương ứng với 20% số điểm có 6<n≤18.

Có 20% test tương ứng với 20% số điểm có 18<n≤106.

1
16 tháng 11 2021

#include <bits/stdc++.h>

using namespace std;

string st;

long long d,i,x;

//chuongtrinhcon

bool ktnt(long long n)

{

for (long long i=2; i<=sqrt(n); i++)

if (n%i==0) return(false);

return(true);

}

//chuongtrinhchinh

int main()

{

cin>>st;

d=st.length();

for (i=0; i<=d-1; i++)

{

x=int(st[i)-48;

if ((x>1) and (ktnt(x)==true))  cout<<x<<" ";

}

return 0;

}