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.
Theo em khi thực hiện chương trình này không ra kết quả như mong muốn vì khi khởi tạo giá trị ban đầu cho biến S là 0 trong điều kiện lặp khiến cho giá trị của S trở lại thành 0 sau mỗi lần lặp. Điều này dẫn đến kết quả sai.
- Học sinh tự thực hiện tạo chương trình như sau và tiến hành kiểm thử.
- Gỡ lỗi: Chuyển lệnh gán giá trị ban đầu S = 0 ra khỏi điều kiện lặp.
Caua1:
program caumot;
begin
writeln('lop 8A chao ban!');
end.
Câu 2:
program cauhai;
int a,b,c :real;
begin
write('a='); readln(a);
write('b='); readln(b);
c= a+b;
write('Tong hai so a b la:',c);
end.
- Học sinh tự tạo chương trình theo Hình 2.
- Chương trình đưa ra kết quả sai khi giá trị a, b bằng nhau.
- Gỡ lỗi: Thay đổi đoạn chương trình so sánh hai số a, b với 3 trường hợp như sau
a) HS tự tạo chương trình như hình 1.
b) Chương trình tính tiền vé xem phim trong thời gian khuyến mãi ở Bảng 1
c) Chương trình tính tiền vé xem phim theo Bảng 4
Tham khảo!
a) Lỗi được phát hiện khi thực hiện chương trình với bộ dữ liệu Hình 6b: a = 0, b = 2 và Hình 6c: a = 0, b = 0.
b) Câu lệnh trực tiếp tạo ra lỗi là:
Câu lệnh liên quan đến lỗi là:
c) Nguyên nhân gây ra lỗi này là: lỗi logic vì phép chia cho 0 là không xác định.
uses crt;
var a,b:real;
begin
clrscr;
readln(a,b);
writeln(a+b:4:1);
readln;
end.
program b1;
uses crt;
var a,b,s:real;
begin
clrscr;
writeln('Nhap hai so a va b: ');
readln(a,b);
s:=a+b;
write('Tong cua hai so a va b la: ',s:1:1);
readln;
end.
P/S: phần lưu lẫn đặt tên người dùng nào cũng đều làm được.
+ Chọn Save as ở phần File phía góc trái trên cùng rồi đặt tên.
Chương trình 1 có lỗi cú pháp, câu lệnh 2, 3 không khớp nối với câu lệnh 1, 4.
Chương trình 2 có lỗi logic, a = b thuộc trường hợp a > b sai nên chương trình đưa ra thông báo sai khi nhập hai số a, b bằng nhau.