rand() 함수 관련 질문인데요...

khaic0c0의 이미지

int answer1;

srand( (unsigned)time( NULL ) );
answer1 = rand();

이런식으로 rand() 함수 사용하면,
answer1 값에... 10자리 정도의 숫자들이 랜덤으로 할당됩니다.

그런대 전.. 여기서 두자리만 가져가고 싶거든요.
만약 answer1 값에... 35957092384 이런식으로 값이 들어간다면,

35값만 가져오고 싶어요.

문자열 함수로 가져오면 될듯도 한대 제가 문자열 함수를 잘 모르거든요.
사용법이랑 적당한 함수는 어떤것이 있나요?

그리고 문자열 함수 말고도 다른 방법은 뭐가 있을까요?

근데 제가 man 을 사용하고 싶어도 이상하게 뜨내요...

rand()  &&&&&& 0&& RAND_MAX&&&&&& pseudo-random &&&&&&&&&&
                 &&&&.

                 srand() &&&&&& &&&&&& rand()&& &&&&&&&& pseudo-random &&&&
                 && &&&&&& &&&&&& &&&&&& &&&& &&&&&& &&&&&&&&.  &&&& &&&&&&
                 &&&&&& &&&& seed &&&&&& srand()&& &&&&&&&& &&&&&&&&.

                 &&&& &&&& seed &&&& &&&&&&&& &&&&&&&&, rand() &&&&&& && &&
                 &&&&&& 1 &&&&&& &&&&&& &&&&.

글씨가 이런식으로 나오내요.. 한글로 설치했더니.. 콘설에서는 이런식으로 보이는군요..

여하튼 rand() 함수 사용해서 int 형으로 두자리만 빼오는 것좀 가르쳐주시면 감사하겠습니다.

khaic0c0의 이미지

int answer1; 

srand( (unsigned)time( NULL ) ); 
answer1 = rand();

아 그리고 이부분에서 srand( (unsigned)time( NULL ) ); 이걸 꼭 해줘야 되나요?
안해줘도 결과는 똑같던데..

이부분은 왜 해주는건가요?

어딜 가든 필요한 인간되자~~ :-)

trashq의 이미지

꼭 앞자리 수 2개를 빼오시려는게 아니시라면

'35957092384 % 100' 으로 10이상의 수만 뽑으시면 될듯... ^-^a

세상이 뭐라하든... :)

B00m의 이미지

log10 같은 함수를 이용하면 자릿수를 구할 수 있으니까 그 자리수 이용해 10으로 나누어 가면 말씀하신데로 숫자의 윗 부분만 가져올 수 있겠네요..

그리고 srand 를 안하게 되면, rand 함수가 랜덤한 값을 발생하는것은 문제가 없지만 seed 값이 항상 같으므로 실행할때마다 항상 같은 랜덤값만 나오게 됩니다..

ssoo76의 이미지

answer1 /= 1000000000;

세상은 하나..........

sozu의 이미지

rand()함수는 겉으로는 Random 값을 주는것 같지만..

실제로는 어떤 Seed값에 의한 계산에 의해 나오는 숫자들을

차례대로 리턴할 뿐입니다.

즉..Seed가 같다면 같은 순서의 숫자들이 나오게 되죠..

srand는 rand함수의 Seed를 설정하는 함수입니다.

-----------
청하가 제안하는 소프트웨어 엔지니어로써 재미있게 사는 법
http://sozu.tistory.com

송지석의 이미지

음. 그냥 지나가다가..

맨페이지는

man -a rand

해보세요.

익명 사용자의 이미지

숫자를 문자열로 바꾼다음 앞의 두칸만 다시 숫자로 바꿔도 되지 않을까요?

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.