본문 바로가기
프로그램/C언어 1000제

C언어 142제] 2010년 한국정보올림피아드 지역본선 초등부 1번 검증수

by 건티 2024. 6. 13.
728x90

출처 : 반크_세계유산 석굴암

 

문제]

컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다. 고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들어간다. 검증수는 고유번호의 처음 5자리에 들어가는 5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지이다.

예를 들어 고유번호의 처음 5자리의 숫자들이 04256이면, 각 숫자를 제곱한 수들의 합 0 + 16 + 4 + 25 + 36  = 81 을 10으로 나눈 나머지인 1이 검증수이다.

입력
첫째 줄에 고유번호의 처음 5자리의 숫자들이 빈칸을 사이에 두고 하나씩 주어진다.

출력
첫째 줄에 검증수를 출력한다.

예제 입력 1 
0 4 2 5 6


예제 출력 1 
1

출처 : 백준_2475

 

 

참고풀이]

#include <stdio.h>

int main()
{
   int A[5]; //고유번호 처음 5자리 저장할 배열변수 
   int i; //인덱스 또는 반복 변수
   int Sum;//고유번호 각 값들의 제곱의 합을 구할 변수

   //고유번호를 입력받는다. 0~9사이의 수만 가능. 
   for(i=0;i<5;i++)
   {
      scanf("%d",&A[i]);
      if(A[i]>=0 && A[i]<=9) continue;
      else{
         printf("0~9사이의 수가 입력되지 않았습니다.\n");
         printf("작업을 종료합니다.\n");
         return 0;
      }
   }

   //고유번호 각 숫자들의 제곱의 합 구한다.
   Sum=0;
   for(i=0;i<5;i++)
      Sum+=A[i]*A[i];

   //검증수를 구하여 결과를 출력한다.
   printf("%d",Sum%10);

   return 0;
}

 

참고풀이 결과]

 

 

 

 

 

대한민국의 아름다운 영토, 독도

 

반응형

댓글