Помощь - Поиск - Пользователи - Календарь
Полная версия: Ява скрипты
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Ада и другие языки
dron4ik
Привет всем. Помогите написать программу...(я не разу не работал на ява скрипте)....пожалуйста.

Есть три исходные строки. Первая строка по длине превосходит вторую обе эти строки могут содержать какие либо элементы. ПЕРВАЯ ПРОЦЕДУРА Потом вторая строка сравнивается с первой ищет одинаковый элемент в первой строчки и если в первой строке находятся одинаковые элементы, то выводим их индексы(индексы элементов в первой строке)и ВТОРАЯ ПРОЦЕДУРА потом эти элементы заменяются элементом который содержится в третьей строке.Третья строка содержит элемент предназначенный для замены.ТРЕТЬЯ ПРОЦЕДУРА -->В четвертой строке содержиться путь к файлу, где этот файл содержит в себе все эти строчки.При запуске скрипта эти строчки передаються в консоль.ТЧЕТВЕРТАЯ ПРОЦЕДУРА нужно осуществить проверку которая проверяет элементы в строках если они есть вобще.
Lapp
Цитата(dron4ik @ 8.10.2009 21:50) *
Помогите написать программу...(я не разу не работал на ява скрипте)....пожалуйста.

Есть три исходные строки. Первая ..
dron4ik, помочь можно, ты только хотя бы начни. Задача, как задача. Не совсем ясно, что за элементы имеются в виду, правда. Начинай писать - поможем.
dron4ik
В роли элементов там могут находиться буквы, числа, слова.

Наверное нужно задать два массива стрингового типа?
Lapp
Цитата(dron4ik @ 9.10.2009 9:06) *
В роли элементов там могут находиться буквы, числа, слова.
Поконкретнее бы. Неясно, что означает "одинаковые элементы". Что - если в первой строке одинаковые буквы что ли? Или такие же как, во второй? Я бы на твоем месете макисмально прояснил условие. Если есть четкая запись - давай (хоть фото страницы). А так - поди туда, не знаю куда..

Цитата(dron4ik @ 9.10.2009 9:06) *
Наверное нужно задать два массива стрингового типа?
Про типы в JavaScript забудь вообще, это тебе не Паскаль. И массивы тебе тут вряд ли пригодятся. Присвой строки трем переменным (хоть a, b и с) - и работай с ними.
dron4ik
Сравнение второй строки с первой ну например..

первая строка 34 45 67 78
вторая строка 45
третья строка 99

Алгоритм сравнил строки и нашел одинаковые элементы 45 и 45.Прога выводит индекс элемента 45 первой строки..тут индекс равен 2 к примеру.. и с помощью третьей строки мы заменяем элемент 45 первой строки на элемент 99 третьей строки. т.е..

первая строка 34 99 67 78
вторая строка 45
третья строка 99




Добавлено через 5 мин.
а как осуществить ввод этих элементов с помощью клавиатуры? т.е. пользователь сам вводит в строки эти элементы...а как эт осуществить?
Lapp
Цитата(dron4ik @ 9.10.2009 15:39) *
а как осуществить ввод этих элементов с помощью клавиатуры? т.е. пользователь сам вводит в строки эти элементы...а как эт осуществить?
Ну, как.. Проще всего - в форме. Сделай форму, а в ней три поля типа text - и вводи..
dron4ik
подскажите как задать форму и поля.
volvo
Цитата
подскажите как задать форму и поля.
Ты что, с HTML никогда не работал?
HTML
<html>
<script type="text/javascript">
function f(frm)
{
alert(frm.first.value);
}
</script>
<form>
<p><input type="text" name="first"><br>
<input type="text" name="second"><br>
<input type="text" name="third"></p>
<input type="button" value="start" onclick="f(this.form);">
</form>
</html>
(описываются 3 поля, обращаться к данным можно через имя.value)...
Lapp
Цитата(dron4ik @ 10.10.2009 15:02) *
подскажите как задать форму и поля.
О-о.. Если ты не знаешь HTML - думаю, тебе рано приступать к JavaScript..
dron4ik
хм интересный код..а перескок на др ячейку как делается? т.е. индексы нужны и счетчик, элементы должны же как то отличаться др от друга.
volvo
Цитата
элементы должны же как то отличаться др от друга.
Если ты не заметил, у каждого элемента (у каждого поля, в смысле) есть имя (name)... Оно уникальное и однозначно определяет объект. В общем, тебе действительно рано заниматься JS...
dron4ik
т.е я могу в самом коде задать имена элементов следовательно и их количество?
dron4ik
Тему можно закрыть.
dron4ik
прогу я написал по заданию..Организовать три строки, где первая строка превосходит по длине вторую строку. Обе эти строки содержат какие-либо элементы(цифры или буквы в зависимости что ввел пользователь в строки),элементы между собой не разделены пробелами. Организовать сравнение элементов этих двух строк и если окажется что первая строка содержит в себе одинаковый элемент с элементом второй строки, то пользователю должен выводиться индекс одинакового элемента первой строки. После вывода индекса, в первой строке заменяем элементы(по индексу, которые являются одинаковыми с элементами второй строки) на элементы третьей строки(по индексу), после этого выводиться первая строка на экран. Но у меня не получается сделать так что пользователь мог сам вводить элементы в эти три строчки...я сделал но у меня выходит ошибка....
[
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("_____________________________");
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.