JAVA-Program matice
Ahoj všichni, mám problém. Dostal jsem ve škole úkol udělat program a nevím si stím rady. Mohl by mi někdo pomoci?
Zadnání:
Napište program, který bude pracovat s maticí NxN. Velikost matice bude odvozena od vstupního textu, čili N = počet znaků vloženého textu. Program bude mít 4 základní funkce:
1. Inicializace matice - Program vyzve uživatele k zadání textu. Poté vytvoří matici NxN a inicializuje ji čísly 1 .. NxN
2. Diagonála - Program provede vynulování hlavní diagonály
3. Dolní trojúhelník - Program vynuluje dolní trojúhelníkovou matici (diagonála musí zůstat nezměněna)
4. Výpis matice - Program vypíše aktuální stav matice
Moje zpracování(dost mozny ze tam mam chyby):
package domaci_ukol;
import java.util.Scanner;
public class Domaci_ukol {
private static String jmenoString;
private static int matice[][];
private static int i;
private static void printMenu() {
System.out.println("Menu:\n"
+ "1 .. Zadat Jmeno\n"
+ "2 .. Inicializace matice\n"
+ "3 .. Diagonala\n"
+ "4 .. Dolni trojuhelnik\n"
+ "5 .. Vypis matice\n"
+ "6 .. Menu\n"
+ "7 .. Konec");
}
// Nacteni INT ze vstupu
private static int readInt() {
int d;
Scanner input = new Scanner(System.in);
d = input.nextInt();
if (d>7)
System.out.println("Volba "+d+". neni definovana");
switch (d){
case 1:
menu1();
break;
case 2:
menu2();
break;
case 3:
menu3();
break;
case 4:
menu4();
break;
case 5:
menu5();
break;
case 6:
printMenu();
break;
case 7:
System.exit(0);
break;
}
return input.nextInt();
}
// Nacteni STRING ze vstupu
private static String readString() {
String input = jmenoString;
i = jmenoString.length();
return input;
}
private static void menu1() {
System.out.println("Zadejte jmeno");
Scanner sc = new Scanner(System.in);
jmenoString = sc.nextLine();
jmenoString = readString();
}
private static void menu2() {
System.out.println("Matice byla inicializovana");
}
private static void menu3() {
System.out.println("Diagonala vynulovana");
}
private static void menu4() {
System.out.println("Dolni trojuhelnik vynulovan");
}
private static void menu5() {
}
public static void main(String[] args) {
printMenu();
readInt();
}
}
Předem děkuji všem za pomoc:)
Hmm... Máš jenom nějaké trapné menu. Jestli nedáš dohromady ani ten výpis matice (stačí na to dva fory), tak se o to ostatní ani nepokoušej.
Jedná se mi o to jak vynulovat diagonalu a jak udelat nulovej spodni trojuhelnik(bez nulovani diagonaly ale)
Diagonála se vynuluje tak, že vynuluješ prvky na pozici matice[i][i] s tím, že cyklus přes i jde od 0 do matice.length. Spodní trojúheljník nevím co je...