Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите, пожалуйста, доделать задачу на java

Алена Ученик (84), на голосовании 1 год назад
С помощью наследования. Я что-то начала делать, но нужна помощь
package arrays;



import java.util.Random;



public class ArrayOne{

protected int[] array;

public ArrayOne(int size) {

Random r = new Random();

array = new int[size];



for (int i = 0; i < size; i++) {

array[i] = r.nextInt(100)+10;

}

}



public int[] Aray(int siz) {

Random r = new Random();

int[] aray = new int[siz];



for (int i = 0; i < siz; i++) {

aray[i] = r.nextInt(100)+10;

}

return aray;



}



public String PrintAr(int array[]) {

String line = "";

for (int i = 0; i < array.length; i++) {

line += array[i] + ",";

}

return line;

}

public String PrintAr() {

String line = "";

for (int i = 0; i < array.length; i++) {

line += array[i] + ",";

}

return line;

}

public String Summ() {

int chet = 0;

int nechet = 0;

int max = 0;

for (int i = 0; i < array.length; i++) {

if (i % 2 == 0){

chet += array[i];

}

else{

nechet += array[i];

}

}

if (chet > nechet)

chet = max;

System.out.println("Четная сумма");

if (nechet > chet)

nechet = max;

System.out.println("Нечетная сумма");

String Summ = Integer.toString(max);

return Summ;

}

}

package arrays;



import arrays.ArrayOne;

import java.util.Random;

import java.util.Scanner;



public class ArrayTwo extends ArrayOne {

private int [][]array;

private int sizeH;

private int sizeV;

public ArrayTwo(int size){

super(size);

sizeH = size / 2;

sizeV = size / 2;



array = new int [sizeH][sizeV];



Scanner s = new Scanner( System.in );

System.out.print("Введите элементы массива:");

for (int j = 0; j < sizeV; j++) {

for (int i = 0; i < sizeH; i++){

array[i][j] = s.nextInt();

}

}

}



public int[][] ArrayTwoNonRect(int size){



array = new int [size / 2][];



for (int i = 0; i < size / 2; i++) {

Scanner s = new Scanner( System.in );

System.out.println("введите размер строки: ");

int scan = s.nextInt();

ArrayOne arr1 = new ArrayOne(scan);

array[i] = arr1.Aray(scan);

}

System.out.println("goog");

return array;

}



public String PrintAr() {

String line = "";

for (int j = 0; j < sizeV; j++) {

int[] aray = new int[sizeH];

for (int i = 0; i < sizeH; i++) {

aray[i] = array[i][j];

}

line += super.PrintAr(aray)+"\n";

}

return line;

}



}

Файлы названы array, ArrayOne, ArrayTwo
Дополнен 1 год назад
С помощью наследования. Я что-то начала делать, но нужна помощь

import java.util.Scanner;

import java.util.Random;

import arrays.*;

public class array {

public static void main(String[] args) {

Scanner s = new Scanner(System.in);

System.out.print("Введите размер массива:");

int size = s.nextInt();

ArrayOne array1 = new ArrayOne(size);

System.out.println(array1.PrintAr());

System.out.println("Больше: "+array1.Summ());

System.out.println();

//System.out.println(array2.PrintAr());

//array2.Swap();

//System.out.println(array2.PrintAr());

ArrayTwo array2 = new ArrayTwo(size);

array2.ArrayTwoNonRect(size);

System.out.println(array2.PrintAr());

s.close();

}

}
Дополнен 1 год назад
Последний файл - это главный абзац
Голосование за лучший ответ
Оракул Оракул (59566) 1 год назад
А где полный текст задачи в исходном виде?
На картинке про одномерный и двумерный массивы. Но при чем тут наследование вообще непонятно.
Александр Искусственный Интеллект (292144) 1 год назад
на ответах ты можешь форматировать свой код в более читабельном виде.
говори конкретно в чём проблема
в джаве принято обзывать классы с большой буквы, а методы - с маленькой
джава тебе не питон... то что должно быть выполнено "вместе", то должно быть заключено в фигурные скобки... а не отступами выделено...
Советник Гуру (3778) 1 год назад
здесь не "доделать"............здесь делать надо
Похожие вопросы