📌"NHẬP VÀO BA GIÁ TRỊ SỐ ÉP BUỘC KIỂU NGUYÊN VÀ HIỂN THỊ RA KẾT QUẢ TÍNH TỔNG 3 SỐ ĐÓ"❓
ONLINE
🚀PASCAL (Delphi)
program TinhTongBaSoNguyen;
// Khai báo các biến phải là kiểu số nguyên (integer).
var
soA, soB, soC, Tong: integer;
begin
// 1. INPUT: Nhập liệu
// Pascal sẽ báo lỗi (hoặc hành xử không mong muốn) nếu người dùng nhập số thực
// vì biến được khai báo là integer. Đây là cách ép buộc kiểu dữ liệu cơ bản nhất.
write('Nhap so nguyen thu nhat (A): ');
readln(soA);
write('Nhap so nguyen thu hai (B): ');
readln(soB);
write('Nhap so nguyen thu ba (C): ');
readln(soC);
// 2. PROCESS: Tính toán
Tong := soA + soB + soC; // Phép tính giữa các số nguyên
// 3. OUTPUT: Hiển thị kết quả
writeln('Tong cua ba so nguyen la: ', Tong);
end.
🚀C++
#include
/* Chương trình C++ nhận 3 số nguyên từ người dùng và tính tổng */
int main() {
// Khai báo các biến phải là kiểu số nguyên (int).
int soA, soB, soC, Tong;
// 1. INPUT: Nhập liệu
std::cout << "Nhap so nguyen thu nhat (A): ";
// Nếu người dùng nhập 5.9, cin sẽ chỉ đọc số 5 và bỏ qua .9,
// do biến soA được khai báo là kiểu int. Đây là cách ép buộc kiểu.
std::cin >> soA;
std::cout << "Nhap so nguyen thu hai (B): ";
std::cin >> soB;
std::cout << "Nhap so nguyen thu ba (C): ";
std::cin >> soC;
// 2. PROCESS: Tính toán
Tong = soA + soB + soC;
// 3. OUTPUT: Hiển thị kết quả
std::cout << "Tong cua ba so nguyen la: " << Tong << std::endl;
return 0;
}
🚀PYTHON
# Chương trình Python nhận 3 số và ép buộc chúng thành số nguyên (integer)
# 1. INPUT: Nhập liệu
# Hàm input() trả về chuỗi.
# Hàm int() sẽ cố gắng chuyển chuỗi đó thành số nguyên.
# Nếu chuỗi là số thực (ví dụ: "5.5"), int() sẽ gây ra lỗi (ValueError).
soA = int(input("Nhap so nguyen thu nhat (A): "))
soB = int(input("Nhap so nguyen thu hai (B): "))
soC = int(input("Nhap so nguyen thu ba (C): "))
# 2. PROCESS: Tính toán
Tong = soA + soB + soC
# 3. OUTPUT: Hiển thị kết quả
print(f"Tong cua ba so nguyen la: {Tong}")
×
HỎI THÀY
VUI LÒNG MỞ CỔNG GẶP THÀY NHÉ!
Bạn cần nhập mã xác thực từ hệ thống để xem tiếp phần hướng dẫn chi tiết bên dưới.
✅ Xác thực thành công!
HƯỚNG DẪN
HỎI THUẬT TOÁN❓
🚀 Tổng quan về Giải pháp (Thuật toán)
1. INPUT (Đầu vào): Yêu cầu người dùng nhập ba số.
2. TYPE ENFORCEMENT (Ép buộc kiểu): Trong quá trình nhận hoặc gán, đảm bảo các biến chỉ giữ giá trị số nguyên.
(Ví dụ: nếu người dùng nhập 5.9, chương trình có thể chuyển thành 5 hoặc báo lỗi, tùy thuộc vào ngôn ngữ).
3. PROCESS (Xử lý): Tính tổng ba biến số nguyên: Tong = soA + soB + soC.
4. OUTPUT (Đầu ra): Hiển thị kết quả.
1. Pascal
Trong Pascal, bằng cách khai báo biến là kiểu integer, trình biên dịch sẽ tự động đảm bảo dữ liệu đầu vào phù hợp.
Khái niệm Giải thích
Kiểu dữ liệu integer (Số nguyên)
Ép buộc kiểu Pascal tự động ép buộc do khai báo var : integer.
Lệnh Nhập readln
Thuật toán Khai báo biến integer $\rightarrow$ Dùng readln $\rightarrow$ Tính tổng $\rightarrow$ Hiển thị kết quả.
Delphi
program TinhTongBaSoNguyen;
// Khai báo các biến phải là kiểu số nguyên (integer).
var
soA, soB, soC, Tong: integer;
begin
// 1. INPUT: Nhập liệu
// Pascal sẽ báo lỗi (hoặc hành xử không mong muốn) nếu người dùng nhập số thực
// vì biến được khai báo là integer. Đây là cách ép buộc kiểu dữ liệu cơ bản nhất.
write('Nhap so nguyen thu nhat (A): ');
readln(soA);
write('Nhap so nguyen thu hai (B): ');
readln(soB);
write('Nhap so nguyen thu ba (C): ');
readln(soC);
// 2. PROCESS: Tính toán
Tong := soA + soB + soC; // Phép tính giữa các số nguyên
// 3. OUTPUT: Hiển thị kết quả
writeln('Tong cua ba so nguyen la: ', Tong);
end.
Giải thích:
• var soA, soB, soC, Tong: integer;: Đây là sự ép buộc kiểu dữ liệu ngay từ đầu.
Bằng cách định nghĩa kiểu là integer,
bạn chỉ định rõ ràng rằng các biến này chỉ được phép lưu trữ số nguyên.
Nếu người dùng nhập giá trị không phải số nguyên (ví dụ: 5.5) khi sử dụng readln,
chương trình Pascal có thể gặp lỗi khi chạy (Runtime Error) hoặc chỉ đọc phần nguyên (5),
tùy thuộc vào trình biên dịch,
qua đó thực thi việc ép buộc kiểu.
• readln(...): Đọc giá trị và cố gắng lưu vào biến integer.
________________________________________
2. C++
Tương tự như Pascal, việc khai báo biến là int sẽ ép buộc giá trị đầu vào phải là số nguyên.
Khái niệm Giải thích
Kiểu dữ liệu int (Số nguyên)
Ép buộc kiểu Khai báo int. Khi dùng cin, nếu nhập 5.9,
C++ sẽ tự động cắt bỏ (truncate) phần thập phân và chỉ lưu 5.
Lệnh Nhập std::cin
Thuật toán Bao gồm thư viện $\rightarrow$ Khai báo biến int $\rightarrow$
Dùng cin nhập $\rightarrow$ Tính tổng $\rightarrow$ Hiển thị kết quả.
C++
#include
/* Chương trình C++ nhận 3 số nguyên từ người dùng và tính tổng */
int main() {
// Khai báo các biến phải là kiểu số nguyên (int).
int soA, soB, soC, Tong;
// 1. INPUT: Nhập liệu
std::cout << "Nhap so nguyen thu nhat (A): ";
// Nếu người dùng nhập 5.9, cin sẽ chỉ đọc số 5 và bỏ qua .9,
// do biến soA được khai báo là kiểu int. Đây là cách ép buộc kiểu.
std::cin >> soA;
std::cout << "Nhap so nguyen thu hai (B): ";
std::cin >> soB;
std::cout << "Nhap so nguyen thu ba (C): ";
std::cin >> soC;
// 2. PROCESS: Tính toán
Tong = soA + soB + soC;
// 3. OUTPUT: Hiển thị kết quả
std::cout << "Tong cua ba so nguyen la: " << Tong << std::endl;
return 0;
}
Giải thích:
• int soA, soB, soC, Tong;: Khai báo biến kiểu int (integer) để lưu trữ các số nguyên.
• std::cin >> soA;: Khi luồng nhập (cin) cố gắng lưu một giá trị vào một biến int,
nó sẽ tự động bỏ qua phần thập phân nếu người dùng nhập số thực.
Đây là một hình thức ép buộc kiểu tự động trong C++ đối với đầu vào.
________________________________________
3. Python
Trong Python, vì hàm input() luôn trả về chuỗi,
bạn phải sử dụng hàm chuyển đổi kiểu tường minh là int() để ép buộc giá trị thành số nguyên.
Khái niệm Giải thích
Chuyển đổi kiểu int() (Bắt buộc)
Ép buộc kiểu Hàm int() sẽ chuyển đổi chuỗi thành số nguyên. Nếu chuỗi là 5.9, nó sẽ báo lỗi.
Nếu chuỗi là 5, nó sẽ thành số 5.
Lệnh Nhập input()
Thuật toán
Dùng input() nhận chuỗi $\rightarrow$
Dùng int() để chuyển đổi/ép buộc $\rightarrow$
Tính tổng $\rightarrow$ Hiển thị kết quả.
Python
# Chương trình Python nhận 3 số và ép buộc chúng thành số nguyên (integer)
# 1. INPUT: Nhập liệu
# Hàm input() trả về chuỗi.
# Hàm int() sẽ cố gắng chuyển chuỗi đó thành số nguyên.
# Nếu chuỗi là số thực (ví dụ: "5.5"), int() sẽ gây ra lỗi (ValueError).
soA = int(input("Nhap so nguyen thu nhat (A): "))
soB = int(input("Nhap so nguyen thu hai (B): "))
soC = int(input("Nhap so nguyen thu ba (C): "))
# 2. PROCESS: Tính toán
Tong = soA + soB + soC
# 3. OUTPUT: Hiển thị kết quả
print(f"Tong cua ba so nguyen la: {Tong}")
Giải thích:
• input(...): Trả về một chuỗi ký tự (ví dụ: "5").
• int(...):
o Hàm chuyển đổi kiểu (Type Conversion Function): Hàm int() nhận chuỗi đầu vào và chuyển đổi nó thành kiểu số nguyên.
o Ép buộc: Đây là sự ép buộc kiểu tường minh.
Nếu chuỗi là "5", int("5") $\rightarrow$ số nguyên $5$.
Nếu chuỗi là "5.9", int("5.9") $\rightarrow$ Lỗi (ValueError),
vì int() không thể chuyển đổi số thực dưới dạng chuỗi thành số nguyên (trừ khi bạn dùng int(float("5.9"))).
Việc này giúp đảm bảo dữ liệu là nguyên vẹn số nguyên.
Bạn đã thấy sự khác biệt giữa việc để ngôn ngữ tự xử lý kiểu dữ liệu (Pascal/C++ với int)
và việc phải chuyển đổi kiểu dữ liệu một cách rõ ràng (Python với int()).