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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2011, 20:01   #1
merhaba1992
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 10
По умолчанию Логический массив

Добрый Вечер!!!
Дан целочисленный двумерный массив размера n*m . Получить по нему массив логических величин соответствующего размера по следующему правилу:
элемент массива логических величин №k - истина, если сумма элементов строки с номером k исходного массива не превосходит заранее заданной величины S.
Мой код:

Код:
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Locale;
import java.util.Scanner;

public class WorkWithMatrix {

  public static void main(String[] args) throws IOException {
    Matrix mt = new Matrix();
    mt.printBooleanMassiv();
    }
}

class Matrix { // Класс, в котором содержаться методы, решающие поставленную задачу
   int [][] array; // Двумерный массив целых чисел
   int n; // количество строк в массиве
   int m; // количество столбцов в массиве
   int S; // заданная величина, с которой происходит сравнение сумм строк
   boolean [] element; // одномерный массив логических значений
   int i; // индекс строк двумерного массива

   public Matrix() throws IOException { // Конструктор, чтение из файла размера
                                        // массива
      // и его элементов
      FileReader fin = new FileReader("input.txt"); // Чтение из файла. fin -
                                                    // file input
      Scanner scr = new Scanner(fin); // Чтение из файла
      n = scr.nextInt(); // строка массива
      m = scr.nextInt(); // столбец массива
      array = new int[n][m]; // вещественный элемент массива
      scr.useLocale(Locale.US); // использование точки в качестве разделителя

      for (i = 0; i < n; i++) { // цикл, считывающий элементы массива
         for (int j = 0; j < m; j++) {
            array[i][j] = scr.nextInt();
         } // for (int j... )
      } // for (int i... )

      S = scr.nextInt(); // выделение памяти для заданного числа
      element = new boolean [n]; // выделение памяти для логического массива
      fin.close(); // Метод, который закрывает файл

   } // constructor Matrix()

   void SumElementsInRow(int numRow, boolean [] element,
           int [][] array, boolean[] elements){ //метод, в котором происходит
       //суммирование элементов строк и формирование логического массива
      int Sum = 0;
      for(i=0; i<numRow;i++){
      for (int j=0; j < m; j++){
      Sum +=array[i][j];}
      if (Sum < S){
          element[i] = true;} else {element[i] = false;}
      System.out.println(element[i]);       }
}

   void printBooleanMassiv() throws IOException { // Метод, создающий файл и записывающий туда полученный массив
    PrintWriter fout = new PrintWriter("a.txt"); // Запись вычисленное суммы в файл. Класс - PrintWriter
    fout.println(SumElementsInRow());
    fout.flush(); // Метод, который выполняет очистку буфера
    fout.close(); // Метод, который закрывает файл
} 
}
Помогите Пожалуйста исправить код так, чтобы в файл выводился логический массив соответствующего размера...
merhaba1992 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Логический калькулятор Avely Помощь студентам 1 16.04.2011 17:03
Логический и Физический адреса TGrey[WoLf] Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 06.07.2010 22:35
Логический оператор If Anatoly555 Помощь студентам 2 21.03.2010 08:53
Логический анализатор NieL Общие вопросы Delphi 1 10.03.2009 13:28
Логический адрес InitInstance Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 24.03.2008 10:33