2011-09-26 4 views
2

가능한 복제를 혼동 :
cobol difference with Picture having a dash (-) and a having a X코볼 대시 나에게

내가 코볼과 그립에 도착 묶는하고있어 숫자를 포맷 할 때 대시를 이해할 수 없습니다. 이 예가 있습니다 :

- 9

다음 중 맞습니까?
첫 번째 대시 - 숫자가 음수이면 대시를 넣고 그렇지 않으면 그렇지 않습니다.
두 번째 대시 - 저는 이것을 혼동합니다. 처음에는 이미 음수인지 양수인지를 지정하는 대시가 이미 있습니다.
9 - 숫자 자릿수 (0-9)

예를 들어 좋을 것입니다. : S

감사

답변

1

previous question을 보면 어떤 문제가 있는지 확실하지 않습니다. 그러나 다시 시도하십시오 ...

COBOL에서 숫자 표시 필드에는 다양한 "구두점"유형이 포함될 수 있습니다. 이 "문장 부호"는 항목 PICTURE 절에 정의됩니다. 사용할 수있는 구두점 기호 유형의 몇 가지 예는 다음과 같습니다. 명시 적 소수점, 더하기/빼기 기호, CR/DR 표시기 및 thousandsnads 구분 기호 (북미의 쉼표). PICTURE 절에서 어떤 "구두점"유형이 발생할 수 있는지를 결정하는 잘 정의 된 규칙 집합이 있습니다. PICTURE CLAUSE 편집 링크는 주어진 PICTURE 절을 구성 (또는 읽는 방법)을 설명합니다.

COBOL을 처음 사용하는 많은 사람들은 COBOL의 데이터 정의가 숫자 표시 데이터에 대한 두 가지 다른 유형의 정보를 지정한다는 점에 중점을두고 있습니다. 하나는 유지할 수있는 값의 범위이고 다른 하나는 값 범위가 표시되는 방법입니다 ( ). 예 : PICTURE --9은 데이터 항목에 대해 두 가지를 알려줍니다. 1) 값은 -99 ~ +99 범위의 정수이며, 2)이 항목을 표시하는 데는 3 칸이 필요합니다. 숫자가 양수이면 공백이 첫 번째 0이 아닌 숫자 앞에 나타납니다. 숫자가 음수이면 마이너스 기호가 첫 번째 0이 아닌 숫자의 왼쪽에 즉시 나타납니다. 다음 COBOL의 DISPLAY 문을 고려해

DISP-NBR이의 그림 조항이있는 경우
DISPLAY '>' DISP-NBR '<' 

이 표시되는 방법을 다양한 값이다 --9을.

0 displays as: > 0< 
-1 displays as: > -1< 
-11 displays as: >-11< 
10 displays as: > 10< 

모든 디스플레이는 3 자리로 표시됩니다. PICTURE 절에 '9'가 있기 때문에 항상 최소한 하나의 숫자가 표시되며 그 외에는 앞에 오는 0이 표시되지 않습니다. 마이너스 기호는 마이너스 값으로 만 표시됩니다.마이너스 기호는 표시된 첫 번째 숫자의 바로 왼쪽에 표시됩니다.

이제 특정 질문에 답하십시오. 숫자 표시 데이터 항목을 표시하는 데 필요한 총 문자 위치 수는 PICTURE 길이로 결정됩니다. 3 개의 캐릭터 위치가 필요하므로 3 개의 캐릭터 그림이 있습니다. 그림에 기호가 지정되면 공백이 항상 지정됩니다. 이것은 정수 범위를 최대 2 자리 숫자로 제한하는 것입니다. 두 번째 빼기 부호는 '제로 억압'을 나타냅니다. Zero supression은 맨 앞에 0을 인쇄하지 않는다는 것을 의미합니다. 단 1 개의 빼기 기호 만 인쇄되며 첫 번째 표시된 자릿수의 바로 왼쪽에 표시됩니다.

COBOL에는 표시 번호와 관련하여 많은 유연성이 있습니다. 숫자 표시 PICTURE 절을 이해하면 이것이 어떻게 작동하는지 이해하는 데 중요합니다.

1

stackoverflow:cobol-difference-with-picture-having-a-dash-and-a-having-a-x

에서 대시는 음수가있는 경우, 대시는 숫자 (왼쪽) 옆에 표시 된다는 것을 의미합니다. 하나의 대시 만 이 표시됩니다. 숫자가 양수이면 각 대시마다 공백이 표시됩니다.

+0

나는 그것을 보았다. 제 예제는 최대 3 자까지 입력 할 수 있습니다. – Decrypter

+0

숫자 범위는 -9999이어야하며 길이는 2 자입니다 (http://supportline.microfocus.com/Documentation/books/sx50/lhpdf40g.htm#0018 참조). –