인프런 커뮤니티 질문&답변
25x25 에서 안멈추고 반복되는거같은데 한번 봐주실수있나요??
작성
·
313
0
using System;
namespace algoritm
{
class Program
{
static void Main(string[] args)
{
// 커서 끄기
Console.CursorVisible = false;
// 시간측정
const int WAIT_TICK = 1000 / 30;
const char SIRCLE = '\u25CF';
int lastTick = 0;
while (true)
{
#region 프레임 관리
// 프레임 관리
// 시스템 시작이후 경과시간 단위ms
int currentTick = System.Environment.TickCount;
// 만약 경과시간이 1/30 초 보다 작다면
if (currentTick - lastTick < WAIT_TICK)
continue;
lastTick = currentTick;
#endregion
// 입력
// 사용자의 키보드 및 마우스 input
// 로직
// 입력에 따라 로직 실행
// 렌더링
// opengl 등에따라 그래픽 렌더링
Console.SetCursorPosition(0, 0);
for (int i = 0; i < 25; i++)
{
for (int j = 0; j < 25; j++)
{
Console.ForegroundColor = ConsoleColor.Cyan;
Console.Write(SIRCLE);
}
Console.WriteLine();
}
}
}
}
}
강사님 화면보고 작성한 코드인데 25x25에서 멈추지않고 계속 생성해서 여쭤봅니다!
퀴즈
실행 시간 측정 대신 Big O 표기법을 사용하는 주된 이유는 무엇일까요?
알고리즘의 정확한 속도를 밀리초 단위로 측정하기 위해서
컴퓨터 환경이나 데이터 크기에 상관없이 알고리즘의 성능 추세를 객관적으로 비교하기 위해서
코드 라인 수를 줄여 프로그램 용량을 최적화하기 위해서
특정 하드웨어에서의 최대 성능 한계를 파악하기 위해서
답변 2
0
갑자기 생각났는데 혹시 콘솔창을 아주 작게 켜놓으신거 아닌지 확인 바랍니다.
단순 알고리즘 실습 용도이기 때문에 각종 예외 처리는 되어 있지 않습니다.
그리고 그 문제와 무관하지만,
틱 관련 코드도 아래와 같이 수정 바랍니다.
int currentTick = Environment.TickCount & Int32.MaxValue;
https://www.inflearn.com/questions/78754
0






콘솔창이 작아서 그런거같아요 감사합니다! 이제 고정되어있어요!