Wie kann ich die folgende Funktion in C# implementieren?Wie kann ich die Piano Key Frequenzfunktion in C# implementieren?
Antwort
double F = 440.0 * Math.Pow(2.0, (n-49.0)/12.0);
+1 für den Aufruf von Math.Pow nur einmal – ram
Sie haben Recht, die Gleichung kann zu Ihrer Antwort vereinfacht werden, aber ich habe eine direkte Implementierung durchgeführt. –
440 * Math.Pow(Math.Pow(2, 1.0/12), n - 49)
+1, strikt nach Punkt –
440 * 12th root of 2 raised to n-49
= 440 * (2^1/12) ^(n-49)
= 440 * 2^(n/12)/2^(49/12)
= 440 * 2^(n/12)/(2^4 * 2^1/12)
= 440 * (1/2^4) * 2^((n-1) /12)
= 8 * 55 * (1/16) * 2^((n-1) /12)
= 27.5 * 2^((n-1) /12)
so ....
double d = 27.5 * Math.Pow(2, (n-1)/12.0)
Und da 12. Wurzel aus 2 = 1.0594630943592952645618252949463, dann
double d = 27.5 * Math.Pow(1.0594630943592952645618252949463, (n-1))
so ...
double d = 27.5 * Math.Pow(1.059463094359295, (n-1));
Ich hoffe, dass, wenn diese Lösung verwendet wird, ein Kommentar für die Wartbarkeit gestellt wird. –
Sind Sie sicher, dass Mathe richtig ist? Versuchen Sie n = 49. Sie sollten 440 bekommen. –
guten Fang 12. Wurzel von 2 = 1.0594630943592952645618252949463, nicht. 083333333333333 ... Ich lief Windows calc schlecht ... Ich habe bearbeitet, um zu korrigieren. –
http://www.codeproject.com/script/Articles/ArticleVersion.aspx?aid=339638&av=501750
string funcion= "440*((2)^(1/12))^(X-49)";
X=4
double FX= GetValueFunc(4);
;) jeje
- 1. Die Anwendung PIANO
- 2. Wie kann ich IRandomAccessStream in C# implementieren?
- 3. Wie kann ich Metaklassen in C++ implementieren?
- 4. Wie kann ich die Iterable-Schnittstelle implementieren?
- 5. Wie kann ich Event-Prozessoren mit DynamicObject in C# implementieren
- 6. In C# wie kann ich das Befehlsdesignmuster richtig implementieren?
- 7. Wie kann ich 'Tee' programmgesteuert in C implementieren?
- 8. Wie kann ich diese Beziehung zwischen Datenrasterzeilen in C# implementieren?
- 9. Wie kann ich einen Generator in C++ implementieren?
- 10. Wie kann ich die Zeichenligatur in Glyphs implementieren?
- 11. Wie kann ich Folgendes implementieren?
- 12. Wie kann ich HATEOAS in Haskell implementieren?
- 13. Wie kann ich die Option "Ziehen" in Cocos2d implementieren?
- 14. Wie kann ich die Größenänderung in Javascript implementieren?
- 15. Wie kann ich die DOM-Manipulation in Angular richtig implementieren?
- 16. Wie kann ich in Django die Schaltfläche "Alle auswählen" implementieren?
- 17. Wie konfiguriere ich die Public-Key-Authentifizierung?
- 18. Wie kann ich diese Logik implementieren
- 19. Wie implementieren Entscheidungsmatrix in C#
- 20. Wie kann ich Faltung im Frequenzbereich implementieren?
- 21. Kann ich eine Schnittstelle mit einer Unterklasse in C# implementieren?
- 22. Implementieren einer Prioritätswarteschlange, die in C++ übersprungen werden kann
- 23. Multiple Key Map in C++
- 24. Java MIDI - Daten vom Piano holen?
- 25. Kann ich die Rendite für IEnumerable-Funktionen in VB.NET implementieren?
- 26. Wie kann ich asynchrones Muster für die Speichermethode in C# implementieren?
- 27. Wie kann ich java.awt.Composite effizient implementieren?
- 28. Wie kann ich einen Tastendruck (Key-Logging) in Linux erfassen?
- 29. Warum sollte ich ICloneable in C# implementieren?
- 30. Wie kann ich meine eigene generische Sammlung in Java implementieren?
Ich schlage vor, Sie machen Sie sich mit System.Math.Pow - http://msdn.microsoft.com/en-us/library/system .math.pow (VS.71) .aspx - dies ermöglicht Ihnen, sowohl Exponenten als auch n-te Wurzeln zu behandeln. –
Baue ein Klavier, bist du? –
Wie ist das ein Klavier? Will jemand erklären pls? –