Trang chủ Tin Học Lớp 8 6 câu= 60đ. Lập trìnnh pascal đơn giản, nhớ dùng...

6 câu= 60đ. Lập trìnnh pascal đơn giản, nhớ dùng hàm con và exit();, siêng thì có hay nhất nhá31. Cho số nguyên dương n. Viết chương trình in ra màn hình tất c

Câu hỏi :

6 câu= 60đ. Lập trìnnh pascal đơn giản, nhớ dùng hàm con và exit();, siêng thì có hay nhất nhá

image

Lời giải 1 :

Bài 31:

program bai_giai;
uses crt;
var n,i:longint;
function ktdx(k:longint):boolean;
var k1,k2:longint;
    a:byte;
begin
    k1:=k; k2:=0;
    while k1<>0 do
        begin
            a:=k1 mod 10;
            k2:=k2*10+a;
            k1:=k1 div 10;
        end;
    if k2=k then exit(true) else exit(false);
end;
BEGIN
    clrscr;
    write('Nhap n: ');  readln(n);
    for i:=1 to n do
        if ktdx(i) then writeln(i);
    readln;
END.

Bài 32:

program bai_giai;
uses crt;
var n:longint;
function kttd(k:longint):boolean;
var a,b:byte;
begin
    a:=9;
    while k<>0 do
        begin
            b:=k mod 10;
            if a<b then exit(false);
            a:=b;
            k:=k div 10;
        end;
    exit(true);
end;
BEGIN
    clrscr;
    write('Nhap n: ');  readln(n);
    write(kttd(n));
    readln;
END.

Bài 33:

program bai_giai;
uses crt;
var n,i:longint;
function kttd(k:longint):boolean;
var a,b:byte;
begin
    a:=0;
    while k<>0 do
        begin
            b:=k mod 10;
            if b<a then exit(false);
            a:=b;
            k:=k div 10;
        end;
    exit(true);
end;
BEGIN
    clrscr;
    write('Nhap n: ');  readln(n);
    for i:=1 to n do
        if kttd(i) then writeln(i);
    readln;
END.

Bài 34:

program bai_giai;
uses crt;
var n:longint;
function demuoc(k:longint):longint;
var i,d:longint;
begin
    d:=0;
    for i:=1 to trunc(sqrt(k)) do
        if k mod i=0 then d:=d+2;
    if i=sqrt(k) then d:=d-1;
    exit(d);
end;
BEGIN
    clrscr;
    write('Nhap n: ');  readln(n);
    write(demuoc(n));
    readln;
END.

Bài 35:

program bai_giai;
uses crt;
var n:longint;
function ktnt(k:longint):boolean;
var r:longint;
begin
    if k<2 then exit(false);
    for r:=2 to trunc(sqrt(k)) do
        if k mod r=0 then exit(false);
    exit(true);
end;
BEGIN
    clrscr;
    write('Nhap n: ');  readln(n);
    write(ktnt(n));
    readln;
END.

Bài 36:

program bai_giai;
uses crt;
var n,i:longint;
function ktnt(k:longint):boolean;
var r:longint;
begin
    for r:=2 to trunc(sqrt(k)) do
        if k mod r=0 then exit(false);
    exit(true);
end;
BEGIN
    clrscr;
    write('Nhap n: ');  readln(n);
    for i:=2 to n do
        if ktnt(i) then writeln(i);
    readln;
END.

Thảo luận

-- bài 34 anh vẫn chưa hiểu cách làm
-- e ghi phần giải thik sơ đồ thuật toán nha
-- đợi e tí
-- -Nhận xét: Nếu a là ước dương của n thì luôn tồn tại số nguyên dương b cx là ước dương của n sao cho ãb=n, khi đó b=[n/a] -Giả sử a<=b => a x b=n => a^2 <=n =>1<=a<[Căn n] -Số trg hợp phải xét [Căn N]
-- từ cái nhận xét mình rút ra vòng for, không có a,b chỉ có i xét `sqrt{n}` trường hợp từ 1 đến `sqrt{n}`, nếu n chia hết cho i thì tăng 2 là gồm `i` và `n/i` còn cái if `i=sqrt(k)` là nếu như bằng nhau thì nhân với nhau cũng chỉ là 1 ước nên trừ đi 1
-- mình sửa rồi nha
-- ok thanks a Quân nhìu nha
-- Không có gì

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 8

Lớp 8 - Năm thứ ba ở cấp trung học cơ sở, học tập bắt đầu nặng dần, sang năm lại là năm cuối cấp áp lực lớn dần nhưng các em vẫn phải chú ý sức khỏe nhé!

Nguồn : ADMIN :))

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK