implementation
var
i,i1,i2,i3 : Integer; //배열첨자
aCode : Array [1..10] of Integer; //회원코드 배열
aName : Array [1..10] Of String[6]; //회원명 배열
aPoint : Array [1..10] Of Integer; //점수 배열
aPoint2 : Array [1..10] Of Integer; //누계점수 배열
aMoney : Array [1..10] of Integer; //사용금액 배열
aDate : Array [1..10] Of String[10]; //사용일자 배열
aaPoint21 : Array [1..10] Of Integer; //회원1 누계점수
aaPoint22 : Array [1..10] Of Integer; //회원2 누계점수
aaPoint23 : Array [1..10] Of Integer; //회원3 누계점수
{$R *.DFM}
procedure TfrmExam024.Button1Click(Sender: TObject);
begin
if i > 10 Then Exit;
aCode[i] := StrToInt(Edit1.Text); //회원코드
aMoney[i] := StrToInt(Edit4.Text); //사용금액
aDate[i] := edDate.Text; //사용일자
aName[i] := '회원' + Edit1.Text; //회원명
If aMoney[i] < 100000 Then aPoint[i] := 0
else If aMoney[i] <= 200000 Then aPoint[i] := 1
else if aMoney[i] > 200000 Then aPoint[i] := 2;
ShowMessage (' 현재의 점수는 : ' + IntToStr(aPoint[i]));
If aCode[i] = 1 Then // 입력코드 1이면 회원1
begin
if i1 = 1 Then // 회원1의 누계점수 배열에 첨자가 초기인지 확인
begin
aaPoint21[i1] := aaPoint21[i1] + aPoint[i]; //초기이면 초기누계점수에 현재 점수 더함
aPoint2[i] := aaPoint21[i1]; //누계점수
inc(i1); // 회원1의 누계점수 배열 첨자 증가
ShowMessage ('회원1의 현재의 누계 점수는 : ' + IntToStr(aPoint2[i]));
end
else begin
aaPoint21[i1] := aaPoint21[i1-1] + aPoint[i]; // 이전 누계점수와 현재의 점수를 더함
If aaPoint21[i1] > 100 Then aaPoint21[i1] := aaPoint21[i1] + 1; //누계점수 100이상이면 1 추가
aPoint2[i] := aaPoint21[i]; //입력순 누계점수 배열에 누계점수 대입
inc(i1);
ShowMessage ('회원1의 현재의 누계 점수는 : ' + IntToStr(aPoint2[i]));
end;
End;
If aCode[i] = 2 Then // 입력코드 2이면 회원
begin
if i2 = 1 Then // 회원2의 누계점수 배열에 첨자가 초기인지 확인
begin
aaPoint22[i2] := aaPoint22[i2] + aPoint[i]; //초기이면 초기누계점수에 현재 점수 더함
aPoint2[i] := aaPoint22[i2]; //누계점수
inc(i2); // 회원1의 누계점수 배열 첨자 증가
ShowMessage ('회원2의 현재의 누계 점수는 : ' + IntToStr(aPoint2[i]));
end
else begin //회원2의 입력이 초기가 아닌경우
aaPoint22[i2] := aaPoint22[i2-1] + aPoint[i]; // 이전 누계점수와 현재의 점수를 더함
if aaPoint22[i2] > 100 Then aaPoint22[i2] := aaPoint22[i2] + 1; //누계점수 100이상이면 1 추가
aPoint2[i] := aaPoint22[i2]; //입력순 누계점수 배열에 누계점수 대입
inc(i2);
ShowMessage ('회원2의 현재의 누계 점수는 : ' + IntToStr(aPoint2[i]));
end;
End;
If aCode[i] = 3 Then //입력코드 3이면 회원3
begin
if i3 = 1 Then
begin
aaPoint23[i3] := aaPoint23[i3] + aPoint[i];
if aaPoint23[i3] > 100 Then aaPoint23[i3] := aaPoint23[i3] + 1;
aPoint2[i] := aaPoint23[i3];
inc(i3);
ShowMessage ('회원3의 현재의 누계 점수는 : ' + IntToStr(aPoint2[i]));
end
else begin
aaPoint23[i3] := aaPoint23[i3-1] + aPoint[i];
if aaPoint23[i3] > 100 Then aaPoint23[i3] := aaPoint23[i3] + 1;
aPoint2[i] := aaPoint23[i3];
inc(i3);
ShowMessage ('회원3의 현재의 누계 점수는 : ' + IntToStr(aPoint2[i]));
end;
End;
Edit2.Text := IntToStr(aPoint[i]); // 현 사용금액 점수
Edit3.Text := IntToStr(aPoint2[i]); // 누계점수
end;
끝입니다...
의문있으면 메일주세요.. 그럼 20000..
하루가 다갔구먼..쩝.
|