Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
11 / 0 / 0
Регистрация: 21.05.2011
Сообщений: 49

Автокорреляционная функция, увеличение кол-во значений

01.11.2011, 14:16. Показов 2542. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Я написал программу для 4 значений, для нахождения автокорреляционной функции, но вот я чет не понимаю как же сделать на 10 значений: вот код
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
namespace ConsoleApplication9
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Сколько последовательностей сгенерировать и проверить? ");
            int coll = int.Parse(Console.ReadLine());
            int prov = 0;
            do
            {
                int[] mas = new int[4];
                Random a = new Random();
                for (int i = 0; i < 4; )
                {
                    mas[i] = a.Next(-1, 2);
                    if (mas[i] == 0)
                    {
                        continue;
                    }
                    i++;
                }
                Console.Write("Для последовательности ");
                foreach (int m in mas)
                    Console.Write("{0} ", m);
                Console.Write(" характерно");
 
                string s1 = "";
                string s2 = "";
                for (int i = 0; i < mas.Length; i++)//заносим нашу последовательность в строку( нужно чтобы сдвигать)
                {
                    s1 += mas[i];
                    s2 += mas[i];
                }
                int col = 0;// переменная для подсчета нашей суммы 
                int n = 0;// для кол-ва сдвигов
                string s3, s4;// переменные для преобразования наших чисел 
                do// открываем наш цикл для обработки последовательности сюда входит сдвиг
                {
 
 
                    char[] cha = s1.ToCharArray();// разлаживаем нашу строку на массив символов чтобы последовательно считывать числа(но будут считатся символ "-" как отдельный символ
                    char[] cha2 = s2.ToCharArray();
                    int[] mas3 = new int[cha.Length];// массивы для хранения чисел
                    int[] mas4 = new int[cha.Length];
                    for (int i = 0; i < cha.Length; i++)// заносим наше число в массив уже сдвинутой строки
                    {
 
                        s3 = cha[i].ToString();//преабразуем наши символы в строку - нужно чтобы мы получили число, 
                        if (s3 == "-")// если наш символ "-"
                        {
                            s3 = "-1";// то мы записываем в нашу строку -1 и увеличиваем наш счетчик на 2,(т.к -1 это 2 символа у нас)
                            mas3[i] = int.Parse(s3);// заносим наше число в массив
                            i++; continue;
                        }
 
 
                        mas3[i] = int.Parse(s3);// если же у нас число без знака сразу его сюда записываем
                    }
                    for (int i = 0; i < cha.Length; i++)// все тоже самое
                    {
                        s4 = cha2[i].ToString();
                        if (s4 == "-")
                        {
                            s4 = "-1";
                            mas4[i] = int.Parse(s4);
                            i++; continue;
                        }
 
                        mas4[i] = int.Parse(s4);
                    }
                    for (int i = 0; i < mas3.Length; i++)// теперь просто сравниваем наши числа 
 
                        col += mas3[i] * mas4[i];
 
                    Console.Write(" " + col);
                    Console.Write(" ");
 
 
 
                    n++;
                    col = 0;
                    s1 = s1 + "0";// добавляем 0-в в конец
                    s2 = "0" + s2;//добавляем 0-в в начало соотв.
                }
                while (n != 4);
                prov++;
                Console.WriteLine("");
 
                Console.WriteLine("\nДля формирования новой последовательности нажмите любую клавишу");
                Console.WriteLine("");
                Console.ReadKey();
            }
 
            while (prov != coll);
            Console.ReadKey();
        }
    }
}
Добавлено через 4 минуты
Автокорреляционная функция: например у нас есть последовательность из 1 и -1, я буду обозначать 1 как +, а -1 как -: вот что делает программа
сгенерировала:
+++-
далее домножаем на саму себя
+++-
+++-
------
++++ = 4
далее сдвигаем
+++-
+++-
--------
0++-0 = 1
сдвигаем на 2 позиции
+++-
+++-
--------
00+-00 = 0
сдвигаем последний раз
+++-
+++-
---------
000-000 = -1
Вот у меня вопрос а как теперь немножко переделать, что бы он считал десять числел? наапример 11-111-1-11-11
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.11.2011, 14:16
Ответы с готовыми решениями:

Автокорреляционная функция
Здравствуйте! Есть массив (String) в виде &quot;1&quot; и &quot;0&quot;. Т.е. последовательность бит типа: 110100001111101000011111010000111....и т.д. Нужно...

Автокорреляционная функция
Добрый день! Есть сигнал first_step=0; step_t=0.01; last_step=1; N_=101; t=first_step:step_t:last_step; y= ...

Автокорреляционная функция
Помогите создать программу на Паскале по этой теме: Сгенерировать случайную последовательность случайных чисел в диапазоне 0..2000: ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2011, 14:16
Помогаю со студенческими работами здесь

Автокорреляционная функция С/А-кода
Добрый день) Сформировала с/а-код и написала алгоритм который строит автокор. функцию, ставя в соответствие каждому сдвигу разность...

Автокорреляционная функция дискретного сигнала
Помогите, пожалуйста, понять как работает автокорреляционная функция дискретного сигнала. Я пытался разобраться через википедию, но...

Автокорреляционная функция синусоидального сигнала
Подскажите пожалуйста почему не правильно строится автокорреляционная функция синусоидального сигнала, с помощью функции XCORR??? Почему...

Автокорреляционная функция и частота основного тона (ЧОТ)
Добрый день! Пытаюсь написать выделитель ЧОТ с приминением АКФ, но когда подаю гармонический сигнал (200Гц), то значение ЧОТ...

Увеличение/уменьшение кол-ва граней в 3d графиках
clear, clc M = ; X = M(1,2:end); Y = M(2:end,1); Z = M(2:end,2:end); surf(X,Y,Z,'FaceAlpha',0.5) grid on


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru