Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2009, 22:32   #1
_Studentka_
Пользователь
 
Аватар для _Studentka_
 
Регистрация: 03.11.2009
Сообщений: 24
По умолчанию Почему получается зацикливание??

Вот я создаю метод для последовательного поиска и удаления в хеш таблице. У меня есть массив nonEmpty,где все значения boolean. Там хранятся значения true и false. Если false,то это говорит о том.что ячейка хеш таблицы пустая. Perimetr1- число,которое мы вводим с клавиатуры и находим его в хеш таблице. Если число, введенное с клавиатуры меньше того,которое в хеш таблице,то число, которое в хеш таблице нужно удалить.

Код:
public void finData(double perimetr1){
for(int i=0;i<array.length-1;i++){
     while(nonEmpty[i]!=false){// если есть данные в ячейке хеш таблицы,то проверить
     if(array[i].getPerimetr()!=perimetr1)
       i++;// если число perimetr1,которое вводиться с клавиатуры не равно числу с идексом i,то сделать i++ и искать следующий элемент.
         
     if(i<array.length-1){
         array[i].print(i);
         System.out.println("Element was found");
 }
     else
         System.out.println("Element was not found");
    
 }
 }
            for( int i=0; i<array.length;i++){
            if(nonEmpty[i]!= false )
                if(array[i].getPerimetr()>=perimetr1){
                    nonEmpty[i]=false;
                N--;
                System.out.println("Element was deleted");

         }
            }
}
У меня зацикливание получается. Подскажите,пожалуйста,почему((
_Studentka_ вне форума Ответить с цитированием
Старый 09.12.2009, 02:13   #2
alexinspir
Новичок
Джуниор
 
Аватар для alexinspir
 
Регистрация: 26.08.2008
Сообщений: 1,010
По умолчанию

Цитата:
Сообщение от _Studentka_ Посмотреть сообщение
Вот я создаю метод для последовательного поиска и удаления в хеш таблице. У меня есть массив nonEmpty,где все значения boolean. Там хранятся значения true и false. Если false,то это говорит о том.что ячейка хеш таблицы пустая. Perimetr1- число,которое мы вводим с клавиатуры и находим его в хеш таблице. Если число, введенное с клавиатуры меньше того,которое в хеш таблице,то число, которое в хеш таблице нужно удалить.

Код:
public void finData(double perimetr1){
for(int i=0;i<array.length-1;i++){
     while(nonEmpty[i]!=false){// если есть данные в ячейке хеш таблицы,то проверить
     if(array[i].getPerimetr()!=perimetr1)
       i++;// если число perimetr1,которое вводиться с клавиатуры не равно числу с идексом i,то сделать i++ и искать следующий элемент.
         
     if(i<array.length-1){
         array[i].print(i);
         System.out.println("Element was found");
 }
     else
         System.out.println("Element was not found");
    
 }
 }
            for( int i=0; i<array.length;i++){
            if(nonEmpty[i]!= false )
                if(array[i].getPerimetr()>=perimetr1){
                    nonEmpty[i]=false;
                N--;
                System.out.println("Element was deleted");

         }
            }
}
У меня зацикливание получается. Подскажите,пожалуйста,почему((
Где вас учили ТАКОМУ форматированию?!
Перепишите код нормально, с соответствующими отступами.
Если вы не пишите блоки {} после if/while/else и т.д. то выполняемое действие надо писать в строку. и вообще, не использование {} есть очень дурной тон.
з.ы. ошибка скорее как раз таки в косяках с {}(или их отсутствии).
ромик0: Cколько получают здешние модераторы?
pu4koff: У модераторов сдельная оплата труда. Выдал предупреждение - плюс к премии. Выдал бан - лучший модератор месяца со всеми вытекающими.
alexinspir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не получается сделать .... Castro Паскаль, Turbo Pascal, PascalABC.NET 4 22.05.2009 19:11
Не получается отсортировать nec117 Общие вопросы C/C++ 3 27.02.2009 20:42
Почему-то не получается.... lionman Помощь студентам 7 07.12.2008 11:35
помогите убрать зацикливание с++,борланд Барби Помощь студентам 23 02.12.2008 10:14
Не получается..... Delpher HTML и CSS 2 25.12.2007 13:17