Вопрос задан 19.07.2023 в 04:28. Предмет Информатика. Спрашивает Ткачёва Юля.

Выведите ошибку по языку Java! Программа запрашивает число N, затем мы создаем двумерный массив N

x N и заполняем их числами. Программа должна вывести массив таким образом, как в нижних примерах. Ввод: 3 0 -2 3 -5 8 -8 1 2 3 Вывод: x -2 x -5 x -8 x 2 x Мое решение: import java.util.Scanner; public class Main{ public static void main (String [] args){ Scanner in = new Scanner (System.in); int n = in.nextInt(); int mass[][] = new int [n][n]; for(int i=0;i for(int j=0;j mass [i][j] = in.nextInt(); } } for(int i =0;i for(int j = 0;j if(j>=n-1-i){ System.out.print("x "); }else{ System.out.print(mass[i][j]+ " "); } } System.out.println(); } } }
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Прокопова Арина.

Ответ:

Как я понял,нужно было вывести главную и побочную диагонали.

Ошибки:

  • пропущены скобки,как обычные так и фигурные;
  • пропущены знаки ";","<" и т.д.;

Легче было заново написать чем исправлять.

Вот мой код:

import java.util.Scanner;

public class Main{

public static void main (String [] args){

 Scanner in = new Scanner (System.in);

 int n = in.nextInt();  

 int mass[][] = new int [n][n];

 int i,j;

 

 for(i=0;i<n;i++){

  for(j=0;j<n;j++){

   mass[i][j]=in.nextInt();

  }

 }

 

 for(i=0;i<n;i++){

  for(j=0;j<n;j++){

   if((i==j) || j==(n-1-i)){

    System.out.print("x");

   }else System.out.print(mass[i][j]);

   

  }

  System.out.println();

 }

 

 in.close();  

}

}

Объяснение:

Краткий алгоритм программы:

  1. Импортируем Scanner;
  2. Объявляем переменную in типа Scanner,для ввода;
  3. Объявляем переменную n типа int,для хранения размера массива;
  4. Объявляем две переменные i и j типа int,для циклов;
  5. В первом "двойном" цикле мы заполняем массив числами;
  6. Во втором "дойном" цикле мы мы сравниваем индексы массива и выводим результат;
  7. Закрываем Scanner;

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

В вашем коде есть небольшая ошибка в условии вывода символа "x" или числа. Вам следует заменить "if (j >= n-1-i)" на "if (j >= n-1-i)", чтобы код работал корректно. Вот исправленный код:

java
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[][] mass = new int[n][n]; for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { mass[i][j] = in.nextInt(); } } for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { if (j >= n - 1 - i) { System.out.print("x "); } else { System.out.print(mass[i][j] + " "); } } System.out.println(); } } }

Теперь код должен работать правильно и выводить массив в соответствии с вашими ожиданиями.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос