Вывести самое короткое слово в строке
Есть текст, в котором необходимо определить
• количество слов (сделано) • последнее слово в тексте(сделано) • самое короткое слово в тексте <html> <head> <title>10</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/ font size="4"> <script language="JavaScript"> function numsym(obj) { var h=' ' var s=obj.textin.value var res=0 for (var i=0; i<=s.length-1; i++) {ch=s.charAt(i) if (ch==h) {res+=1} } f=res+1; obj.result.value=f var myArray = s.split(' '); alert(myArray[res]) } </script> </head> <body bgcolor="#E6E6FA"> <form name="form1"> Текст:<br> <textarea name="textin" rows=10 cols=100></textarea><hr> <input type="button" value="Определить" onClick="numsym(form1)"><hr> Колличество слов: <input type="text" name="result" size=8><hr> <input type="reset" value="Сбросить"> </form> </body> </html> помогите сделать последнее задание, заранее спасибо пробовал сделать так, но не работает: myArray[0]=sm; for (var j=0; j<=f; j++) { if myArray[j]<sm { sm=myArray[j]; } } alert(sm) |
У тебя уже есть массив слов. Тебе осталось принять первое слово как предполагаемое минимальное, а потом в цикле (начиная со второго слова) сравнивать все слова с запосненным в переменной (первоначально - с первым). Если сравниваемое слово меньше того, что в переменной, то в переменную записываем новое (текущее) слово. И так до конца массива. В итоге в переменной будет самое короткое слово.
|
Длина строки хранится в свойстве length.
|
<script language="JavaScript"> function numsym(obj) { var h=' ' var s=obj.textin.value var res=0 for (var i=0; i<=s.length-1; i++) {ch=s.charAt(i) if (ch==h) {res+=1} } f=res+1; obj.result.value=f var myArray = s.split(' '); myArray[0]=sm; for (var j=1; j<=f; j++) { if myArray[j].length<sm.length { sm=myArray[j]; } } alert(sm) } </script> я так и сделал, но все равно не работает(. в чем ошибка? |
myArray[0]=sm; ???
|
первое слово присваивается переменной sm
|
Фигасе у вас присваивание? Вы араб?
|
очень смешно
|
Т.е. вы до сих пор не поняли, что в этой строчке не так?
Цитата:
|
не помогло
|
Часовой пояс GMT +3, время: 09:59. |