Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 25.04.2014, 15:48
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 1  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
По умолчанию Не выполняется цикл while

Вчера до четырёх утра не мог понять, думал, что посплю и увижу причину, но сегодня все так же не могу понять в чем дело. Может чей-то свежий взгляд избавит меня от мучений Вопрос в коде -
И ещё интересно, было ли у кого-нибудь, что FD начинал глючить и что с этим делать? Вчера целый день ушел на поиск ошибки, которой не было, сегодня...
Код AS3:
package 
{
	import flash.display.Sprite;
 
	public class Main extends Sprite 
	{
		private var _array:Array;
 
		public function Main() 
		{
			_array = new Array(1,8,8,9,9,9,3,7,7,7);
 
			trace(selectionSort(_array, comparator))
		}
		private function selectionSort(array:Array, comparator:Function):Array
		{
			var data:*, i:int, j:int, min:int, lenght:int = array.length;
 
			while (i < length)
			{
				min = i;
				j = i;
 
				while (j < length)
				{
					if (array[j++] < array[min])
							min = j - 1;
				}
 
				data = array[min];
				array[min] = array[i];
				array[i] = data;
				i+=1;
			}
 
			trace(lenght); // 10
			var a:int = 0;
 
			while (a++ < length)
					trace(a); // 1 Почему цикл выполняет только одну итерацию?
 
			return array;
		}
 
		public static function comparator(a:Number, b:Number):int
		{
			if (a < b) return -1;
			if (a > b) return 1;
			return 0;
		}
 
		private function random():int
		{
			return Math.random() * 10;
		}
	}
}
Добавлено через 33 минуты
Удалил и заново создал условия в скобках и заработало. Полтора дня ушло на два глюка.

Старый 25.04.2014, 16:24
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 2  
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Цикл while так не работает.
Код AS3:
while (a < length) {
   a++;
   trace(a);
}
На мой взгляд, тут было бы удобней использовать for.

Старый 25.04.2014, 16:38
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 3  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Код выглядит так нелепо, потому что, до того, как я понял, что это глюк, я переворотил весь код.
Теперь все тик в тик. От for я почему-то постепенно отвыкаю...
Код AS3:
array_list final function selectionSort(array:Array, comparator:Function):Array
{
	var data:*, i:int, j:int, min:int, lenght:int = array.length;
 
	while (i < lenght)
	{
		min = i;
		j = i;
 
		while (j < lenght)
				if (array[++j] < array[min])
					min = j;
 
		data = array[min];
		array[min] = array[i];
		array[i++] = data;
	}
 
	return array;
}

Старый 25.04.2014, 17:04
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 4  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
private var _array:Array;

public function Main()
{
_array = new Array(1,8,8,9,9,9,3,7,7,7);
Сколько не долби, а все одно и тоже.... Когда же начнется понимание то...

Код AS3:
private var _array:Array = [1,8,8,9,9,9,3,7,7,7];
Добавлено через 1 минуту
Ну, а про неймспейсы я вообще молчу
__________________
Марк Tween

Старый 25.04.2014, 17:11
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 5  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
Сколько не долби, а все одно и тоже.... Когда же начнется понимание то...
Ну во первых я так, наверное, впервые сделал, а во вторых - вчем разница то?)
И не думайте, что я не понимаю разницы между вызовом конструктора и без него. Суть-то не меняется.
Код AS3:
Ну, а про неймспейсы я вообще молчу
А чем ва неймспейсы не нравятся? У меня в классе два метода, один для арай, а второй для линкед.
Можно передавать из из обращающего класса this, но мне захотелось с неймспайсоми... В чем это плохо?


Последний раз редактировалось Akopalipsis; 25.04.2014 в 17:40.
Старый 25.04.2014, 19:26
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 6  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
вчем разница то?)
Ну нет разницы, так значит нет, если за год не нашли, то я пас.
Про неймспейсы все просто - они не нужны. С вашей стороны это просто выпендреж, который не нужен ни вам ни кому либо другому.
__________________
Марк Tween

Старый 25.04.2014, 21:20
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 7  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Если кто-то может объяснить разницу, объясните пожалуйста, а то я действительно не знаю.

Цитата:
Ну нет разницы, так значит нет, если за год не нашли, то я пас.
Если мне раньше казалось, что Вы ведёте себя так, только по тому, что с Вами обращались так же,
то я не удивился когда нашел этому подтверждение. Но вот эти Ваши слова, сразу заставили искать
связь между Вами и "тем тоном", потому что это уже не синдром жертвы, мне кажется над Вами действительно надругались.
И извиняюсь за грубость, но это Вы себя так выставляете.

Старый 25.04.2014, 23:39
СлаваRa вне форума Посмотреть профиль Отправить личное сообщение для СлаваRa Найти все сообщения от СлаваRa
  № 8  
СлаваRa
 
Аватар для СлаваRa

блогер
Регистрация: Feb 2008
Адрес: http://playtika.com
Сообщений: 1,119
Записей в блоге: 5
Отправить сообщение для СлаваRa с помощью ICQ Отправить сообщение для СлаваRa с помощью Skype™
зачем писать объявление переменных в строку?
метод random - идиотский и бессмысленный.
компаратор можно написать простым вычитанием без ифов
не понятно зачем тут while
не понятно зачем тут кастомный неймспейс
не понятно, чем не нравится "нативная" сортировка, и зачем необходим этот велосипед
__________________
местонахождение

Старый 26.04.2014, 00:05
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 9  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
зачем писать объявление переменных в строку?
чтобы места меньше занимало.
Цитата:
метод random - идиотский и бессмысленный.
когда у Вас в классе сто тестов и везде нужно рандом, то я не собираюсь везде писать Math.random.
Цитата:
компаратор можно написать простым вычитанием без ифов
я не могу придумать, как например из 3.566 вычесть 0.862 чтобы получить нужные цифры - -1,0,1.
Можете подсказать?)
Цитата:
не понятно зачем тут while
Замерить скорость работы for со стандартным объявлением переменной в цикле
у меня не получилось, а когда объявлять все равно вне, то whele красивей, хоть немного и теряется
скорости из-за array[i++].
Цитата:
не понятно зачем тут кастомный неймспейс
у меня в одном классе, два метода с одинаковым названием, но я отказался от него.
Цитата:
не понятно, чем не нравится "нативная" сортировка, и зачем необходим этот велосипед
нравится!

Старый 26.04.2014, 00:12
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 10  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Akopalipsis - Ты дубина - что я могу сказать. Мало того, что уже весь форум тебе вдалбиливает , что ты пишешь фигню, кроме того - ты не собираешься учиться и искоренять это, ты лезешь в дебри , которые не для тебя еще пару лет. С русским языком опять же не дружим, а так же не понимаем значения многих слов. Особенно понравилось про *надругался* - я смеялся Вперед читать википедию, дабы боюсь книги в бумажной обертке читать тебе еще рано

P.s. - все аргументы которые ты привел против СлаваРа - такие же глупые, как и метод random ( уже было сказано )
P.s.s - Разница в () от [] в скорости во первых, во вторых в конвенциях. А щас у тебя код как шлюха - половина от одних конвенций, половина от других
__________________
Марк Tween

Создать новую тему Закрытая тема Часовой пояс GMT +4, время: 06:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 06:29.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.