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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2017, 22:02   #1
EvgeniyVaravko
Пользователь
 
Регистрация: 09.10.2017
Сообщений: 11
По умолчанию проблема с return. пишет что переменная r1 не инициализирована

Код:
import java.util.Scanner;
public class alphabank {
    public static void main(String[] args) {
            System.out.println("Введите размер массива: ");
            Scanner sc = new Scanner(System.in);
            int razmermassiv = sc.nextInt();
            int[] massiv = new int[razmermassiv];
            int i;
            System.out.println("Введите массив размером " + razmermassiv);
            for (i = 0; i < razmermassiv; i++) {
                massiv[i] = sc.nextInt();
            }
            //сортировка массива по убыванию
            for (int k = 0; k < razmermassiv; k++) {
                for (int j = k + 1; j < razmermassiv; j++) {
                    if (massiv[k] < massiv[j]) {
                        int z = massiv[k];
                        massiv[k] = massiv[j];
                        massiv[j] = z;
                    }
                }
            }
            for (i = 0; i < razmermassiv; i++)
                System.out.println(massiv[i]);
            System.out.println("Введите число Х ");
            int x = sc.nextInt();
            System.out.println(x);
            System.out.println(BinarySearch(massiv , razmermassiv,  x ));}
            static int BinarySearch (int[] massiv1 , int razmermassiv1, int x1) {
                int r1;
                int low = 0;
                int middle;
                int high = razmermassiv1 - 1;
                while (high >= low) {
                    middle = (low + high) / 2;
                    if (massiv1[middle] < x1) {
                        low = middle + 1; r1 = middle;
                    } else{
                    if (massiv1[middle] > x1) {
                        high = middle - 1; r1 = middle;
                    }}



                    }

        return r1;}

    }
______________________
Используйте тег [CODE] (кнопка с решеткой # в форме сообщения) при вставке кода на форум.

Последний раз редактировалось Alex11223; 09.10.2017 в 23:45.
EvgeniyVaravko вне форума Ответить с цитированием
Старый 09.10.2017, 22:42   #2
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Ну проинициализируй: "int r1=0;".
ura_111 вне форума Ответить с цитированием
Старый 09.10.2017, 23:10   #3
EvgeniyVaravko
Пользователь
 
Регистрация: 09.10.2017
Сообщений: 11
По умолчанию

без int r1=0; переменную r1 вообще не видит в цикле
EvgeniyVaravko вне форума Ответить с цитированием
Старый 09.10.2017, 23:23   #4
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Как это "без int r1=0;".
У тебя:

1.jpg

а где "=0"
ura_111 вне форума Ответить с цитированием
Старый 09.10.2017, 23:42   #5
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

1.jpg
ura_111 вне форума Ответить с цитированием
Старый 09.10.2017, 23:56   #6
EvgeniyVaravko
Пользователь
 
Регистрация: 09.10.2017
Сообщений: 11
По умолчанию

спасибо большое.
а программа не работала, потому что я немного не правильно описал условие вывода переменной r1;
EvgeniyVaravko вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Pascal ABC] В 7-ой строке пишет,что ожидалось имя процедуры или функции,не понимаю как это исправить и что делать! SMOKE SMOKE Паскаль, Turbo Pascal, PascalABC.NET 2 16.06.2017 18:57
Сделал свою программку, пишет что вирус TUberwer Общие вопросы Delphi 5 20.08.2013 18:53
Проблема! Пишет что на сервере нет файла, но файл точно делает свою роботу. Pein95 PHP 2 10.05.2012 11:03
Что делает здесь return; Yokka Общие вопросы C/C++ 2 14.05.2010 18:16
Не работает YouTube, пишет, что отключен JavaScript Макса JavaScript, Ajax 22 06.08.2008 22:18