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.

18 tháng 7 2023

THAM KHẢO!

1.Thuật toán sắp xếp chèn (Insertion Sort):

def insertion_sort(arr):

  for i in range(1, len(arr)):

   key = arr[i]

   j = i - 1

   while j >= 0 and arr[j] > key:

    arr[j + 1] = arr[j]

    j -= 1

   arr[j + 1] = key

  return arr

A = [5, 8, 1, 0, 10, 4, 3]

sorted_A = insertion_sort(A)

print("Dãy A sau khi sắp xếp chèn:", sorted_A)

2. Thuật toán sắp xếp chọn (Selection Sort):

def selection_sort(arr):

  for i in range(len(arr)):

   min_idx = i

   for j in range(i + 1, len(arr)):

    if arr[j] < arr[min_idx]:

     min_idx = j

   arr[i], arr[min_idx] = arr[min_idx], arr[i]

  return arr

A = [5, 8, 1, 0, 10, 4, 3]

sorted_A = selection_sort(A)

print("Dãy A sau khi sắp xếp chọn:", sorted_A)

3.Thuật toán sắp xếp nổi bọt (Bubble Sort):

def bubble_sort(arr):

  n = len(arr)

  for i in range(n - 1):

   for j in range(n - 1 - i):

    if arr[j] > arr[j + 1]:

     arr[j], arr[j + 1] = arr[j + 1], arr[j]

  return arr

A = [5, 8, 1, 0, 10, 4, 3]

sorted_A = bubble_sort(A)

print("Dãy A sau khi sắp xếp nổi bọt:", sorted_A)

uses crt;

var a:array[1..100]of integer;

i,n,t,j,tam:integer;

begin

clrscr;

readln(n);

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

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

writeln;

writeln('Cac so duong la: ');

for i:=1 to n do if (a[i]>0) then write(a[i]:4);

writeln;

t:=0;

for i:=1 to n do 

  if a[i] mod 3=0 then t:=t+a[i];

writeln(t);

for i:=1 to n-1 do 

  for j:=i+1 to n do

if a[i]<a[j] then

begin

tam:=a[i];

a[i]:=a[j];

a[j]:=tam;

end;

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

readln;

end.

23 tháng 8 2023

m = int(input("Nhập số hàng của ma trận: "))

n = int(input("Nhập số cột của ma trận: "))

A = []

for i in range(m):

  # Nhập một dòng gồm n số nguyên cách nhau bởi dấu cách

  row = list(map(int, input(f"Nhập dòng {i+1}: ").split()))

  A.append(row)

# In ma trận A ra màn hình

for i in range(m):

  for j in range(n):

   print(A[i][j], end=" ")

  print()

#include <bits/stdc++.h>

using namespace std;

long long a[10000],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;

t=0;

for (i=1; i<=n; i++) if (a[i]%2==0) t+=a[i];

cout<<"Tong cac so chan la: "<<t<<endl;

sort(a+1,a+n+1);

cout<<"Day so giam dan la: ";

for (i=n; i>=1; i--) cout<<a[i]<<" ";

return 0;

}

25 tháng 2 2022

Nhưng mà cái này dùng theo pascal và theo kiểu mảng ạ

23 tháng 8 2023

a)

m = int(input("Nhập số dòng của ma trận: "))

n = int(input("Nhập số cột của ma trận: "))

# Khởi tạo ma trận A với kích thước m x n

A = []

for i in range(m):

  row = list(map(int, input(f"Nhập dòng thứ {i+1} (gồm {n} số cách nhau bởi dấu cách): ").split()))

  A.append(row)

# In ma trận A ra màn hình

print("Ma trận A:")

for row in A:

  print(*row)

# Tính tổng các phần tử trong ma trận A

total = 0

for row in A:

  total += sum(row)

print("Tổng các phần tử trong ma trận A là:", total)

b)

# Tìm dòng có tổng các phần tử lớn nhất

max_sum = max(sum(row) for row in A)

print("Dòng có tổng các phần tử lớn nhất là:")

for i, row in enumerate(A):

  if sum(row) == max_sum:

  print(f"Dòng thứ {i+1}: {row}")

c)

Tìm các giá trị phân biệt trong ma trận A

  distinct_values = set()

for row in A:

distinct_values.update(set(row))

# In các giá trị phân biệt ra màn hình

print("Các giá trị phân biệt trong ma trận:")

print(*distinct_values)

d)

k=int(input("nhập số cần tìm"))

l=0

for i in range(m):

  for j in range(n):

   if k==a[i][j]:

    l=l+1

    print('xuất hiện ở các vị trí',i,j)

print('số',k,' xuất hiện',l,' lần')

Bạn ơi, xuất ra theo hàng ngang chứ không phải hàng dọc nhé

Bài 3: Đỉnh đồi – TOP.* (7 điểm) Đồn điền trà của gia đình Tý nằm trên địa hình có nhiều ngọn đồi, để bảo vệ đồn điền gia đình giao cho Tý tính toán số người cần thiết để canh gác trên các ngọn đồi này. Vấn đề là sẽ cần bao nhiêu người canh gác nếu như anh ta muốn đặt 1 người canh gác trên đỉnh của mỗi đồi. Tý có bản đồ của đồn điền là một ma trận gồm N hàng và M cột. Mỗi...
Đọc tiếp

Bài 3: Đỉnh đồi – TOP.* (7 điểm)

Đồn điền trà của gia đình Tý nằm trên địa hình có nhiều ngọn đồi, để bảo vệ đồn điền gia đình giao cho Tý tính toán số người cần thiết để canh gác trên các ngọn đồi này.

Vấn đề là sẽ cần bao nhiêu người canh gác nếu như anh ta muốn đặt 1 người canh gác trên đỉnh của mỗi đồi. Tý có bản đồ của đồn điền là một ma trận gồm N hàng và M cột. Mỗi phần tử của ma trận có độ cao Hij so với mặt nước biển là 0 của ô (i,j). Hãy giúp Tý xác định số lượng đỉnh đồi trên bản đồ.

Đỉnh đồi là 1 hoặc nhiều ô nằm kề nhau của ma trận có cùng độ cao được bao quanh bởi cạnh của bản đồ hoặc bởi các ô có độ cao nhỏ hơn. Hai ô gọi là kề nhau nếu độ chênh lệch giữa tọa độ X không quá 1 và chênh lệch tọa độ Y không quá 1.

Dữ liệu vào: đọc từ tập tin văn bản TOP.INP có cấu trúc:

  • Dòng đầu chứa 2 số nguyên N, M cách nhau ít nhất một khoảng trắng (1 < N ≤ 100), (1 < M ≤ 70);
  • N dòng tiếp theo mỗi dòng là M số nguyên mô tả độ cao Hij theo thứ tự của ma trận (0

≤ Hij ≤ 10000).

Kết quả: Xuất ra tập tin văn bản TOP.OUT một số N duy nhất là số đỉnh đồi tìm được.

Ví dụ:

TOP.INP TOP.OUT
8 7 3
4 3 2 2 1 0 1
3 3 3 2 1 0 1
2 2 2 2 1 0 0
2 1 1 1 1 0 0
1 1 0 0 0 1 0
0 0 0 1 1 1 0
0 1 2 2 1 1 0
0 1 1 1 2 1 0
0