var s: string; i, d: byte; Begin d:=0; Write(‘nhap xau: ‘); readln(s); For i:=1 to length(s) do If s[i]=’ ‘ then d:=d+1

var s: string;
i, d: byte;
Begin
d:=0;
Write(‘nhap xau: ‘); readln(s);
For i:=1 to length(s) do
If s[i]=’ ‘ then d:=d+1;
Write(‘co ‘, d, ‘ khoang trang’);
Readln
End.
ai giải thích hộ mình hiểu rõ bản chất của bài này để mình giải thích ạ

0 bình luận về “var s: string; i, d: byte; Begin d:=0; Write(‘nhap xau: ‘); readln(s); For i:=1 to length(s) do If s[i]=’ ‘ then d:=d+1”

  1. Code này mik chạy thì nó bị lỗi nhưng vẫn hiểu code

    Đoạn code này bảo nhập 1 xâu kí tự và kiểm tra xem có bao nhiêu khoảng trắng(dấu cách) và hiện ra màn hình.

    Chúc bạn học tốt ^^

    Bình luận
  2. var s:string;  {khai báo s có kiểu là xâu string}

         i,d:byte;   {khai báo i và d có kiểu số nguyen byte}

    begin   {bắt đầu}

        d:=0;   {gán d=0}

        write(‘Nhap xau: ‘);  readln(s);  {hiển thị ra màn hình ‘Nhap xau: ‘ và chờ bạn nhâp một xâu s}

        for i:=1 to length(s) do  {Cho biến i chạy từ 1 đến cuối xâu s}

             if s[i]=’ ‘ then d:=d+1;  {Nếu kí tự i của xâu S là khoảng trắng thì tăng d lên 1 đơn vị}

        write(‘co ‘,d,’ khoang trang’); {in ra màn hình ‘co ‘, sau đó in ra giá trị của d và in ‘ khoang trang}

        readln  {Chờ nhấn enter}

    end.  {Kết thúc}

    Tác dụng của bài này là đếm khoảng trắng, quét hết từ đều đến cuối xâu, nếu là kí tự trắng thì cộng dồn cho biến d

    VD: khi chạy chương trình và nhập s=’ Toi la hoc sinh’

    Nhap xau: Toi la hoc sinh

    co 3 khoang trang

    Giải thích: Vì khi thực hiện xong vòng for, biến đếm nhận giá trị 3 vì có 3 khoảng trắng.

    Bình luận

Viết một bình luận