KOREA University/C++2008. 9. 18. 16:19
x = 10
y = 3
z = 3
일때

x - ++y = 6 이고, x - z++ = 7 이다.

++(증가연산)가 앞에 붙으면 +1을 해주고
뒤에 붙으면 계산이 모두 끝난 후에 비로소 +1을 해준다.

++가 앞에 붙는다면 그냥 간단하게 +1을 해주면 된다.

++가 뒤에 아무리 붙었다면, 계산할때 무시해도 좋다.
단, 실제값은 +1씩 해줘야 한다. 결과값으로 보여질땐 +1이 적용되지 않는다.

이는 C나 C++의 시험문제 중에 주로 나오는 패턴으로
정확히 이해하지 않으면 아주 햇깔리다.
이 기회에 아주 정확하게 원리를 이해해야 한다.
Posted by 정훈승
KOREA University/C++2008. 9. 11. 21:56
#include <iostream>
using namespace std;
int main()
{
 int number,i,j,k;
 
 cout << "입력해봐 : ";
 cin >> number;
 if (number == 1)
 {
  cout << "1\n"; // 1도 소수다
 }
 else if (number <= 0)
 {
  cout << "에러!\n"; // 0이나 음수는 에러!
 }
 else
 {
  cout << "1 "; // 1도 포함해주는 센스
  for(i=2; i<=number; i++)
  {
   k = 0;
   for(j=2; j<=(i/2); j++)
   {
    if ( i%j == 0 )
    {
     k = 1; // 이해안되면 그냥 외워주는 센스
    }
   }
   if (k == 0) cout << i << " ";
  }
  cout << "\n"; // 마지막에 줄바꿈 해주는 센스
 }
 return 0;
}

그대로 복사-붙여넣기 했는데 안돌아가는 잡소스때문에 빡돌았다면,
그대로 복사-붙여넣기 했을때 바로바로 돌아가는 소스를 찾고 있었다면,
내 글을 본 순간 비명을 질러도 좋다.

하지만 그대로 배끼기만 하고 연구를 게을리 하면 소인배다.
Posted by 정훈승
KOREA University/C++2008. 9. 11. 20:43
#include <iostream>
using namespace std;
main()
{
 int number, i, j, k;
 cout << "입력해봐 : ";
 cin >> number;
 if (number==1)
 {
  cout << number << "은 소수가 맞다.\n";
 }
 else if (number<=0)
 {
  cout << "에러\n";
 }
 else
 {
  for(i=2; i<=number; i++)
  {
   j = number/i;
   k = number%i;
   if (j==1 && k==0 && i==number)
   {
    cout << number << "은 소수가 맞다.\n";
   }
   else if (j!=1 && k==0)
   {
    i=number;
    cout << number << "은 소수가 아니다.\n";
   }
  }
 }

 return 0;
}

소수인지 아닌지 판별하는 소스
소소는 1과 자기자신으로만 나눠지는 수다.

0이나 음수같은 것을 넣으면 에러가 나온다.
네이버나 다음까페에 떠도는 대충짠 잡소스는 꺼지라 그러고
섬세하고 배려가 넘치는 내 소스

자~ 슬슬 소스가 복잡해진다 ㅎㅎ
Posted by 정훈승
KOREA University/C++2008. 9. 10. 18:27
사용자 삽입 이미지

x에다가 가로길이, y에다가 세로길이를 주면
빗변길이 z를 구할 수 있다.

여기서 인클루드에 cmath 를 입력했는데 이건 c++에서 수학적인 함수를 이용할때 써준다.
sqrt함수가 대표적인 cmath 헤더파일에 들어있는 함수다.

세로값과 가로값을 직접 입력하고 싶다면
cin >> x 또는 y 이런식으로 쓰면 되겠지?

초반에 c++ 너무 쉽고 재밌다고 자만하지 맙시다.
Posted by 정훈승
KOREA University/C++2008. 9. 10. 18:24
사용자 삽입 이미지

흔히 n! 라고 불리는 팩토리얼 함수.
참 재밌는 C++
초반에 너무 쉽다고 자만하지 맙시다.

1부터 입력한 수까지 다 더하는 소스와 다른점이 있다면
초기값이 0이 아니라 1이라는 것이다.
왜냐하면 0을 곱해버리면 값이 0이 되기 때문이다.
Posted by 정훈승
KOREA University/C++2008. 9. 7. 01:34
사용자 삽입 이미지

나는 OpenGL을 공부한 학생이라는 자부심을 가지고
c++따위로 인해 절대 기가 죽지 말아야 할 것이다.

무조건 만점 맞는거다.

포토샵으로 상상하는 그 어떤 이미지, 웹상에 있는 모든 이미지를 표현할 수 있듯이
c++로 상상하는 그 어떤 프로그램....(이건 좀 빡쌔네)

어쨋든
위 소스는 1부터 입력한 값까지 차례대로 다 더하는 소스다.
예를 들면 10을 입력하면 55가 된다.

c++은 c와 아주 비슷하다. 그러므로 c를 알고있면 c++은 아주 재밌을 것이다.

내 개인적인 생각으로 모든 프로그래밍은 암기과목같다-_-
그냥 이해 안되면 소스를 통째로 외우는게 장땡이지

그리고 아래는 보너스

Posted by 정훈승