С Новым годом! Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 43
1

Подбор полинома

17.09.2013, 00:44. Показов 1025. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте.
Для кодирования циклическим кодом я использую порождающий полином x^8+x^7+x^6+x^3+1.
Как мне найти длину кодового слова n, где x^n+1 при делении на порождающий полином в остатке давало бы 0.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.09.2013, 00:44
Ответы с готовыми решениями:

Вычисление полинома
Не могли бы вы посмотреть Задание: 1. Докажите правильность следующего алгоритма вычисления...

Развлечение любителям математики - экстремум полинома 3 степени
s1 = 1500; s2 = 1700; x = 0:15; a = -1; c = 0; d = s1; %b =...

Задача интерполяции методом полинома Ньютона и полинома Лагранжа
Решить задачу интерполяции методом полинома Ньютона и полинома Лагранжа 1 2 4 ...

Коэффициенты полинома
Здравствуйте, нужна помощь с данной задачей. Требуется найти и вывести коэффициенты многочлена. Как...

5
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
17.09.2013, 18:45 2
попробуйте привести выражение к более удобному виду.
0
834 / 642 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
17.09.2013, 18:49 3
Просто поделить столбиком - не вариант?
0
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 43
17.09.2013, 19:28  [ТС] 4
Цитата Сообщение от Qwertiy Посмотреть сообщение
Просто поделить столбиком - не вариант?
Проблему решил,написав программу.
Оказалось ближайшее подходящее n равно 63.
А на перебор в ручную столбиком ушло бы уйма времени.
0
834 / 642 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
17.09.2013, 19:48 5
Цитата Сообщение от Karamba Посмотреть сообщение
А на перебор в ручную столбиком ушло бы уйма времени.
Я не говорил про перебор. Просто на каждом шаге степень как бы увеличивается на 1. Но в 63 операциях ошибку посадить элементарно, так что действительно не лучший способ. А программное деление столбиком - в самый раз
0
0 / 0 / 1
Регистрация: 08.05.2012
Сообщений: 43
18.09.2013, 12:08  [ТС] 6
Возможно кому-то понадобится
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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
char g_x[111001001];
int n=0, k=0; r=0;
char sum(char a, char b){
    if(((a=='1')&&(b=='0'))||((a=='0')&&(b=='1')))return '1';
    else if(((a=='1')&&(b=='1'))||((a=='0')&&(b=='0')))return '0';
    return 0;
}
 
char* sumstr(char* a, char*b, int dlina){
    char* str = (char*)malloc((dlina)*sizeof(char));
    str[dlina]=0;
    for(int i=0; i<dlina; i++)
        str[i] = sum(a[i],b[i]);
        return str;
}
 
char* delenie(char* p, int i){
        int u=strlen(p)-strlen(g_x);
        char* gg = (char*)malloc((strlen(p))*sizeof(char));
        char* ost = (char*)calloc((r-1),sizeof(char));
    char* p1=(char*)malloc((strlen(p)+1)*sizeof(char));
    p1[strlen(p)]=0;
    ost[r]=0;
    strcpy(p1,p);   
            ost[r]=0;
        strcpy(gg, g_x);
        for(int y=strlen(g_x);y<strlen(p); y++){
            gg[y]='0';
        }
        int y=0;
        while(y<u+1){
            if(p1[0]=='1'){
                strcpy(p1,sumstr(p1,gg,(i)));
            for(int g=0; g<strlen(p1)-1; g++){
                    p1[g]=p1[g+1];
                }
                p1[strlen(p1)-1]='0';
                y++;
            }
            if((p1[0]=='0')&&(y<u+1)){
                for(int g=0; g<strlen(p1)-1; g++){
                    p1[g]=p1[g+1];
                }
                p1[strlen(p1)-1]='0';
                y++;
            }
        }
        for(int t=0; t<strlen(p1)-(u+1); t++)ost[t]=p1[t];
        
        return ost;
}
 
 
void delenie_polinov1(){
    int i,ch=0;
    for(i=21; i<256; i++){
        char* p = (char*)malloc(i*sizeof(char));
        char* ost = (char*)malloc((r)*sizeof(char));
        for(int j=i-1; j>0; j--) p[j]='0';
        p[i-1]='1'; p[0]='1';
        p[i]=0;
        strcpy(ost, delenie(p, i));
        ch=0;       
        for(int t=0; t<strlen(ost); t++){
            if(ost[t]!='0')ch++;
        }
        if(ch==0){ 
            printf("n = %d ",i-1);
            printf("podhodyaschii ostatok: %s \n",ost);ch=0;}
        
        else {
            printf("n = %d ",i-1);
            printf("ostatok ne podhodit: %s \n", ost);  
             }
    }
}
 
int main(int argc, char *argv[])
{
    strcpy(g_x,"111001001");
    r=strlen(g_x)-1;
    printf("porogdayuchiy polinom g_x: %s \n", g_x);
    delenie_polinov1();
    getchar();
    return 0;
}
0
18.09.2013, 12:08
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.09.2013, 12:08
Помогаю со студенческими работами здесь

Корни полинома
Помогите пожалуйста найти корни алгебрарического уравнения f(x)=0 как корни полинома и построить...

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

Решение полинома
Помогите реализовать программу решения данного полинома, уже всю голову сломал. Честно не знаю,...

Разложение полинома
Разложить полином на простые дроби и вычислить производную знаменателя,полученного при разложении...

Представление полинома
Представляя полином как массив коэффициентов {2,-6,5} =&gt; 2x-6y+5z {1,-1,0} =&gt; x-y+(?) {12,0,-6}...

Коэффициенты полинома
подскажите пожалуйста, каким методом нужно считать коэффициенты? как составить программу для их...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru