ëŠ�ë‚€ì � ¶
요즘 들어 ë¶€ì©� ì�¼ì�´ 늘어서 ìž ì�„ 3-4시간씩 ë°–ì—� 못잤ë�”니..
코딩ì�„ ëª»í•˜ê² ë‹¤ëŠ”..
ìž ì˜¨ë‹¤.. ì¡¸ê³ í•œì¤„ìž‘ì„±í•˜ê³ ,, ë�작성했는지 ê¹Œë¨¹ê³ .. 위ì—�ë³´ê³ ..다시한줄 ìž‘ì„±í•˜ê³ ..
그래서 소스가 엉��듯..
그런ë�° 모니터가 ì�´ìƒ�한지 앞ì�´ 안보여서 어떻게 ëª»í•˜ê² ë‹¤ëŠ”..
ì•„ìš°.. ìž ì˜¨ë‹¤.
그런ë�° ì–´ì œ 하루 그냥잤다공.. 왜 ë¬¸ì œ 답ì�´ 안올ë�¼ 오는겨?ã…Ž
코딩ì�„ ëª»í•˜ê² ë‹¤ëŠ”..
ìž ì˜¨ë‹¤.. ì¡¸ê³ í•œì¤„ìž‘ì„±í•˜ê³ ,, ë�작성했는지 ê¹Œë¨¹ê³ .. 위ì—�ë³´ê³ ..다시한줄 ìž‘ì„±í•˜ê³ ..
그래서 소스가 엉��듯..
그런ë�° 모니터가 ì�´ìƒ�한지 앞ì�´ 안보여서 어떻게 ëª»í•˜ê² ë‹¤ëŠ”..
ì•„ìš°.. ìž ì˜¨ë‹¤.
그런ë�° ì–´ì œ 하루 그냥잤다공.. 왜 ë¬¸ì œ 답ì�´ 안올ë�¼ 오는겨?ã…Ž
소스 내용안� ���.
�단 그래프가 너무 길어서(y값� 25나 나오오. 세로 25면 �반 콘솔창� 넘어버리는.. 앞으로 조그맣게 하��..ㅎㅎ)tab� 넣어 줄�기로함.
ì›�래 모습ì�„ ë³´ê³ ì‹¶ìœ¼ë©´ TAB_Yì�˜ ê°’ì�„ 1로 해주면 ë�¨.
tabê°’ì�„ 1ì�´ì™¸ì�˜ 값으로 í• ë•Œ, ì�¼ë‹¨ 반올림ì�„ 하게 í•´ë‘�었으나, ì›�래 축소 ì—°ì‚°ì�„ í• ë•ŒëŠ” ì�¼ë¶€ ê°’ì�„ ì†�실시켜야 하는ë�°, 귀찮아서 놔ë‘�ì—ˆë�”니 1ì�´í•˜ë¡œ ë‚´ë ¤ê°ˆë•ŒëŠ” 그래프ì—� ì �ì�´ 중복ë�˜ëŠ” 현ìƒ�ì�´ ìƒ�긴다는..
축소연산 가급ì � 금지!ã…Ž(특히 Xê°’..ã…Ž)
�단 그래프가 너무 길어서(y값� 25나 나오오. 세로 25면 �반 콘솔창� 넘어버리는.. 앞으로 조그맣게 하��..ㅎㅎ)tab� 넣어 줄�기로함.
ì›�래 모습ì�„ ë³´ê³ ì‹¶ìœ¼ë©´ TAB_Yì�˜ ê°’ì�„ 1로 해주면 ë�¨.
tabê°’ì�„ 1ì�´ì™¸ì�˜ 값으로 í• ë•Œ, ì�¼ë‹¨ 반올림ì�„ 하게 í•´ë‘�었으나, ì›�래 축소 ì—°ì‚°ì�„ í• ë•ŒëŠ” ì�¼ë¶€ ê°’ì�„ ì†�실시켜야 하는ë�°, 귀찮아서 놔ë‘�ì—ˆë�”니 1ì�´í•˜ë¡œ ë‚´ë ¤ê°ˆë•ŒëŠ” 그래프ì—� ì �ì�´ 중복ë�˜ëŠ” 현ìƒ�ì�´ ìƒ�긴다는..
축소연산 가급ì � 금지!ã…Ž(특히 Xê°’..ã…Ž)
근� 그래프 그리는거 파��으로 하면 금방 ��너.;
소스 ¶
~cpp
#include <iostream>
#include <windows.h>
using namespace std;
const int MIN_X=-5;
const int MAX_X=5;
const float TAB_X=1;
const float TAB_Y=0.5;
int banollim(float number)
{
//반올림하는 함수
float temp_sosu=number-(int)number;
if (temp_sosu<=-0.5 || temp_sosu>=0.5)
++number;
return number;
}
void gotoxy(int x, int y)
{
COORD Pos = {x - 1, y - 1};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
}
float function_x_to_y(float x)
{
//�번� 그림 함수
float y=x*x;
return y;
}
void make_image(int where_x, int where_y, float min_x, float max_x, float tab_x, float tab_y)
{
//앞ì—�서 부터 그리기 ì‹œìž‘í• x좌표, y좌표, x최소값, x최대값, x간격, y간격
////초기화.
int max_y=0;
int min_y=function_x_to_y(min_x);
//y� 최대 최소 구함
for (register float x=min_x; x<=max_x; x+=tab_x)
{
if (max_y<function_x_to_y(x))
max_y=function_x_to_y(x);
else if (min_y>function_x_to_y(x))
min_y=function_x_to_y(x);
}
////x,y축 �성
for (register float x=min_x; x<=max_x; ++x)
{
gotoxy(banollim(x-min_x+1+where_x),(where_y+max_y*tab_y));
printf (".");
}
for (register float y=min_y; y<=max_y; ++y)
{
gotoxy(banollim(-min_x+1+where_x),(where_y-banollim(y)*tab_y+max_y*tab_y));
printf (".");
}
////그래프 작성
for (register float x=min_x; x<=max_x; x+=tab_x)
{
gotoxy(banollim(x-min_x+1+where_x),(where_y-banollim(function_x_to_y(x))*tab_y+max_y*tab_y));
printf ("*");//(%.1f,%.1f)",x,function_x_to_y(x));
}
}
void main()
{
system("CLS");
cout << "2차함수 ì¶œë ¥ 프로그램.";
make_image( 10 , 5 , MIN_X, MAX_X,TAB_X,TAB_Y);
gotoxy(30,5);
cout << "x y";
for (register int i=0; i<MAX_X-MIN_X+1;i+=1)
{
gotoxy(30,i+6);
printf ("%3d -> %3.0f",i+MIN_X,function_x_to_y(i+MIN_X));
}
}










