콘솔 코드의 막대 다이어그램을 나타내는 주파수 프로그램을 작성하려고합니다. 문제는이 주파수를 정확하게 계산하는 방법이 정확히 무엇인지 또는 주파수 (물결 계산)에 따라 바의 높이를 정확히 지정하는 방법을 알 수 없다는 것입니다.무작위 값이있는 빈도 테이블
주파수 높이는 21로 제한되며 막대가 1에서 21로 바뀌므로 최대 막대 높이는 예를 들어 21 개의 별 (* 막대 자체의 표시 기호로 사용)입니다.
I는 주파수 (정확한 경우 비록 확인되지 않음) 지금까지이 계산은이 배열이 랜덤 값 생성 얻어 이하이다:
이 0과 21 사이의 값을 초래for (int j = 0; j < T.Length; j++)
{
T[j] = (MaxHeight* T[j])/Ber.GreatestElement(T);
Console.Write("{0,7}", T[j]);
}
를 바탕으로 내 막대가 다른 모든 빈도 값과 비교하여 특정 높이를 제공해야하는 값입니다. 예를 들어 8000은 높이가 21이고 39는 1을 가질 수 있습니다.
이 다이어그램을 표현하기 위해 나는 높이와 너비를 표시하기 위해 루프를 사용했습니다 (단, using System;
을 "기본"으로 유지하는 것을 염두에 두십시오).
for (int height= 1; height<= 21; height++)
{
for (int width= 0; width<= 10; width++)
{
if(...??)
{
Console.Write("{0,7}", bar); // string bar= ("*");
}
else
{
Console.Write("{0,7}", empty);
}
}
Console.WriteLine();
}
지금까지 I *이 AND (I는 주파수 값을 올바르게 계산되면 모를지라도) 그 주파수 값과 함께 생성 된 랜덤 값으로 채워진 필드 전체를 갖는다. 두 번째 for
에 if (...)
이 필요하다고 가정합니다.하지만 이보다 더 이상 나을 수는 없습니다.
여기에 어떤 질문이 있는지 잘 모르겠습니다. 전체 프로그램을 작성하길 원하십니까? – RedFilter
아닙니다. 내 질문은 막대의 높이입니다 다른 주파수 사이의 상대적인 비율을 나타냅니다 예를 들어, 가장 높은 값은 두 번째로 높은 값은 단지 18 막대 heigh 21 막대를 가질 수 있습니다. 어떤 방향으로이 문제를 찾아야할지 확실하지 않습니다. – Sef