CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·주식한당 ·MaClien ·방탄소년당 ·일본산당 ·소시당 ·개발한당 ·자전거당 ·이륜차당 ·AI당 ·패스오브엑자일당 ·안드로메당 ·소셜게임한당 ·바다건너당 ·나스당 ·골프당 ·곰돌이당 ·클다방 ·가상화폐당 ·콘솔한당 ·키보드당 ·리눅서당 ·걸그룹당 ·물고기당 ·전기자전거당 ·노젓는당 ·사과시계당 ·퐁당퐁당 ·여행을떠난당 ·디아블로당 ·찰칵찍당 ·라즈베리파이당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·육아당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·방송한당 ·PC튜닝한당 ·그림그린당 ·소풍간당 ·심는당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·위스키당 ·와인마신당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

아무거나질문

C 기초에서 float의 뜻 17

2009-03-13 17:34:04 121.♡.69.72
냐하함tm
안녕하세요 냐하함입니다. 저는 2학년 c기초를 배우고있습니다. 책에서 보니까 예제로 마일,야드를 킬로미터로 변환해서 출력해주는 예제가 있는데요 int miles , yards float Kilometers 라고 나옵니다. 이게 그 베이직에서 a=1 b=2 c=a+b 와 같은건가요 아니면 다른 뜻이 있는건가요 정확하게 짚고 넘어가야할거같은데 책에있는 내용으로는 이해가 안가서말이죠. 예문에는 miles = 26; yard = 385; Kilometers = 1.609 * (miles + yards / 1760.0) printf(\"\\n A marathon is %f Kilometersm \\n\\n\", Kilometers); return 0; 이라고 되어있습니다. 답변 감사합니다 (__)
냐하함tm님의 게시글 댓글
SIGNATURE
민감한글은 펑합니다. 양해부탁드립니다



******** Hello! Project Forever ********
*******  http://www.helloproject.com  *******
서명 더 보기 서명 가리기
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [17]
판자
IP 203.♡.209.67
03-13 2009-03-13 17:38:56 / 수정일: 2017-04-30 01:34:09
·
float은 말 그대로 부동소수점 실수를 선언할때 쓰입니다.
여기서 킬로미터즈 라는 변수는 그 자체가 부동소수점을 가질수밖에 없는 실수임으로 integer로 선언해주면 소수점이 몽창 짤린 결과가 나오게 되죠;;
quotidien.
IP 118.♡.52.137
03-13 2009-03-13 17:39:46 / 수정일: 2017-04-30 01:34:09
·
변수 타입 중의 하나인 \'부동소수점\' 타입입니다.
int는 정수형을 뜻하는 것이구요.
Kilometeres 라는 변수가 소수점 값이 필요하기 때문에 int가 아닌 float 이라고 선언하는 것입니다.
그리고 float은 소수점의 위치가 정해져있는 것이 아닌, \'떠다니는\' 의 의미에서 온 거라고 생각하시면 될 것 같습니다.
냐하함tm
IP 121.♡.69.72
03-13 2009-03-13 17:40:02 / 수정일: 2017-04-30 01:34:09
·
아 그렇다면 소수점표시가 필요없을때는 float라는 선언문은 필요가 없는건가요?
냐하함tm
IP 121.♡.69.72
03-13 2009-03-13 17:41:30 / 수정일: 2017-04-30 01:34:09
·
그리고 저기서 함수를 미리 지정하지않고 사용자로부터 받아서 출력할때 쓰는

선언문은 어떤게 있는지요?
startx
IP 118.♡.62.188
03-13 2009-03-13 17:41:48 / 수정일: 2017-04-30 01:34:09
·
실수형 자료형중 하나입니다.
float보다는 연산의 정확성을 위해 double을 많이 쓸겁니다.

int miles , yards
float Kilometers 라고 나옵니다. 는
int 형 변수 miles, yards 와 float형 변수 Kilometers를 선언 한 것입니다.

판자
IP 203.♡.209.67
03-13 2009-03-13 17:43:36 / 수정일: 2017-04-30 01:34:09
·
함수를 미리 지정하지 않는다뇨?
일단 용어 정리부터 다시 하시는게 좋을듯 합니다.
startx
IP 118.♡.62.188
03-13 2009-03-13 17:44:41 / 수정일: 2017-04-30 01:34:09
·
연산식을 가변 함수로 사용한다는 말씀인가요?
함수 포인터 사용하면 됩니다만... 지금 기초가 전혀 안되어 있으신것 같은데요.
쿠키아빠
IP 203.♡.169.209
03-13 2009-03-13 17:45:49 / 수정일: 2017-04-30 01:34:09
·
음. 아질게도 좋지만 냐하함 님 시기에서 서적 참고가 중요해 보이지 말입니다.
The C Programming Language. 얇고 번역도 잘 되어 있는 명작입니다.
판자
IP 203.♡.209.67
03-13 2009-03-13 17:48:13 / 수정일: 2017-04-30 01:34:09
·
번역에 동의 못합니다. 욕나옵니다.
=-=;;
게다가 아주 오래전 C89표준이라 새로 배우는 분들에게 추천할만 한것도 아닙니다.
다배운 사람에게 참고해라 하고 던저주는 용도면 모를까요.
용어, 명칭, 사용예를 배우는건 차라리 C99표준안 쭉 읽는게 더 좋을수도 있습니다.
냐하함tm
IP 121.♡.69.72
03-13 2009-03-13 17:51:58 / 수정일: 2017-04-30 01:34:09
·
아 또 쓸데없는 질문을 했군요. 죄송합니다.
지금 ABC책을 보고 있습니다.
학교에서 기초로 배우고있는데 미리복습할겸 따라치다 의문이 들어서 질문한건데
괜한질문을 했나봅니다.
일리어스
IP 211.♡.22.138
03-13 2009-03-13 17:53:00 / 수정일: 2017-04-30 01:34:09
·
변수 선언입니다.
C에서는 자신이 쓸 변수(값이 변할 수 있는 기억공간)을 미리 지정해야합니다.
int a 라고 하면 int형(정수) a 라고 불리우는 기억공간을 할당하게 됩니다.
float a 라고 하면 float형(실수) a라고 불리우는 기억공간을 할당하게 되겟죠.

newbie12
IP 61.♡.49.62
03-13 2009-03-13 17:57:43 / 수정일: 2017-04-30 01:34:09
·
컴퓨터 공학 개론부터 학습하심이... 어떨까 싶은데요...
컴퓨터는 0,1로 실수를 표기하게 되며 그 표현 양에 제한이 있습니다.
하여 1씩 증가하여 표기할 수 있는 정수는 일정 영역안에선 정확히 연산할 수 있습니다만

그외 실수는 정확히 연산할 수 없으며 따라서 유효숫자의 개수를 제한하고 거기에 10의 제곱을 곱한 형태의 실수를 사용하여 근사하게 됩니다.
근데 이 두개의 데이터는 같은 바이트 크기에서 서로 표기하는 법이 완전히 완전히 달라서

변수를 정할 때는 이 변수는 어떤 형태로 쓰일 것인지를 정해줘야합니다.
그렇지 않으면 대입이 안되는 거죠

자 문제로 돌아가 봅니다.

mile과 yard는 다행히 딱 떨어지는 정수 이군요 그리고 다시 바뀌지 않는 놈이네요
그냥 int를 써도 됩니다.
그런데 Kilometers란 변수는 소숫점이 필요한 변수네요
이럴 경우 float형으로 선언해줘야겠네요
그렇지 않고 그냥 대입해주면 계산식에서 나온 값이 (정밀한) 소수가 아닌 정수로 나올 테니까요

대충 이런 흐름으로 이해하시면 될 듯 싶습니다.

하지만 컴퓨터 공학 개론 같은 책을 반드시 보셔야할 것 같습니다.
프로그래밍이란게 어차피 컴퓨터 연산을 통해서 결과물을 도출하기 위한 프로그램을 만드는 행위이니...
컴퓨터가 어떻게 해당 구문을 수행하는지를 모르면 아무 발전도 없을터이니까요

프로그래밍 = 대충 때우기 라고 생각하지 마세요

quotidien.
IP 118.♡.52.137
03-13 2009-03-13 17:57:43 / 수정일: 2017-04-30 01:34:09
·
아뇨; 괜한 질문 하신 것은 아닙니다.
C언어를 포함한 프로그래밍 언어를 처음 배우는 분들이 많이 헤매는 경우가 많은 건 사실입니다만..
윗분들 말씀처럼 용어에 대한 정리가 아직 좀 덜 되신게 아닌가 싶습니다.
사실, float을 어느때 써야하는가? 라고 하신 질문에 대답을 드리려면 좀 막막한 게 사실입니다.
애시당초 컴퓨터라는 녀석이 디지털이니 정수타입밖에 지원하지 않는데, 억지로 소수점이라는 개념을 넣으려다보니 만들어진 놈이기 때문이죠;
그리고, 컴퓨터라는 것이 어차피 저장할 수 있는 공간상의 한계가 있기 때문에...
32bit 시스템 상에서 int형은 32bit의 저장공간이 필요하므로 보통 -2147483648부터 2147483647 까지의 숫자밖에 표현할 수 없습니다.
그런데 float타입의 경우는 실수부와 지수부로 나뉘어 있고, 실수부는 다시 정수부와 소수부로 나뉘어져있습니다.
그래서 float은 약 3.4*10의 -38승부터 3.4*10의 38승 정도의 수를 표현할 수 있습니다.
대신, 정밀도가 int형처럼 정확하지 않기 때문에 두리뭉술하게 7자리 정도 숫자까지의 정확도를 가집니다;;
startx
IP 118.♡.62.188
03-13 2009-03-13 18:00:41 / 수정일: 2017-04-30 01:34:09
·
궁금한거 질문하는거 잘못된게 전혀 아닙니다.
미리 공부해 보려고 했다는 말씀이 없으셔서 그런것이지. 호기심을 갖고 질문하는 습관은 좋은 습관입니다.
newbie12
IP 61.♡.49.62
03-13 2009-03-13 18:02:26 / 수정일: 2017-04-30 01:34:09
·
라고 리플을 달고 보니 quotidien님의 자세한 리플이 턱하니 달려있군요 ㄷㄷㄷ
ㅎㅎㅎ

여튼 모르시더라도 문제에서 뭘 공부해야할 것인지를 파악하시면
큰 도움이 될 겁니다.
즐프하세요~
세인티아
IP 211.♡.32.129
03-13 2009-03-13 18:03:22 / 수정일: 2017-04-30 01:34:09
·
흠.. 사실 kilometers를 int로 써도 무방합니다.
일반 정수를 더하거나 빼거나 곱하더라도 정수가 되기 때문에
결과값을 정수형인 int로 선언해도 무방합니다.
하지만 나누면 소수점까지 나올수도 있죠 그런경우 더 정확한 결과값을
반영하기 위해 소수점까지 표현 가능한 float을 썼다고 보시면 됩니다.
입력을 받아서 처리하려면
출력에 printf 가 있듯이 입력에는 scanf 라는 기본함수가 있는데
이게 참 걍 설명하면 쉬운데 &연산자에 대해 알아야 해서..
차차 공부하시면서 알아가시면 될듯...
quotidien.
IP 118.♡.52.137
03-13 2009-03-13 18:03:39 / 수정일: 2017-04-30 01:34:09
·
2RUN님 // 저도 리플 달고 나서 보니 갑자기 리플들이 많이 늘어있어서 깜짝 놀랬습니다 gee..;;
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.