• Khung trình chiếu

Bài tập: Đếm số lượng từ và tìm từ dài nhất trong xâu

Các mã nguồn được viết bằng ngôn ngữ Pascal
Gửi hồi đáp
Ảnh đại diện người dùng
huynhbuutam
Nhà sáng lập
Nhà sáng lập
Các bài viết: 114
Đã gia nhập lúc: T3 31 Th8, 2021 22:04
Địa điểm: Trường THCS Châu Lăng
Tên thật: Huỳnh Bửu Tâm

Bài tập: Đếm số lượng từ và tìm từ dài nhất trong xâu

Bài viết bởi huynhbuutam »

Mỗi từ cách nhau bởi ít nhất một kí tự trống, ví dụ xâu "Xin chao cac ban nhe!" có 5 từ, trong đó, từ dài nhất là "chao" hoặc "nhe!" với độ dài là 4
Mã nguồn (Đếm số từ):

Mã: Chọn tất cả

Program DemTu;
Uses Crt;

Procedure Trim(Var St: AnsiString);
Begin
	While (Length(St) > 0) And (St[1] = ' ') Do Delete(St, 1, 1);
	While (Length(St) > 0) And (St[Length(St)] = ' ') Do Delete(St, Length(St), 1);
	While (Length(St) > 0) And (Pos('  ', St) > 0) Do Delete(St, Pos('  ', St), 1);
End;

Var St : AnsiString;
	Dem : Integer;
Begin
	ClrScr;
	Write('Nhap xau: ');
	ReadLn(St);
	Trim(St);
	Dem := 0;
	If Length(St) > 0 Then Begin
		St := St + ' ';
		While (Length(St) > 0) And (Pos(' ', St) > 0) Do Begin
			Inc(Dem);
			Delete(St, 1, Pos(' ', St));
		End;
	End;	
	Write('Ket qua: ', Dem);	
	ReadLn;
End.
Mã nguồn (Từ dài nhất):

Mã: Chọn tất cả

Program TuDaiNhat;
Uses Crt;

Procedure Trim(Var St: AnsiString);
Begin
	While (Length(St) > 0) And (St[1] = ' ') Do Delete(St, 1, 1);
	While (Length(St) > 0) And (St[Length(St)] = ' ') Do Delete(St, Length(St), 1);
	While (Length(St) > 0) And (Pos('  ', St) > 0) Do Delete(St, Pos('  ', St), 1);
End;

Var St : AnsiString;
	KQ : String;
Begin
	ClrScr;
	Write('Nhap xau: ');
	ReadLn(St);
	Trim(St);
	KQ := '';
	If Length(St) > 0 Then Begin
		St := St + ' ';
		While (Length(St) > 0) And (Pos(' ', St) > 0) Do Begin
			If Pos(' ', St) - 1 > Length(KQ)
			Then KQ := Copy(St, 1, Pos(' ', St) - 1);
			Delete(St, 1, Pos(' ', St));
		End;
	End;	
	Write('Ket qua: ', KQ);	
	ReadLn;
End.
Gửi hồi đáp
  • Similar Topics
    Các hồi đáp
    Lượt xem
    Bài viết cuối