|
O’zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnoligiyalari universiteti qarshi filiali
|
bet | 3/4 | Sana | 24.05.2024 | Hajmi | 0,99 Mb. | | #251994 |
Bog'liq ALGORITM MUSTAQIL ISH 23. Asosiy ma'lumotlarni topish: Furye ko'rsatkichlardan foydalanib asosiy ma'lumotlarni topish uchun inverst Furye transformatsiyasi qo'llaniladi. Bu transformatsiya orqali asosiy funksiya yoki ma'lumotlar ketma-ketligi qayta ishlovchi yechimlar topiladi. - 3. Asosiy ma'lumotlarni topish: Furye ko'rsatkichlardan foydalanib asosiy ma'lumotlarni topish uchun inverst Furye transformatsiyasi qo'llaniladi. Bu transformatsiya orqali asosiy funksiya yoki ma'lumotlar ketma-ketligi qayta ishlovchi yechimlar topiladi.
- Furye usuli raqamli ma'lumotlarni qayta ishlovchi, signal analizi, tarmoq texnologiyalari va boshqa sohalarda keng qo'llaniladi. Bu usul yordamida ma'lumotlarni raqamli shaklda olingan Furye ko'rsatkichlarga aylanib, ularni tahlil qilish va keyinchalik asosiy ma'lumotlarni topish mumkin.
- Furye usuli, ma'lumotlarni raqamli tarzda qayta ishlash uchun foydalaniladigan bir metod. Bu usulda, ma'lumotlar sinf funksiyonlarga ajratiladi va ularning furie o'lchovlariga o'tkaziladi. Keyin, furie o'lchovlari orqali asal ma'lumotlar qayta tiklanadi.
- Quyidagi misolni ko'ramiz:
- Berilgan ma'lumotlar: {2, 4, 6, 8}
- Bu ma'lumotlarni Furye usuli orqali qayta ishlash uchun quyidagi misol dasturini C++da yozamiz:
#include - #include
- #include
- #include
- #include
- using namespace std;
- void computeDFT(vector>& data) {
- int N = data.size();
- vector> result(N, 0);
- for (int k = 0; k < N; k++) {
- for (int n = 0; n < N; n++) {
- complex expVal = polar(1.0, -2 * M_PI * k * n / N);
- result[k] += data[n] * expVal; } }
- data = result; }
- void computeIDFT(vector>& data) {
- int N = data.size();
- vector> result(N, 0);
- for (int n = 0; n < N; n++) {
- for (int k = 0; k < N; k++) {
- complex expVal = polar(1.0, 2 * M_PI * k * n / N);
- result[n] += data[k] * expVal; }
- result[n] /= N; }
- data = result; n}
- int main() {
- vector> data = {{2, 0}, {4, 0}, {6, 0}, {8, 0}};
- computeDFT(data);
- cout << "Furye o'lchovlar: ";
- for (const auto& val : data) {
- cout << val << " "; }
- cout << endl;
- computeIDFT(data);
- cout << "Asil ma'lumotlar: ";
- for (const auto& val : data) {
- cout << val.real() << " "; }
- cout << endl;
- return 0; }
|
|
Bosh sahifa
Aloqalar
Bosh sahifa
O’zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnoligiyalari universiteti qarshi filiali
|