Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: JavaScript: перевод числа из десятичной в двоичную систему счисления

Сообщения:  [1-10]    [11-20]  [21-21] 

 
 автор: даша   (25.04.2011 в 13:51)   письмо автору
 
   для: cheops   (25.04.2011 в 13:15)
 

ой, хорошо было бы попыстрее:)

  Ответить  
 
 автор: cheops   (25.04.2011 в 13:15)   письмо автору
 
   для: даша   (25.04.2011 в 08:19)
 

Если будет время обязательно доделаю (уж больно задача объемная получается).

  Ответить  
 
 автор: даша   (25.04.2011 в 08:19)   письмо автору
 
   для: даша   (23.04.2011 в 06:33)
 

Извините, пожалуйста!)) а вы сможете сделать, а то оч срочно надо....

  Ответить  
 
 автор: даша   (23.04.2011 в 06:33)   письмо автору
 
   для: cheops   (22.04.2011 в 17:53)
 

вместо знаков вопроса будут 1 или 0, и мы должны проверить правильно введено или нет, а формула генерируется случайным образом при нажатии кнопки, "&"-конъюнкция, "v"-дизъюнкция, "->"-импликация, "<->"-эквивалентность,"+"-сложение по модулю два, "-"-отрицание.

  Ответить  
 
 автор: cheops   (22.04.2011 в 17:53)   письмо автору
 
   для: даша   (22.04.2011 в 17:03)
 

Все-равно не понятна логика выражения х1 <-> х2, для неё генерируется форма вида
0 0 = ?
0 1 = ?
1 0 = ?
1 1 = ?
Что будет вместо знаков вопросов, т.е. аргументы должны совпадать или XOR должно вычислять? Просто заполните правильными ответами хотя таблицу для 2-х элементов (лучше, конечно, для 3-х).

  Ответить  
 
 автор: даша   (22.04.2011 в 17:03)   письмо автору
335.7 Кб
 
   для: cheops   (22.04.2011 в 16:01)
 

надеюсь я правильно выразила, что мне нужно:):):)

  Ответить  
 
 автор: cheops   (22.04.2011 в 16:01)   письмо автору
 
   для: даша   (22.04.2011 в 15:42)
 

А формула какая? Вот допустим вводим 4, что нужно вводить в строке со следующими значениями, чтобы проверка прошла успешно?
0    1    1    1
PS Такой объемный код наверное уже лучше прикреплять в виде файла.

  Ответить  
 
 автор: даша   (22.04.2011 в 15:42)   письмо автору
 
   для: cheops   (19.04.2011 в 09:52)
 

Здравствуйте!)))) помогите мне пожалуйста еще разок)
мне вот нужно: допустим пользователь вводит число переменных ему выдается формула и таблица истинности, он должен по данной формуле заполнить ее, и нажав на кнопку "проверить", если неправильно ввел, то ячейка закрашивается в красный цвет, а правильно остается без изменения...
вот код.
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title></title>
</head>
<body>
<script type="text/javascript" language="javascript">

var res;
var res1;
var res2;
var res3;
var res4;

var operat;
var operat1;
var operat2;
var operat3;
res = new Array();
res[0] = "-x <sub>1</sub>";
res[1] = "x <sub>1</sub>";

res1 = new Array();
res1[0] = "-x <sub>2</sub>";
res1[1] = "x <sub>2</sub>";

res2 = new Array();
res2[0] = "-x <sub>3</sub>";
res2[1] = "x <sub>3</sub>";

res3 = new Array();
res3[0] = "-x <sub>4</sub>";
res3[1] = "x <sub>4</sub>";

res4 = new Array();
res4[0] = "-x <sub>5</sub>";
res4[1] = "x <sub>5</sub>";


opers = new Array();
opers[0] = "&";
opers[1] = "v";
opers[2] = "+";
opers[3] = "->";
opers[4] = "<->";

