0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 2
1

Таблица истинности

03.10.2014, 18:09. Показов 3492. Ответов 3
Метки нет (Все метки)

Суть задания в том, чтобы создать таблицу истинности на JavaScript. Хотелось бы услышать ваши советы, как лучше это сделать. Я пробовал через три кнопки, при щелчке на которые выскакивают готовые таблицы написанные в ручную и скрытые, чтобы появиться при щелчке. Но считаю такой подход не очень симпатичным и интересным. Прошу вашей помощи, помогите советом и, если можно примерным кодом с объяснением, чтобы я мог уловить вашу мысль. Заранее спасибо
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2014, 18:09
Ответы с готовыми решениями:

Таблица истинности
Нужно создать таблицу истинности по выражению введеному в форму. Помогите пожалуйста с алгоритмом,...

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

Таблица истинности
Здравствуйте. Помогите решить задачу по схемотехнике. Задание: Нужно сделать таблицу истинности...

Таблица истинности
Нужно составить таблицу истинности для выражения (A и B) или C. С перебором.

3
Модератор
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
03.10.2014, 18:56 2
mixa_lezhnev, можешь сделать так. По сути: 0-0;0-1;1-0;1-1 ( все возможные варианты из двух элементов ) ,есть не что иное как, что? Правильно, цифры в двоичной системе. Поэтому по ним можно пройтись циклом. Выводить можно через toString(2), возвратиться строка, которую мы что делаем? Правильно, разбиваем на части ( в нашем случае на две части ) и далее проверяем по всем логическим операндам. Вообще это можно как-нить через функцию выразить, например:

Javascript
1
2
3
4
5
6
7
8
9
10
function logAnd(x,y){
    return x && y;
};
 
for(var i = 0; i < 4;i++) {
    var x = i.toString(2)[0];
    var y = i.toString(2)[1] || 0;
    console.log(x + " && " + y + " = " + logAnd(x,y));
}
//Вместо вывода в консоль, можешь уже делать с результатом, что хочешь
Добавлено через 1 минуту
Код
0 && 0 = 0
1 && 0 = 0
1 && 0 = 0
1 && 1 = 1
/* вот что получается. Это логическое И */
1
Pure Free Digital Ghost
4573 / 1889 / 365
Регистрация: 06.01.2013
Сообщений: 4,540
03.10.2014, 19:06 3
mixa_lezhnev, таблицу истинности чего?

Для OR, например (осторожно! индусский код!):
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
var expr = (function (a,  b) {return a || b;});
function next(arr){
   for (var i = 0; i < arr.length; i++) {
      arr[arr.length - i - 1] = !arr[arr.length - i - 1];
      if(arr[arr.length - i - 1]) return;
   }
}
 
var input = [false, false];
do {
   console.log(input[0] + ' OR ' + input[1] + ' : ' + expr(input[0], input[1]));
   next(input);
} while (!input.every(function (a){return !a;}));
Добавлено через 7 минут
UPD: облагородил функцию.
1
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 2
04.10.2014, 11:30  [ТС] 4
Смотрите, у нас есть 4 инпута, то есть нужно составлять таблицу если мы ввели значения двух или более (в данном случае 3-4) инпутов. То есть у нас есть А,В,С,F и в зависимости от того, сколько значений у нас есть, на столько чисел и нужна таблица. Я представляю себе это так: четыре инпута, потом две кнопки - каждая отдельная логическая операция, после нажатия на которые появляется таблица
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.10.2014, 11:30
Помогаю со студенческими работами здесь

Таблица истинности
Нужно написать программу, которая строит таблицу истинности по любому заданному логическому...

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

Таблица истинности
Нужно высчитать F в многочлене Жегалкина

таблица истинности
Кому не сложно,помогите построить таблицу истинности ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru