21/04/2023
Đề 1
program Bai1;
uses SysUtils;
var
s1, s2, reverseS1, reverseS2: string;
i: Integer;
outputFile: TextFile;
begin
// Mở tệp để ghi dữ liệu
AssignFile(outputFile, 'D:\Lớp_Tên\De1.txt');
Rewrite(outputFile);
// Nhập vào 2 xâu kí tự
Write('Nhap vao xau thu nhat: ');
ReadLn(s1);
Write('Nhap vao xau thu hai: ');
ReadLn(s2);
// In ra màn hình 2 xâu vừa nhập
WriteLn('Xau thu nhat: ', s1);
WriteLn('Xau thu hai: ', s2);
// Đảo ngược 2 xâu
for i := Length(s1) downto 1 do
begin
reverseS1 := reverseS1 + s1[i];
end;
for i := Length(s2) downto 1 do
begin
reverseS2 := reverseS2 + s2[i];
end;
// In ra màn hình 2 xâu đảo ngược
WriteLn('Xau thu nhat dao nguoc: ', reverseS1);
WriteLn('Xau thu hai dao nguoc: ', reverseS2);
// Ghi vào tệp kết quả
WriteLn(outputFile, s1);
WriteLn(outputFile, s2);
WriteLn(outputFile, 'Xau thu nhat dao nguoc: ', reverseS1);
WriteLn(outputFile, 'Xau thu hai dao nguoc: ', reverseS2);
// Tìm kí tự đầu tiên của xâu 2 có trong xâu 1
for i := 1 to Length(s2) do
begin
if Pos(s2[i], s1) > 0 then
begin
WriteLn('Ki tu dau tien cua xau 2 co trong xau 1 la: ', s2[i]);
WriteLn(outputFile, 'Ki tu dau tien cua xau 2 co trong xau 1 la: ', s2[i]);
Break;
end;
end;
// Đóng tệp
CloseFile(outputFile);
// Dừng chương trình để xem kết quả
ReadLn;
end.
Đề 2
program Bai2;
var
str1, str2, revStr1, revStr2: string;
i, count: integer;
f: text;
begin
// Bước 1: Nhập vào 2 xâu kí tự từ bàn phím
write('Nhap xau thu nhat: ');
readln(str1);
write('Nhap xau thu hai: ');
readln(str2);
// Bước 2: Đảo ngược 2 xâu kí tự
revStr1 := '';
revStr2 := '';
for i := length(str1) downto 1 do
revStr1 := revStr1 + str1[i];
for i := length(str2) downto 1 do
revStr2 := revStr2 + str2[i];
// Bước 3: Tìm số kí tự đầu tiên của xâu 2 xuất hiện trong xâu 1
count := 0;
for i := 1 to length(str2) do
if pos(str2[i], str1) = i then
count := count + 1;
// Bước 4: In ra kết quả
writeln('Xau thu nhat dao nguoc la: ', revStr1);
writeln('Xau thu hai dao nguoc la: ', revStr2);
writeln('So ki tu dau tien cua xau 2 xuat hien trong xau 1 la: ', count);
// Bước 5: Ghi kết quả vào tệp D:\Lớp_Tên\De2.txt
assign(f, 'D:\Lớp_Tên\De2.txt');
rewrite(f);
writeln(f, 'Xau thu nhat dao nguoc la: ', revStr1);
writeln(f, 'Xau thu hai dao nguoc la: ', revStr2);
writeln(f, 'So ki tu dau tien cua xau 2 xuat hien trong xau 1 la: ', count);
close(f);
readln;
end.
Đề 3
program De3;
var
s1, s2, s1_reverse, s2_reverse: string;
i, count: integer;
output_file: text;
begin
// Nhập xâu kí tự s1 và s2 từ bàn phím
writeln('Nhap xau ki tu s1: ');
readln(s1);
writeln('Nhap xau ki tu s2: ');
readln(s2);
// Đảo ngược xâu s1 và s2
for i := length(s1) downto 1 do
s1_reverse := s1_reverse + s1[i];
for i := length(s2) downto 1 do
s2_reverse := s2_reverse + s2[i];
// Ghi nội dung 2 xâu và xâu đảo ngược vào file De3.txt
assign(output_file, 'D:\Lop_Ten\De3.txt');
rewrite(output_file);
writeln(output_file, 'S1: ', s1);
writeln(output_file, 'S2: ', s2);
writeln(output_file, 'S1 dao nguoc: ', s1_reverse);
writeln(output_file, 'S2 dao nguoc: ', s2_reverse);
// Tìm kí tự đầu tiên của s1 có trong s2
count := 0;
for i := 1 to length(s2) do
begin
if s1[1] = s2[i] then
begin
count := count + 1;
break;
end;
end;
// Xuất kết quả ra màn hình và file De3.txt
writeln('Ki tu dau tien cua s1 co trong s2: ', count);
writeln(output_file, 'Ki tu dau tien cua s1 co trong s2: ', count);
// Đóng file
close(output_file);
readln;
end.
Đề 4
program De4;
var
str1, str2, reverse1, reverse2: string;
i, count: integer;
output: TextFile;
begin
// Nhập vào 2 xâu kí tự
Write('Nhap vao xau thu nhat: ');
ReadLn(str1);
Write('Nhap vao xau thu hai: ');
ReadLn(str2);
// Đảo ngược 2 xâu
for i := Length(str1) downto 1 do
reverse1 := reverse1 + str1[i];
for i := Length(str2) downto 1 do
reverse2 := reverse2 + str2[i];
// Tìm số kí tự trùng nhau
count := 0;
for i := 1 to Length(str1) do
if Pos(str1[i], str2) > 0 then
Inc(count);
// In ra màn hình và ghi ra tệp tin
WriteLn('Xau thu nhat: ', str1);
WriteLn('Xau thu hai: ', str2);
WriteLn('Xau thu nhat dao nguoc: ', reverse1);
WriteLn('Xau thu hai dao nguoc: ', reverse2);
WriteLn('So ki tu dau tien cua xau 1 co trong xau 2: ', count);
AssignFile(output, 'D:\Lop_Ten\De4.txt');
Rewrite(output);
Write(output, 'Xau thu nhat: ', str1, #13#10);
Write(output, 'Xau thu hai: ', str2, #13#10);
Write(output, 'Xau thu nhat dao nguoc: ', reverse1, #13#10);
Write(output, 'Xau thu hai dao nguoc: ', reverse2, #13#10);
Write(output, 'So ki tu dau tien cua xau 1 co trong xau 2: ', count);
CloseFile(output);
ReadLn;
end.
Nếu bạn muốn hỏi bài tập
Các câu hỏi của bạn luôn được giải đáp dưới 10 phút
CÂU HỎI LIÊN QUAN
16/12/2025
08/12/2025
Top thành viên trả lời