Viết chương trình Pascal phân tích một số ra thừa số nguyên tố
2 câu trả lời
Phân tích 12=2*2*3. Ý tưởng: Thuật toán phân tích một số ra thừa số nguyên tố tương tự như thuật toán kiểm tra số nguyên tố. Điểm khác ở đây là khi kiểm tra số nguyên tố ta phải lần lượt kiểm tra các số nhỏ hơn sqrt(n) (căn bậc hai của n) có phải là ước của n hay không, còn khi phân tích ta chỉ việc chia n cho các số nguyên bắt đầu từ số nguyên tố nhỏ nhất là 2. Khi không chia được nữa thì ta tăng số chia lên 1 đơn vị, quá trình phân tích kết thúc khi n bằng 1.
VAR i,n :INTEGER;
BEGIN
Write ('Nhap n:');
Readln(n);
Write (n,'=');
i:=2;
REPEAT
WHILE n MOD i <> 0 DO
i:=i+1;
Write(i);
n:=n DIV i;
IF n > 1 THEN
write ('*');
UNTIL n = 1;
readln;
END.
program bai_giai;
uses crt;
var n,i:longint;
begin
clrscr;
write('nhap n:');readln(n);
i:=2;
while n<>1 do
begin
if(n mod i=0)then n:=n div i else inc(i);
write(i);
if(n<>1)then write('*');
end;
readln;
end.
mk ko bieeys làm kiểu này có đúng ko nhũng text nhập số 2 thì ra 2 nhập số 4 thì ra 2*2;