Показать сообщение отдельно
  #1 (permalink)  
Старый 06.04.2016, 23:54
Новичок на форуме
Отправить личное сообщение для NewbieJS11 Посмотреть профиль Найти все сообщения от NewbieJS11
 
Регистрация: 06.04.2016
Сообщений: 2

Не работает сортировка.
Здравствуйте. Я новичок.
Мне нужно создать программу, которая выводит на экран заданное кол-во строк (элементов массивов). При этом он должен сортировать строки по уменьшению их длины. Также программа должна сравнивать первые буквы (вторые, если первые одинаковые) строк одинаковой длины и сортировать их по алфавиту.
На данный момент я сделал отдельно сортировку по длине строки и генератор строки случайной длинны и случайных символов.
<html><body><script>

	for (pp = 1; pp <= 20; pp++) // генератор случайной строки
	{

	rand = Math.round(Math.random()*80);
	var result       = '';
	var arr = new Array;
	var words        = '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBN';
	var max_position = words.length - 1;

		for( num = 1; num <= rand; num=num+1)
		{
		position = Math.floor ( Math.random() * max_position );
		result = result + words.substring(position, position + 1);
		
		}
	arr[pp] = result;
	}


    var buffer = "";

    for(num2 = 0; num2 < arr.length - 1; num2++) // сортировка по длине
    {

        for(j = 0; j < arr.length - 1; j++)
        {
            if (arr[j].length < arr[j + 1].length)
            {
                buffer = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = buffer;
            }
        }

    }
		

    for (num3 = 0; num3 < arr.length; num3++) {
        document.write(arr[num3] + "<br/>");
    }


</script></body></html>

По отдельности эти две части работают. Проблема лишь в соединении.
P.S. Также, если не трудно, помогите с сортировкой по алфавиту между строк одинаковой длины.
Ответить с цитированием