Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[4834] [해결] 4828번 에러 해결되었습니다[소스]
hk4801 [ ] 896 읽음    1998-10-11 03:06
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.. 
하루가 다갔구먼..쩝.


+ -

관련 글 리스트
4834 [해결] 4828번 에러 해결되었습니다[소스] hk4801 896 1998/10/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.