Аватар для MegaZoi
3 / 0 / 1
Регистрация: 19.02.2012
Сообщений: 9

Нахождение критерия делимости

19.02.2012, 18:18. Показов 1282. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста с нахождением критерия делимости большого десятичного числа, реализованное в виде массива байт, на число 293.
Я не прошу писать за меня весь код, просто объясните пожалуйста принцип реализации данной задачи на C++.
Заранее спасибо.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.02.2012, 18:18
Ответы с готовыми решениями:

Доказательство критерия Вильсона
Теорема звучит так: Число p тогда и только тогда, когда (p-1)! + 1 \equiv 0(modp)(*). Необходимость: Пусть p - составное. Тогда p=uv,...

Выполнение критерия Коши
Подскажите пожалуйста, я правильно понимаю что если \lim_{x \to +\infty} f(x) = A то для функции f(x) выполняется критерий коши, а...

Применение в программе на с++ критерия Сильвестра
здравствуйте, есть вопрос. полностью рабочий код, только сказали что не верно понял критерий сильвестра, надо изменить. перечитал в...

1
 Аватар для MegaZoi
3 / 0 / 1
Регистрация: 19.02.2012
Сообщений: 9
11.04.2012, 13:28  [ТС]
Лучший ответ Сообщение было отмечено MegaZoi как решение

Решение

Добила эту задачу сама, вот код который получился, надеюсь еще кому-нибудь поможет
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
100
101
#include "stdafx.h"
#include "stdlib.h"
#include "string.h"
#include "iostream"
 
class PascalCriterion 
{
    unsigned int Base;
    bool Valid;
    bool Positive;
    unsigned int *Criterion;
    
public:
    PascalCriterion(unsigned int);
    bool Check(char *);
    bool CheckBuff(char *);
    void printCriterion();    
};
 
PascalCriterion::PascalCriterion(unsigned int base)
{
    unsigned int r;
    
    Base = base;
    Criterion = (unsigned int *)malloc(base*sizeof(int));
    Criterion[0] = 1;
    r = 1;
    for (int i = 1; i < base; i++)
    {
        r = (r * 10) % base;
        Criterion[i] = r;
    }
}
 
bool PascalCriterion::Check(char *buffer)
{
    unsigned long srtLength = strlen(buffer) - (Positive ? 1 : 2);
    unsigned long R = 0;
    
    for (unsigned long i = 0; i <= srtLength; i++) 
        R = R + (buffer[srtLength - i + (Positive ? 0 : 1)] - 0x30) * Criterion[i % Base];
    
    return (R % Base == 0 ? true : false);
}
 
bool PascalCriterion::CheckBuff(char *buffer)
{
    unsigned long srtLength = strlen(buffer);
    
    Valid = true;
    Positive = (buffer[0] == '-' ? false : true);
    
    for (unsigned long i = 0; i < srtLength; i++)
    {
        if ((buffer[i] > 0x39 || buffer[i] < 0x30) && !( i == 0 &&  buffer[i] == '-'))
        {
            Valid = false;
            std::cout << "Illegal char '" << buffer[i] << "'\n";
            break;
        }
    }
    return Valid;
}
 
void PascalCriterion::printCriterion()
{
    std::cout << "Base: " << Base << "\n";
    std::cout << "Criterions:";
    for (int i = 0; i < Base; i++) 
        std::cout << (i % 10 == 0 ? "\n": "\t") << Criterion[i];
    std::cout << "\n";    
}
 
 
int main(int argc, char* argv[])
{
    // 2504552993455
    unsigned int base = 293;
    char *buffer;
    PascalCriterion test(base);
    
    buffer = (char *)malloc(1000);
 
test.printCriterion();
 
do
{
std::cout << "Input number: \n";
std::cin >> buffer;
    
if (test.CheckBuff(buffer))
{        
std::cout << "\n" << buffer << "\n";
std::cout << (test.Check(buffer) ? "Can" : "Can't ");
std::cout << " be divided on " << base << "\n";        
}
else
std::cout << "Error in string!\n";
} while (buffer[0] != 'q'); 
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.04.2012, 13:28
Помогаю со студенческими работами здесь

Таблица значений критерия Фишера
Добрый день, подскажите пожалуйста, как мне посчитать или получить табличное значение критерия Фишера?

Оптимизация методом обобщеного критерия
Здравствуйте! По заданию нужно оптимизировать портфель инвестиций тремя методами. Моделью марковица и уступок сделал, нужно еще одним,...

Реализация критерия Гурвица и Сэвиджа
Основная проблема заключается в том не могу программно реализовать 2 этих критерия.

Условие выполнение критерия в запросе
Есть главная форма, там 2 текстовых поля, где задаются условия на отбор. В подчиненной форме (основана на запросе) выводится результат....

Найти уровень значимости критерия
Статистикой критерия является непрерывная случайная величина \chi, которая в условиях справедливости нулевой гипотезы имеет функцию...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Полностью асинхронный счётчик на логике (сумматорах) трёх состояний и асинхронных регистрах трёх состояний. Структура "электронный Buttom Up"
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru