본문으로 바로가기

바다야크

  1. Home
  2. 컴퓨터/컴퓨터 이야기
  3. 챗GPT 원주율 소수점 이하 1000자리 구하는 C언어 루틴을 요청했더니

챗GPT 원주율 소수점 이하 1000자리 구하는 C언어 루틴을 요청했더니

· 댓글개 · 바다야크

챗GPT로 프로그램을 대신 짜도록 요청한다고 해서 글의 제목처럼 원주율 소수점 이하 1000자리까지 구하는 C언어 루틴을 요청해 보았습니다. 그런데 질문이 잘못되었을까요? 챗GPT가 제공해 주는 프로그램 루틴이 한눈에 보아도 부족해 보입니다.

챗GPT에 C언어 루틴 요청

챗GPT에 원주율 1000자리 구하는 루틴 요청
챗GPT에 원주율 1000자리 구하는 루틴 요청

소수점 1000자리 이하의 그 긴 숫자를 printf() 함수 한 번으로 출력한다는 것부터 바라는 요구에 맞지 않습니다. 아마다 챗GPT는 printf() 함수의 표현 형식은 이해하기는 하기는 하지만, 변수 크기의 한계에 대해서는 모르는 듯합니다. 즉, %.[자리수]f 에 대해서는 알고 있지만, 1000이라는 넣어주면 1,000자리까지 출력할 수 있을 것으로 생각(인공지능에게 생각이라는 말이 옳을까 싶습니다만)하는 것 같습니다.

챗GPT가 만들어준 루틴, 디버깅을 잘해야

혹시 질문이 잘못되었을까 싶어서 "원주율을 1000자리까지 보여주는 C언어 프로그램", "원주율 소수점 이하 단단위를 십진수로 1000자리까지 보여주는 C언어 루틴" 등 질문을 여러 번 바꾸었지만, 역시 결과는 신통치 않았습니다. 물론, 챗GPT가 알려준 루틴을 컴파일하고 실행해 보았습니다. 역시나 결과는 제대로 나오지 않았습니다.

흠~ 챗GPT로 프로그램을 대신 작성한다고 하는데 디버깅을 잘해야겠네요. 인류의 미래는 자연재해도 위험하지만, 소프트웨어의 버그로 문명이 먼저 망할 수 있다고 생각합니다. 어느 무책임한 프로그래머가 귀찮아서 챗GPT가 알려 준 루틴을 정확한 검증 없이 위험할 수 있는 시스템에 적용해 버린다면.....

소수점 이하 1000자리까지 구하는 C언어 루틴

구글에서 검색했고 원하는 C언어 프로그램 소스를 찾았습니다. 그 소스를 보여 드리는 대신에 링크를 소개합니다. 열망하다 블로그에 올라온 C언어 루틴인데요, 소수점 이하를 4자리씩 끊어서 보여 주어서 보기도 편합니다. 그리고 그 소스를 이용하여 구한 원주율 소수점 1000자리입니다. 

$ gcc main_pi.c -lm -o show_pi
$ ./show_pi
    3. 1415 9265 3589 7932 3846 2643 3832 7950 2884 1971 6939 9375 1058 2097 4944 5923 0781 6406 2862 0899 8628 0348 2534 2117 0679 8214 8086 5132 8230 6647 0938 4460 9550 5822 3172 5359 4081 2848 1117 4502 8410 2701 9385 2110 5559 6446 2294 8954 9303 8196 4428 8109 7566 5933 4461 2847 5648 2337 8678 3165 2712 0190 9145 6485 6692 3460 3486 1045 4326 6482 1339 3607 2602 4914 1273 7245 8700 6606 3155 8817 4881 5209 2096 2829 2540 9171 5364 3678 9259 0360 0113 3053 0548 8204 6652 1384 1469 5194 1511 6094 3305 7270 3657 5959 1953 0921 8611 7381 9326 1179 3105 1185 4807 4462 3799 6274 9567 3518 8575 2724 8912 2793 8183 0119 4912 9833 6733 6244 0656 6430 8602 1394 9463 9522 4737 1907 0217 9860 9437 0277 0539 2171 7629 3176 7523 8467 4818 4676 6940 5132 0005 6812 7145 2635 6082 7785 7713 4275 7789 6091 7363 7178 7214 6844 0901 2249 5343 0146 5495 8537 1050 7922 7968 9258 9235 4201 9956 1121 2902 1960 8640 3441 8159 8136 2977 4771 3099 6051 8707 2113 4999 9998 3729 7804 9951 0597 3173 2816 0963 1859 5024 4594 5534 6908 3026 4252 2308 2533 4468 5035 2619 3118 8171 0100 0313 7838 7528 8658 7533 2083 8142 0617 1776 6914 7303 5982 5349 0428 7554 6873 1159 5628 6388 2353 7875 9375 1957 7818 5778 0532 1712 2680 6613 0019 2787 6611 1959 0921 6420 1989
$

계산이 맞나 확인하고 싶어서 1000자리를 구글에서 검색할까 하다가 챗GPT에 물어보았습니다.

챗GPT가 구해준 원주율
챗GPT가 구해준 원주율

챗GPT가 구해준 원주율입니다. 챗GPT는 소수점 이하 숫자를 10개 단위로 끊어서 보여 주네요. 숫자가 너무 많아서 중간중간 끊어서 확인해 보니 결과 값이 맞는 것 같습니다.

챗GPT가 알려준 루틴이 원하는 결과를 보여 주지는 못했지만, 그렇다고 챗GPT에 대해 부정적인 생각은 들지 않습니다. 구글이나 네이버 검색에서도 원한 것이 아니거나 틀린 자료도 많습니다. 웹 검색에 걸리는 저의 블로그 글에도 내용이 틀렸다면서 수정을 요청하는 댓글을 받기도 합니다.

챗GPT는 계속해서 업그레이드하고 인공지능 학습을 하므로 시간이 지날수록 더욱 정확한 답을 줄 것입니다. 그러나 그렇다고 해도 꼭 검증이 필요하겠습니다. 퇴근 빨리하려고 검증하지도 않은 채 시스템에 적용해서는 안 되겠지요. 경험에 의한 습관적으로 맹신하는 일이 없어야겠습니다.

원주율의 매력

원주율은 묘한 매력이 있습니다. 원주율을 100만 자리까지 보여 주는 사이트도 있었는데, 아쉽게도 지금은 열리지 않네요. 최조 컴퓨터 애니악에게 원주율을 계산하라고 했더니 70시간 동안 2,037자리까지 구했습니다. 우와~ 내 컴퓨터는 1,000자리를 순간 뚝딱 구했는데. 애니악에 비해 내 컴퓨터는 얼마나 빠른 걸까요?

영국 수학자 샹크스는 707자리까지 15년이나 걸려서 구했습니다. 그렇게 계속해서 구한 것도 대단하지만, 안타깝게도 529자리부터 틀렸다고 합니다.

SNS 공유하기
💬 댓글 개
이모티콘창 닫기
울음
안녕
감사해요
당황
피폐

이모티콘을 클릭하면 댓글창에 입력됩니다.