function formula()
{
var n = document.form1.peremen.value;
a=parseInt(Math.random()*2);
b=parseInt(Math.random()*2);
c=parseInt(Math.random()*2);
d=parseInt(Math.random()*2);
e=parseInt(Math.random()*2);
operat=parseInt(Math.random()*5);
operat1=parseInt(Math.random()*5);
operat2=parseInt(Math.random()*5);
operat3=parseInt(Math.random()*5);
if (n!=2 && n!=3 && n!=3 && n!=4 && n!=5)
{alert('Введите число от 2 до 5');
document.form1.peremen.value="";
}
else {
if (n==2)
{
document.getElementById("a").innerHTML = res[a];
document.getElementById("operat").innerHTML = opers[operat];
document.getElementById("b").innerHTML = res1[b];
document.getElementById("operat1").innerHTML ='';
document.getElementById("c").innerHTML = '';
document.getElementById("operat2").innerHTML = '';
document.getElementById("d").innerHTML ='';
document.getElementById("operat3").innerHTML ='';
document.getElementById("e").innerHTML = '';
}
if (n==3)
{
document.getElementById("a").innerHTML = res[a];
document.getElementById("operat").innerHTML = opers[operat];
document.getElementById("b").innerHTML = res1[b];
document.getElementById("operat1").innerHTML = opers[operat1];
document.getElementById("c").innerHTML = res2[c];
document.getElementById("operat2").innerHTML = '';
document.getElementById("d").innerHTML = '';
document.getElementById("operat3").innerHTML ='';
document.getElementById("e").innerHTML = '';
}
if (n==4)
{
document.getElementById("a").innerHTML = res[a];
document.getElementById("operat").innerHTML = opers[operat];
document.getElementById("b").innerHTML = res1[b];
document.getElementById("operat1").innerHTML = opers[operat1];
document.getElementById("c").innerHTML = res2[c];
document.getElementById("operat2").innerHTML = opers[operat2];
document.getElementById("d").innerHTML = res3[d];
document.getElementById("operat3").innerHTML = '';
document.getElementById("e").innerHTML = '';
}
if (n==5)
{
document.getElementById("a").innerHTML = res[a];
document.getElementById("operat").innerHTML = opers[operat];
document.getElementById("b").innerHTML = res1[b];
document.getElementById("operat1").innerHTML = opers[operat1];
document.getElementById("c").innerHTML = res2[c];
document.getElementById("operat2").innerHTML = opers[operat2];
document.getElementById("d").innerHTML = res3[d];
document.getElementById("operat3").innerHTML = opers[operat3];
document.getElementById("e").innerHTML = res4[e];
}

function operation(type,x,y)
{
switch(type){
case 0: return con(x,y);
case 1: return diz(x,y);
case 2: return imp(x,y);
case 3: return ekv(x,y);
case 4: return slg(x,y);
}
}

function con(x,y)
{
return x&&y;
}

function diz(x,y)
{
return x||y;
}

function imp(x,y)
{
if (x==1 && y==0)
return 0;
else
return 1;
}

function ekv(x,y)
{
return x===y;
}

function slg(x,y)
{
return x^y;
}

function perevod(dec)
{
var bin = "";
do
{
if (dec & 1) bin += '1';
else bin += '0';
dec = dec >> 1;
}
while(dec);
return bin;
}
var table = document.getElementById('tablicta');
while (table.childNodes.length >= 2)
{
oneChild = table.lastChild;
table.removeChild(oneChild)
}

var tr = document.createElement('TR');
table.appendChild(tr);
s = "";
for(i=1;i<=n;i++) {
th = document.createElement('TH');
txt1 = document.createTextNode("x");
sub = document.createElement('SUB');
txt2 = document.createTextNode(i);
tr.appendChild(th);
th.appendChild(txt1);
sub.appendChild(txt2);
th.appendChild(sub);
s = s + "x<sub>"+i+"</sub>,";
}

th = document.createElement('TH');
tr.appendChild(th);
th.innerHTML = "f("+s+")";

var numbin = 0;

for(j=0;j<Math.pow(2,n);j++)
{
var x = new Array();
var tr = document.createElement('TR');
table.appendChild(tr);

x = perevod(j);
for(i=1;i<=n;i++) {
td = document.createElement('TD');
numbin = parseInt(x[n-i]);
if(isNaN(numbin))
numbin = 0;
txt = document.createTextNode(numbin);
tr.appendChild(td);
td.appendChild(txt);
}
td = document.createElement('TD');
inp = document.createElement('INPUT');
inp.setAttribute ("name","a["+j+"]");
tr.appendChild(td);
td.appendChild(inp);
}}
}


function proverka(){
}

</script>
<form name="form1">
<p><b>Введите число переменных</b></p>
<input type="text" name="peremen" size=5>
<input type="button" value="Формула" onClick="formula()">
<table cellspacing="10">
<tr><td id="a"> </td>
<td id="operat"> </td>
<td id="b"> </td>
<td id="operat1"> </td>
<td id="c"> </td>
<td id="operat2"> </td>
<td id="d"> </td>
<td id="operat3"> </td>
<td id="e"> </td>
</tr>
</table>
<p><b>Для данной формулы постройте таблицу истинности </b></p>

<p><input type="button" value="Проверка" onClick="proverka()"></p>

<table cellspacing="10" border="1">
<tbody id="tablicta">
</tbody>
</table>


</form>
</body>
</html>

  Ответить  
 
 автор: cheops   (19.04.2011 в 09:52)   письмо автору
 
   для: даша   (19.04.2011 в 08:27)
 

Помимо самой функции dec2bin(), нужно заменить строку
binnum = parseInt(bin[n - i]);
на
binnum = parseInt(bin[i]);

  Ответить  
 
 автор: даша   (19.04.2011 в 08:27)   письмо автору
 
   для: cheops   (18.04.2011 в 20:52)
 

спасибо))) а вот нужно мне как-то тогда связать с предыдущем кодом...???

  Ответить  

Сообщения:  [1-10]    [11-20]  [21-21] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования