Hãy xây dựng các bộ dữ liệu kiểm thử đề tìm lỗi cho chương trình tính n! với n là một số nguyên dương nhập từ bàn phím.
n=int(input(“nhập số n:”))
if n>0:
giaithua=1
for i in range(1,n+1):
giaithua = giaithua*i
print(n,”giai thừa bằng:”,giaithua)
Hãy xây dựng các bộ dữ liệu kiểm thử đề tìm lỗi cho chương trình tính n! với n là một số nguyên dương nhập từ bàn phím.
n=int(input(“nhập số n:”))
if n>0:
giaithua=1
for i in range(1,n+1):
giaithua = giaithua*i
print(n,”giai thừa bằng:”,giaithua)
Dưới đây là một số bộ dữ liệu kiểm thử đề tìm lỗi cho chương trình tính n!:
Số nguyên dương: n = 5 Kết quả mong đợi: 5! = 120
Số nguyên âm: n = -3 Kết quả mong đợi: Lỗi - Số nguyên dương được yêu cầu
Số 0: n = 0 Kết quả mong đợi: Lỗi - Số nguyên dương được yêu cầu
Số nguyên lớn: n = 10 Kết quả mong đợi: 10! = 3628800
Số chẵn: n = 6 Kết quả mong đợi: 6! = 720
Số lẻ: n = 7 Kết quả mong đợi: 7! = 5040
Số nguyên tối đa: n = 12 Kết quả mong đợi: 12! = 479001600
Số nguyên tối thiểu: n = 1 Kết quả mong đợi: 1! = 1
Số nguyên dương lớn nhất: n = 999 Kết quả mong đợi: Kết quả chưa đúng do số quá lớn vượt quá giới hạn của kiểu dữ liệu int
Số nhập không phải số nguyên: n = "abc" Kết quả mong đợi: Lỗi - Số nguyên dương được yêu cầu
Những bộ dữ liệu này giúp kiểm thử chương trình với các trường hợp đặc biệt và tiềm ẩn lỗi, như số âm, số 0, số nguyên tối đa, số nhập không phải số nguyên, giúp đảm bảo tính đúng đắn và hoạt động ổn định của chương trình tính n!.
tham khảo!
Cho đoạn chương trình sau:
N:=0;
While N>0 do
Begin
N:=N+1;
Writeln('Xin chao');
End
Khi thực hiện chương trình,câu "Xin chao" được viết ra màn hình mấy lần?
A.10 B.9
C.0 D.Vòng lặp vô tận
C vì N=0 mà đk N>0 nên CT ko thực hiện câu lệnh đó
Câu Xin chao không được viết ra màn hình
Sửa lỗi cú pháp cho chương trình sau (nếu có)?
a=int(input('Nhập a=')
if (a % 3 ==0) và (a%5 ==0):
print(a, 'Chia hết cho 3 và 5)
else
print a, 'Không chia hết cho 3 và 5')
Sửa lỗi cú pháp cho chương trình sau (nếu có)?
a=int(input('Nhập a=') if (a % 3 ==0) và (a%5 ==0):
print(a, 'Chia hết cho 3 và 5)
else
print a, 'Không chia hết cho 3 và 5')
Giúp em với mn ơi, mai em thi rồi ạ hic
a=int(input('Nhập a='))
if (a%3 ==0) and (a%5 ==0):
print(a, 'Chia hết cho 3 và 5')
else
print(a, 'Không chia hết cho 3 và 5')
Khi thực hiện đoạn chương trình sau:
n:=1; T:=50; while n<10 do Begin n:=n+2;T:=T-n
end;
hãy cho biết máy tính sẽ thực hiện bao nhiều vòng lặp và giá trị của T và n là bao nhiêu? help mk với ạ
Xác định độ phức tạp thời gian tính toán cho chương trình sau:
n = 1000
sum = 0
i = 1while i <n;
i = i*2
sum = sum + 1
print (sum)
Chương trình trên tính số lần lặp cần thiết để i lớn hơn n bằng cách nhân i với 2 trong mỗi lần lặp, sau đó tăng biến sum lên 1. Để xác định độ phức tạp thời gian của chương trình này, ta cần xem xét số lần lặp của vòng while và các phép toán trong vòng lặp.
Vòng while: Vòng lặp này chạy cho đến khi i >= n, và giá trị ban đầu của i là 1. Trong mỗi lần lặp, i được nhân với 2, vậy số lần lặp là log2(n) (vì sau mỗi lần nhân i với 2, giá trị của i sẽ gấp đôi). Ví dụ, nếu n = 1000 thì số lần lặp là log2(1000) ≈ 10.
Các phép toán trong vòng lặp:
Phép gán i = i * 2: Đây là phép nhân, có độ phức tạp là O(1).
Phép gán sum = sum + 1: Đây là phép gán giá trị vào biến sum, có độ phức tạp là O(1).
Vậy tổng độ phức tạp thời gian của chương trình là O(log n), hay O(log2(1000)) ≈ O(10)
Xác định độ phức tạp thời gian cho chương trình sau:
n = 1000
s = 0
for i in range (n);
s = s + i*(i+1)
print (s)
THAM KHẢO!
Chương trình trên tính tổng các giá trị i*(i+1) trong khoảng từ 0 đến n-1 và lưu kết quả vào biến s. Để xác định độ phức tạp thời gian của chương trình này, ta cần xem xét số lần lặp của vòng for và các phép toán trong vòng lặp.
Vòng for: Vòng lặp này chạy từ 0 đến n-1, với n là 1.000. Vậy số lần lặp là n, hay 1.000 lần.
Các phép toán trong vòng lặp:
Phép gán s = s + i*(i+1): Đây là phép gán giá trị vào biến s, có độ phức tạp là O(1).
Phép toán i*(i+1): Đây là phép nhân và cộng, có độ phức tạp là O(1).
Vậy tổng độ phức tạp thời gian của chương trình là O(n), hay O(1.000)
Nhập vào một list các phân số tùy ý và tìm phân số lớn nhất và nhỏ nhất trong dãy.
(Ngôn ngữ mình học là Python ạ)
n = int(input("Nhap so phan so ma ban muon tinh"))
ds = []
for i in range(n):
print('Nhap phan so thu', i + 1)
ps = [int(input('Nhap tu ')), int(input('Nhap mau '))]
ds.append(ps)
print(ds)
Phần nhập phân số thì mình làm được tới như này ạ :( mọi người giúp mình phần min max với ạ, mình cảm ơn
Để nhập giá trị số nguyên cho biến a ta dùng lệnh?
A. a= float(input("Nhap so nguyen: "))
B. input("Nhap so nguyen: ",a)
C. a=int(input("Nhap so nguyen: "))
d. a= input(float("Nhap so nguyen: "))
Nhập chương trình nhập vào số phút p. In ra màn hình số giờ, số phút
Input: Gồm 1 dòng chứa số nguyên p .
Output: In ra theo định dạng: <số giờ>:<số phút>.
SAMPLE INPUT 121
SAMPLE OUTPUT 2:1
chương trình C++
#include <bits/stdc++.h>
using namespace std;
int p;
int main()
{
cin>>p;
cout<<p/60<<":"<<p%60;
}