现在很多学校老师布置作业之后,都会要求完成作业的家长在群内进行接龙
没有接龙的家长代表未完成作业
那么接下来的事情就是一个日复一日的繁琐工作
"检查谁没交作业"
由于一个班级的学生并不是区区几个人,所以每次检查到底谁没交作业就让人很烦.
这个事情就交给程序来完成吧
使用方法:
使用者请在本程序根目录创建一个:班级人员名单.txt
然后把班级所有学生的姓名写进去,一行一个姓名
之后把每日的接龙拷贝到程序的左边方框内,
然后点击右下角的文本名单作业检查.
链接: https://pan.baidu.com/s/1-l6Df-WB97JxWNJR5EjuHA 提取码: qu9s 复制这段内容后打开百度网盘手机App,操作更方便哦
--来自百度网盘超级会员v5的分享
吾爱论坛同步地址:
https://www.52pojie.cn/thread-1473153-1-1.html
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs,
Vcl.StdCtrls, IniFiles;
type
TForm1 = class(TForm)
Memo1: TMemo;
Memo2: TMemo;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Memo1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
//AllName = (钟瑞秋, 彭紫夏, 周佳慧, 陈可佳, 刘思琦, 陈欣怡, 钟佳婷, 黄育宸, 熊子嫣, 伍妙思, 牛艺涵, 张书涵, 刘淼, 刘晨宇, 严恺昕, 项雨泽, 廖羽良, 杨宇轩, 伍宇乐, 肖哲浩, 闻怡航, 简博成, 刘子文, 伍依铭, 施丽媛, 廖思凯, 袁雨辰, 黄皓翔, 黄宇泉, 钟艺轩, 林颖希, 刘子渊, 梁振楠, 郭雨辰, 黄雨泉, 刘俊佑);
var
Mystat: array of string;
MyList: THashedStringList;
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button2Click(Sender: TObject);
var
EName1: string;
Userinput1: string;
EIndex1: Integer;
begin
Memo2.lines.Clear;
EIndex1 := 0;
Userinput1 := memo1.Text;
try
MyList := THashedStringList.Create;
MyList.DefaultEncoding := TEncoding.UTF8;
MyList.LoadFromFile('班级人员名单.txt');
for EName1 in MyList do
begin
if EName1.IndexOf(Userinput1) = -1 then //这里用的IndexOf方法,不存在会返回-1
begin
memo2.Text := Memo2.Text + EName1 + '没有完成作业' + #13#10;
Inc(EIndex1);
end;
end;
Memo2.text := Memo2.text + '共计' + IntToStr(EIndex1) + '人未交作业.' + #13#10 + DateTimeToStr(now);
finally
MyList.Free;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
SetLength(Mystat, 38);
Mystat := ['钟瑞秋', '黄佳敏', '钟佳婷', '彭紫夏', '周佳慧', '陈可佳', '刘思琦', '陈欣怡', '钟佳婷', '黄育宸', '熊子嫣', '伍妙思', '牛艺涵', '张书涵', '刘淼', '刘晨宇', '严恺昕', '项雨泽', '廖羽良', '杨宇轩', '伍宇乐', '肖哲浩', '闻怡航', '简博成', '刘子文', '伍依铭', '施丽媛', '廖思凯', '袁雨辰', '黄皓翔', '黄宇泉', '钟艺轩', '林颖希', '刘子渊', '梁振楠', '郭雨辰', '黄雨泉', '刘俊佑'];
end;
procedure TForm1.Memo1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
EName: string;
Userinput: string;
EIndex: Integer;
begin
Memo2.lines.Clear;
EIndex := 0;
Userinput := memo1.Text;
for EName in Mystat do
begin
if Pos(EName, Userinput) = 0 then //Pos方法,不存在会返回0,但是Pos好像更慢
begin
memo2.Text := Memo2.Text + EName + '没有完成作业' + #13#10;
//Memo2.Lines.Add(EName + '没交作业' + #10); //这种速度更慢
Inc(EIndex);
end;
end;
Memo2.text := Memo2.text + '共计' + IntToStr(EIndex) + '人未交作业.' + #13#10 + DateTimeToStr(now);
end;
end.