Bài tập thực hành 6 tin học 8 tập 2

Xem toàn bộ tài liệu Lớp 8: tại đây

Giải Bài Tập Tin Học 8 – Bài thực hành 8: Sử dụng lệnh lặp While…do giúp HS giải bài tập, giúp cho các em hình thành và phát triển năng lực sử dụng công nghệ thông tin và truyền thông:

    • Sách Giáo Khoa Tin Học Lớp 8
    • Sách Giáo Viên Tin Học Lớp 8

    Bài 1 (trang 68 sgk Tin học lớp 8): Viết chương trình sử dụng lệnh lặp while.. do để tính trung bình của n số thực x1, x2…xn. Các số n và x1, x2…xn được nhập từ bàn phím

    a. Mô tả thuật toán

    b. Gõ chương trình và lưu với tên Tinh_TB.pas;

    c. Đọc và tìm ý nghĩ từng lệnh. Dịch sửa lỗi nếu có. Chạy chương trình

    d. Viết lại chương trình bằng lệnh for.. do thay cho while..do

    Trả lời:

    a. Thuật toán:

    – Bước 1: Nhập số n.

    – Bước 2: Khai báo và gán giá trị 2 biến dem, tb=0;

    – Bước 3: Bắt đầu vòng lặp, nếu dem<n thì vòng lặp thực hiện đến bước 4. Nếu không thì đến bước 6.

    – Bước 4: Tăng đếm lên 1, giá trị của biến tb sẽ bằng tb + x.

    – Bước 5: tb sẽ bằng tb/n để tính giá trị tổng trung bình.

    – Bước 6: In ra giá trị tb.

    – Bước 7: Kết thúc thuật toán.

    b. Chương trình và ý nghĩa từng câu lệnh:

    Bài tập thực hành 6 tin học 8 tập 2

    c. Kết quả:

    Bài tập thực hành 6 tin học 8 tập 2

    d. Sửa chương trình:

    Bài tập thực hành 6 tin học 8 tập 2

    Bài 2 (trang 69 sgk Tin học lớp 8): Tìm hiểu chương trình nhận biết một số tự nhiên N được nhập vào từ bàn phím có phải là một số nguyên tố hay không.

    a. Đọc và tìm ý nghĩa từng câu lệnh

    b. Gõ, dịch và chạy thử chương trình

    Trả lời:

    a. Chương trình và ý nghĩa từng câu lệnh

    Bài tập thực hành 6 tin học 8 tập 2

    b. Kết quả:

    Bài tập thực hành 6 tin học 8 tập 2

    Lời giải bài tập Tin học lớp 8 Bài thực hành 6: Sử dụng lệnh lặp While… do chi tiết được biên soạn bám sát nội dung sgk Tin học 8 giúp học sinh dễ dàng xem và so sánh lời giải từ đó biết cách làm bài tập Tin học 8 Bài thực hành 6. Mời các bạn đón xem:

    1.1. Mục đích, yêu cầu

    • Viết chương trình Pascal sử dụng câu lệnh lặp với số lần chưa biết trước.
    • Rèn luyện kĩ năng đọc chương trình, tìm hiểu tác dụng của các câu lệnh.

    1.2. Nội dung

    Câu lệnh lặp với số lần chưa biết trước While…Do:

    Cú pháp: While <điều kiện>Do ;

    Trong đó:

    • Điều kiện: thường là phép so sánh.
    • Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.

    Các bước thực hiện của câu lệnh lặp While…Do:

    • Bước 1: Kiểm tra điều kiện.
    • Bước 2: Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và thực hiện lệnh lặp kết thúc. Nếu điều kiện đúng thực hiện câu lệnh và quay lại bước 1. 

    b. Thực hành

    Bài 1: Viết chương trình sử dụng lệnh lặp While…Do để tính trung bình N số thực X1, X2, X3,…, Xn. Các số N và X1, X2, X3,…, Xn được nhập từ bàn phím.

    Gợi ý làm bài:

    Ý tưởng:

    Ta sử dụng biến Dem và câu lệnh lặp While…Do để nhập và cộng dần các số vào một biến kiểu số thực Tong cho đến khi nhập đủ n số.

    Xác định bài toán:

    • Input: Dãy số thực x1, x2...xn
    • Output: Giá trị trung bình (x1 + x2+..+xn)/n

    Thuật toán:

    • Mô tả thuật toán bằng cách liệt kê:
      • Bước 1. Nhập N là số lượng số thực sẽ được nhập từ bàn phím:
        • Gán biến đếm bằng 0 Dem \(\leftarrow\) 0;
        • Gán tổng Tong \(\leftarrow\) 0.
      • Bước 2. Trong khi Dem < N thì:
        • Nhập giá trị số thực x từ bàn phím;
        • Cộng thêm x vào tổng: Tong\(\leftarrow\)Tong + x;
        • Tăng biến dem thêm 1 đơn vị: Dem\(\leftarrow\)Dem + 1;
      • Bước 3. Tính trung bình dãy số vừa nhập TB \(\leftarrow\) Tong/N.
      • Bước 4. Đưa TB ra màn hình, rồi kết thúc.
    • Mô tả thuật toán bằng sơ đồ khối:

    Bài tập thực hành 6 tin học 8 tập 2

    Hình 1. Sơ đồ khối mô tả thuật toán tính trung bình N số thực

    Chương trình:

    Program tinh_trung_binh;

    Var   N, Dem: integer;

             X, TB: real;

    Begin

          Clrscr;

          Dem:=0;

          TB:=0;

          Writeln(‘Nhap cac so can tinh N =’);

          Readln(N);

          While Dem < N do

             Begin

                Dem:= Dem + 1;

                Writeln(‘Nhap so thu’, Dem,’=’);

                Readln(x);

                Tb:= TB + x;

             End;

          TB:=TB/n;

          Witeln(‘Trung binh của’,N,’so là =’, TB:10:3);

          Readln;

    End.

    Bài 2: Tìm hiểu chương trình nhận biết một số tự nhiên N được nhập vào từ bàn phím có phải là số nguyên tố hay không.

    Gợi ý làm bài:

    Ý tưởng: Kiểm tra lần lượt N có chia hết cho các số tự nhiên \(2 \leq i \leq N-1\) hay không. Kiểm tra tính chia hết bằng phép chia lấy phần dư (mod).

    Xác định bài toán:

    • Input: Số tự nhiên N.
    • Output: Trả lời N là số nguyên tố hoặc N không là số nguyên tố.

    Xây dựng thuật toán:

    • Bước 1: Nhập số tự nhiên N từ bàn phím;
    • Bước 2: Nếu N \(\leq\) 0 thông báo N không phải là số tự nhiên, rồi chuyển đến Bước 4;
    • Bước 3: Nếu N > 0:
      • 3.1. i\(\leftarrow\)2;
      • 3.2. Trong khi N mod i <> 0, i\(\leftarrow\)i+1;
      • 3.3. Nếu i = N thì thông báo N là số nguyên tố, rồi chuyển đến Bước 4, không thì thông báo N không phải là số nguyên tố;
    •    Bước 4: Kết thúc.

    Chương trình:

    Uses Crt;

    Var N, i:integer;

    Begin

         clrscr;

         write('Nhap vao mot so nguyen: ');

         readln(N);

         If N<=1 then

            writeln('N khong la so nguyen to')

       else

            begin

                 i:=2;

                while (N mod i<>0) do

                    i:=i+1;

                if i=N then

                    writeln(N,' la so nguyen to!')

                else

                    writeln(N,' khong phai la so nguyen to!');

            end;

         readln;

    end.