그래, 아직 프로그래밍의 기초를 배우고 있습니다. 아직도 의사 코드를 사용하는 법을 배웁니다. 나는 의사 코드 연산을 읽고, 연습했다. 나는 아직도 혼란스러워하고 강사에게 질문 할 때 나는 그녀를 괴롭히는 것처럼 느껴진다. 어쩌면 이럴 수는 없겠지만, 질문이있을 때마다 항상 느끼는 방식이지만 그 장벽을 깨기 위해 노력하고 있습니다. 그래서 저는 저의 책에서 모범을 보게 될 것이며 누군가가 저를 이해하도록 도울 수 있는지 몇 가지 질문을 할 것입니다.순차 파일
이 예제는 레코드를 순차 파일에 삽입하는 것에 대한 것입니다. 내 교과서는 다음과 같습니다 :
"성적 파일의 내용에 학생 이름에 따라 알파벳순으로 레코드가 있다고 가정합니다. 새 학생이 수업에 참여한다고 가정 해 봅시다. 이제 새 레코드를 삽입해야합니다. 각 필드에 데이터를 입력해야합니다 이 예에서는 학생의 이름과 학생의 점수에 대한 두 개의 필드가 있으므로 학생은 NewName 및 NewScore라는 변수에 저장된 값을 삽입하려고합니다.이 값은 사용자가 입력합니다 이 파일에 알맞은 순서로 삽입됩니다. " 하나는 입력이고, 다른 하나는 출력 이유,
1 Declare NewName As String
2 Declare NewScore As Integer
3 Open “grades” For Input As GivenFile
4 Open “scratch” For Output As TempFile
5 Write “Enter name and score for the new student:”
6 Input NewName, NewScore
7 Set Inserted == 0
8 While (NOT EOF(GivenFile)) AND (Inserted == 0)
9 Read GivenFile, Student, Score
10 If NewName < Student Then
11 Write TempFile, NewName, NewScore
12 Set Inserted = 1
13 End If
14 Write TempFile, Student, Score
15 End While
16 If Inserted == 0 Then
17 Write TempFile, NewName, NewScore
18 End If
19 While NOT EOF(GivenFile)
20 Read GivenFile, Student, Score
21 Write TempFile, Student, Score
22 End While
23 Close GivenFile, TempFile
24 Copy scratch onto grades
I 라인 3과 4를 이해하지 않습니다
그런 다음, 의사 코드를 표현? Input이 프로그램에 삽입 될 것이라고 생각했고, 결과는 프로그램에 삽입 된 결과입니다.
또한 관계 연산자를 숫자와 함께 사용 했으므로 이제는 줄에 나와있는 것처럼 볼 때 혼란스러워집니다. 무엇을 말하려고합니까? 새로운 학생이 TempFile, Student 및 Score를 쓸 수 있는지 알려주는 (NewName < Student)가 있습니까?
첫 번째 While 루프에서 Inserted = 1을 지정하면 루프가 종료됩니다. 그런 다음 Inserted == 0 (16 행)을 반복합니다. while 루프를 반복 할 다른 새로운 학생이있는 경우에 대비됩니까? 나는 이것에 정말로 길을 잃었다.
결국, 우리는 왜 성적에 흠집을 복사해야합니까?
모든 질문에 유감스럽게 생각합니다. 혼란 스럽습니다. 수업을 온라인으로 진행하고 있습니다. 나는 스스로 가르쳐야하며, 아무도이 문제를 논의 할 사람이 없습니다.
참고 : 이것은 프로그래밍 논리를 더 잘 이해하려고 할 때 할당과는 아무런 관련이 없습니다.
Dukeling, 편집 해 주셔서 감사합니다. – Mandygir