Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
7 / 7 / 0
Регистрация: 23.10.2013
Сообщений: 52

Доказательство алгоритма

19.03.2014, 23:51. Показов 943. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как доказать методом математической индукцийй алгоритмы программы, которая выполняет бинарные операции со множествами
пример программы
JavaScript
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Truth Table Generator</title>
    <style type="text/css">
    </style>
</head>
<body>
<script>
function result(){
    var r = document.getElementById('m1').value;
    var c = document.getElementById('m2').value;
    var i,j;
    var pe = document.getElementById('pe').checked;
    var ob = document.getElementById('ob').checked;
    var raz = document.getElementById('raz').checked;
    var simraz = document.getElementById('simraz').checked;
    var dp = document.getElementById('dp').checked;
    if (pe == 1) {  
        var mass = [];
        for (i=0;i<r.length;i=i+2) {
            for (j=0;j<c.length;j=j+2) {
                if(r[i]==c[j]) {
                    mass.push(r[i]);
                }
            }
        }
    }
    var p = 0;
    if (ob == 1) {
        var p = 0;
        var mas = [];
        var v = r.split(',');
        var b = c.split(',');
        for(i=0;i<v.length;i++) {
            mas.push(v[i]);
        }
        for(i=0;i<b.length;i++) {
            for(j=0;j<v.length;j++) {
                if(b[i] == v[j])
                    p++;
            }
            if (p == 0)
                mas.push(b[i]);
            p=0;
        }
        var mass = mas.join(',');    
    }
    if (raz == 1) {
        var p = 0;
        var mas = [];
        var v = r.split(',');
        var b = c.split(',');
        for(i=0;i<v.length;i++) {
            for(j=0;j<b.length;j++) {
                if(v[i] == b[j]) {
                    p++;
                }
            }
            if (p==0)
                mas.push(v[i]);
            p=0;
        }
        var mass = mas.join(',');
    }
    if (simraz == 1) {
        var p = 0;
        var mas = [];
        var v = r.split(',');
        var b = c.split(',');
        for(i=0;i<v.length;i++) {
            for(j=0;j<b.length;j++) {
                if(v[i] == b[j]) {
                    p++;
                }
            }
            if (p==0)
                mas.push(v[i]);
            p=0;
        }
       for(i=0;i<b.length;i++) {
            for(j=0;j<v.length;j++) {
                if(b[i] == v[j]) {
                    p++;
                }
            }
            if (p==0)
                mas.push(b[i]);
            p=0;
        }
    var mass = mas.join(',');
    }
    if (dp == 1) {
        var mas = [];
        var v = r.split(',');
        var b = c.split(',');
        for (i=0;i<v.length;i++) {
            for (j=0;j<b.length;j++) {
                mas.push('('+v[i]+','+b[j]+')');
            }
        }
        var mass = mas.join(',');
    }
    document.getElementById('b').innerHTML = mass;
}
</script>
    <input type="text" id="m1"/> <br>
    <input type="text" id="m2"/><br>
    <input type="radio" checked="checked" name="raz" id="pe" />Пересичение<br>
    <input type="radio" name="raz" id="ob" />Объединение<br>
    <input type="radio" name="raz"id="raz" />Разность<br>
    <input type="radio" name="raz" id="simraz" />Симметрическая разность<br>
    <input type="radio" name="raz" id="dp" />Декартово произведение<br>
    <div style="cursor:pointer;color:green" onclick="result()">Построить</div>
    <p id="b"> </p>
</body>
</html>
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.03.2014, 23:51
Ответы с готовыми решениями:

Доказательство результата алгоритма
Подскажите, пожалуйста, как в общем случае доказывается результат алгоритма? Например, в данном случае очевидно, что данный алгоритм...

Доказательство свойств алгоритма
Приветствую, уважаемые! Остро встал следующий вопрос: доказательства того, что разработанный алгоритм является ничем иным как алгоритмом....

Доказательство корректности алгоритма сортировки вставкой
В учебнике дается доказательство алгоритма вставки через математическую индукцию Как понять эту строку : A’ = (A, A, A) ? ...

2
294 / 265 / 48
Регистрация: 09.04.2013
Сообщений: 1,038
20.03.2014, 10:16
Математическая индукция — метод математического доказательства, используется чтобы доказать истинность некоторого утверждения для всех натуральных чисел. Для этого сначала проверяется истинность утверждения с номером 1 — база (базис) индукции, а затем доказывается, что, если верно утверждение с номером n, то верно и следующее утверждение с номером n + 1 — шаг индукции, или индукционный переход.
Источник

1) доказать, что утверждение верно для начального случая, возможно если 1, 2, 3-й случаи разные, то доказать их все.
2) доказать, что исходя из предположения что утверждение верное для N-1, то из этого следует что что утверждение для N также будет верно.
вместо N-1 и N, можно использовать N и N+1 или другие, не суть важно, главное чтобы номер шага для доказательства был следующим от номера шага, истинность которого принимаем на веру.

Добавлено через 17 минут
Извините, но что-то я не очень понимаю как можно доказывать правильность операций над множествами через мат. индукцию...
Мат. индукция применяется, например, когда у нас есть некая формула или последовательность где явно или не явно можно использовать некоторое число N для перечисления вариантов.
1
7 / 7 / 0
Регистрация: 23.10.2013
Сообщений: 52
20.03.2014, 10:54  [ТС]
я и сам не понимаю как это сделать, но такое вот уж задание
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.03.2014, 10:54
Помогаю со студенческими работами здесь

Доказательство корректности алгоритма и вычисление вычислительной сложности
Всем привет, Мне предстоит решить/написать работу по теме &quot;Алгоритмы для реорганизации и оптимизации вебсайтов&quot;. И если...

Доказательство корректности алгоритма Краскаля "своими словами"
Хочу придумать доказательство корректности данного алгоритма но своими словами. Ведь на интуитивном уровне понятно что он будет работать...

Алгоритмические задания на доказательство
1)Доказать, что предикат Pdn(x) &quot;x делится на n&quot; примитивно-рекурсивен для любого n. 2)Доказать, что предикат Pdn,m(x) &quot;x...

Понятие трудоёмкости алгоритма. Понятие эффективного алгоритма
Понятие трудоёмкости алгоритма. Классификация алгоритмов на основе функции трудоёмкости. Методика анализа трудоёмкости основных...

Доказательство сложности расширенного алгоритма Евклида
Здравствуйте. Необходимо доказать, что сложность расширенного алгоритма Евклида равна О(log2n)2, где n = max(|a|, |b|). Спасибо.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru