Directions-Инициализация массива с петлей и формулы
В области, например, класс переменных:
- объявить целочисленную переменную для хранения количества банкнот, установить его до 13.
- Объявите и выделите массив объектов GuitarString размером 13. Примечание. Убедитесь, что вы удалили исходные переменные экземпляра (stringA и stringC).
- Объявите массив примечаний типа String, размер 13.
- Инициализировать массив ноты со следующими 13 значений: "С", "C#", "Д", "D #", "Е", "F", "F #", "Г", "G #", "A #" "А", "Б", "Н" В основном методе:
Присвоить массив GuitarString в главной для всей октавы. Вы должны использовать цикл, а не тринадцать отдельных операторов. Не забудьте выделить каждую гитарную строчку новой. Используйте следующую формулу для расчета частоты каждой строки: double frequency = 440.0 * Math.pow (1.05956, index - 9); p12.strings [index] = new GuitarString (частота);
Здесь отображение для индекса показано выше: 0 - средний С ("С") 1 - C# выше среднего C ("C#") 2 - D выше среднего C ("D") 3 - D # выше среднего C ("D #") 4 - E выше среднего C ("E") 5 - F над средой C ("F") 6 - F # выше среднего C ("F #") 7 - G выше среднего C («G») 8 - G # выше среднего C («G #») 9 - A выше среднего C («A») 10 - A # выше среднего C («A #») 11 - B выше среднего C ("B") 12 - высокий C ("H")
Вышеуказанные ноты представляют собой одну октаву фортепиано от средней С до высокой С
Мой code-
public class P12 {
int numNotes = 13;
GuitarString[] GuitarString = new GuitarString[13];
public String[] strings = new String[]{"C", "C#","D","D#","E","F","F#","G","G#","A","A#","B","H"};
public static void main(String[] args) {
// Instantiate object
P12 p12 = new P12();
for(int index = 0; index <= p12.numNotes; index++){
double frequency = 440.0 * Math.pow(1.05956, index - 9);
p12.strings[index] = new GuitarString(frequency);
}
Мой вопрос, как я могу инициализировать массив GuitarString внутри цикла и используя данный формула?
Похоже, что ваш инструктор хочет, чтобы создать новый тип объекта из GuitarString, чтобы не создать массив строк – frenchDolphin
Когда я изменить его, чтобы сделать новый объект, я получаю: " Тип несоответствия: невозможно преобразовать из GuitarString в String " – OC22
Несвязанный побочный эффект: я понимаю, что ваш инструктор говорит, что нота H равна среднему C, но H фактически эквивалентна примечанию B: http: //en.wikipedia .org/вики/B_% 28musical_note% 29. На всякий случай, когда на этот пост попадают какие-либо музыканты. –