прогу я написал по заданию..Организовать три строки, где первая строка превосходит по длине вторую строку. Обе эти строки содержат какие-либо элементы(цифры или буквы в зависимости что ввел пользователь в строки),элементы между собой не разделены пробелами. Организовать сравнение элементов этих двух строк и если окажется что первая строка содержит в себе одинаковый элемент с элементом второй строки, то пользователю должен выводиться индекс одинакового элемента первой строки. После вывода индекса, в первой строке заменяем элементы(по индексу, которые являются одинаковыми с элементами второй строки) на элементы третьей строки(по индексу), после этого выводиться первая строка на экран. Но у меня не получается сделать так что пользователь мог сам вводить элементы в эти три строчки...я сделал но у меня выходит ошибка.... [ color=#FF0000]индекс выходит за пределы допустимого значения[/color]кто знает в чем поблема? вот код function Procedure1(x,y) { var Indeksy=new Array(x.length); var k=0; for(var i=0;i<x.length;i++) for(var j=0;j<y.length;j++) if(x.charAt(i)==y.charAt(j)) { Indeksy[k]=i; k++; } return Indeksy; }
function Procedure2(x,y,Inx) { var ZamenennaiaStroka=""; for(var j=0;j<x.length;j++) { var Zamenili=0; for(var i=0;i<Inx.length;i++) if(Inx[i]==j) { Zamenili=1; ZamenennaiaStroka+=y.charAt(Inx[i]); } if(Zamenili==0) ZamenennaiaStroka+=x.charAt(j); } return ZamenennaiaStroka; }
var Stroka1 = "abcdefghi"; var Stroka2 = "18acegh7"; var Stroka3 = "123456789"; WScript.Echo(WScript.Arguments(0)); WScript.Echo("_____________________________"); WScript.Echo("Stroka1: "+Stroka1); WScript.Echo("Stroka2: "+Stroka2); WScript.Echo("Stroka3: "+Stroka3); WScript.Echo("_____________________________"); var I=Procedure1(Stroka1,Stroka2); WScript.Echo("Indeksy sovpadeniy v pervoi stroke: "+I); WScript.Echo("_____________________________"); var NovaiaStroka1=Procedure2(Stroka1,Stroka3,I); WScript.Echo("Posle zameny poluchili: "+NovaiaStroka1); WScript.Echo("_____________________________");
|