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

Giải bài có thưởng!

Viết thuật toán giải bằng Free Pascal nhập vào nhiều số N ạ. Bài có file

Viết thuật toán giải bằng Free Pascal nhập vào nhiều số N ạ. Bài có file.
bạn nào giải xog trước 9h30 em tặng 3 coin ạ
0 Xem trả lời
Hỏi chi tiết
31
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Dưới đây là một ví dụ về thuật toán giải bài toán nhập vào nhiều số nguyên N bằng ngôn ngữ lập trình Free Pascal. Chương trình sẽ nhập một danh sách các số nguyên cho đến khi người dùng không muốn nhập nữa và sau đó in ra danh sách các số đó.

```pascal
program NhapNhieuSo;

{$APPTYPE CONSOLE}

uses
SysUtils;

var
arr: array of Integer; // Mảng động để lưu số nhập vào
n, i: Integer;
input: String;
continueInput: Boolean;

begin
SetLength(arr, 0); // Khởi tạo mảng rỗng
continueInput := True;

while continueInput do
begin
Write('Nhập vào một số nguyên (hoặc gõ "exit" để dừng): ');
ReadLn(input);

if LowerCase(input) = 'exit' then
continueInput := False
else
begin
try
// Chuyển đổi chuỗi thành số nguyên
n := StrToInt(input);
// Tăng kích thước mảng và thêm số vào
SetLength(arr, Length(arr) + 1);
arr[High(arr)] := n;
except
on E: EConvertError do
Writeln('Giá trị nhập vào không phải là số nguyên. Vui lòng thử lại.');
end;
end;
end;

// In ra các số đã nhập
Writeln('Các số bạn đã nhập là:');
for i := 0 to High(arr) do
Write(arr[i], ' ');

Writeln; // Xuống dòng
end.
```

### Giải thích chương trình:
1. **Khai báo biến**: Chương trình sử dụng một mảng động `arr` để lưu trữ các số nguyên mà người dùng nhập vào.
2. **Vòng lặp nhập liệu**: Sử dụng vòng lặp `while` để liên tục yêu cầu người dùng nhập số cho đến khi gõ 'exit'.
3. **Xử lý nhập liệu**: Nếu người dùng nhập một số, chương trình sẽ chuyển đổi giá trị đó thành số nguyên và lưu vào mảng. Nếu nhập không hợp lệ, nó sẽ thông báo lỗi.
4. **In kết quả**: Sau khi kết thúc nhập liệu, chương trình in ra danh sách các số mà người dùng đã nhập.

Bạn có thể chạy chương trình trên máy tính của mình có cài đặt Free Pascal để kiểm tra. Hy vọng bài viết này giúp ích cho bạn!

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
×