function Automaton(substr) {
this.delta = [{"a":0, "b":1}, {"a":1, "b":0}];
this.state = 0;
this.search = function(str) {
this.state = 0;
for (var i = 0; i < str.length; i++) {
this.state = this.delta[this.state][str.charAt(i)];
WSH.Echo(this.state);
}
}
}
var a = new Automaton("...");
a.search("ababbbba");
[1]
Документация
Полезные утилиты
- cmd
- notepad
- javascript lint
- beautifier
Автомат
Автомат по данному курсу можно получить сдав в срок
- все задачи
- отчет по задачам поиска подстроки в строке
- контрольную
- коллоквиум
Source
<html>
<head>
<title>Snippet for "Hamming code"</title>
<style>
body { padding: 5px; background-color: lightgoldenrodyellow }
</style>
<script type="text/javascript">
function copy() {
var input = document.getElementById('input');
var output = document.getElementById('output');
output.value = input.value;
}
</script>
</head>
<body>
<h4>Snippet for "Hamming code"</h4>
<input type='text' id='input'></input>
<input type='button' onclick='copy()' value='copy'></input><br>
<input type='text' id='output'></input>
</body>
</html>
Demo
var message = "ananas";
var hash = new Array();
for (var i = 0; i < message.length; i++) {
var char = message.charAt(i);
if (typeof(hash[char]) == 'undefined')
hash[char] = 1;
else
hash[char]++;
}
for (var key in hash) {
WSH.Echo(key + " : " + hash[key]);
}
function readfile(filename) {
var ForReading = 1;
var fso, f, s = "";
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.OpenTextFile(filename, ForReading, false);
try {
s = f.ReadAll();
} catch(e) {
// ...
}
return s;
}
var s = readfile("1.txt");
WScript.Echo(s);
var a = s.split("\r\n");
WScript.Echo(":" + a[0] + ":");
[1]