Bài tập  /  Bài đang cần trả lời

Viết code bằng Pascal cho bài sau

giúp em vs aa
giải = pascal. ghi đầy đủ code. xog trong tối em guiqr 2  coin làm quà c,on
1 Xem trả lời
Hỏi chi tiết
124
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Dưới đây là code Pascal giải bài toán chọn vị kem theo yêu cầu của bạn. Chương trình xác định số cách chọn hai hương vị khác nhau sao cho không có hương vị nào trùng nhau.

```pascal
program Cream;

var
n, m, i, j, count: Integer;
flavors: array[1..2000] of Integer;

begin
// Đọc vào số lượng hương vị và số cặp
ReadLn(n, m);

// Đọc m hương vị
for i := 1 to m do
Read(flavors[i]);

count := 0;

// Duyệt tất cả các cặp hương vị
for i := 1 to m - 1 do
for j := i + 1 to m do
if flavors[i] <> flavors[j] then
Inc(count);

// Xuất kết quả
WriteLn(count);
end.
```

### Giải thích code:

1. **Khai báo biến**:
- `n`: Số hương vị (không sử dụng trực tiếp trong thuật toán).
- `m`: Số lượng kem.
- `flavors`: Mảng lưu trữ các hương vị.
- `count`: Số cách chọn cặp hương vị.

2. **Nhập dữ liệu**:
- Đọc số lượng hương vị và số kem từ bàn phím.
- Lưu hương vị vào mảng `flavors`.

3. **Tính số cặp khác nhau**:
- Sử dụng hai vòng lặp lồng nhau để duyệt qua tất cả các cặp hương vị và đếm số cặp khác nhau.

4. **Xuất kết quả**:
- In ra số lượng cách chọn hương vị.

Bạn có thể sao chép đoạn code này vào môi trường phát triển Pascal và chạy thử. Chúc bạn thành công!
1
0
qcuongg
13/08 20:59:13
+5đ tặng
program IceCream;

const
  MAXN = 2000;
  MAXM = 100000;

var
  n, m, i, j, k, result: Integer;
  bad: array[1..MAXN, 1..MAXN] of Boolean;
  a, b: array[1..MAXM] of Integer;

begin
  // Đọc dữ liệu đầu vào
  ReadLn(n, m);

  // Khởi tạo ma trận kề với giá trị False
  FillChar(bad, SizeOf(bad), False);

  // Đọc các cặp hương vị xấu
  for i := 1 to m do
  begin
    ReadLn(a[i], b[i]);
    bad[a[i], b[i]] := True;
    bad[b[i], a[i]] := True;
  end;

  result := 0;

  // Duyệt tất cả các tổ hợp ba hương vị
  for i := 1 to n - 2 do
    for j := i + 1 to n - 1 do
      for k := j + 1 to n do
        if not (bad[i, j] or bad[j, k] or bad[i, k]) then
          Inc(result);

  // Xuất kết quả
  WriteLn(result);
end.
 

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×