Skip to content
Snippets Groups Projects
Commit ccafe276 authored by T2heJada's avatar T2heJada
Browse files

Põhjalikum abi

parent 51636fa9
No related branches found
No related tags found
No related merge requests found
......@@ -35,20 +35,38 @@ public class Kasutajaliides{
// Tekst, mida iga küsimuse alguses väljastatakse
static final String päis =
System.lineSeparator().repeat(10)
+ "-".repeat(str_width)+System.lineSeparator()
+ "-".repeat(str_width)
+ System.lineSeparator()
+ "%? - Abi | %A - Algusesse | %L - Lahku"
+System.lineSeparator().repeat(4);
+ System.lineSeparator().repeat(4);
// Tekst, mida abi küsimisel väljastatakse
static final String abitekst =
"Praegu ei ole veel asju kirjas"
"Selles programmis on võimalik sooritada erinevaid maatriksitega seotud"
+ System.lineSeparator()
+ "tegevusi, sisestades numbreid ja käske."
+ System.lineSeparator()
+ "%-Käsud on tähtede suurusest sõltumatud"
+ System.lineSeparator()
+ "Käsud, mis algavad '%'-märgiga, on üldiselt asukohast sõltumatud"
+ System.lineSeparator()
+ "Üheks erandiks nii suuruse kui sõltumatuse juures on tehetega seotud käsud nagu %set"
+ System.lineSeparator().repeat(2)
+ "Siin on erinevaid käske, mida on võimalik sooritada"
+ System.lineSeparator()
+ "%? - Kuva see menüü"
+ System.lineSeparator()
+ "%A - Mine pealehele, kus saab valida jägmiseid tegevusi"
+ System.lineSeparator()
? "%L - Lõpeta koheselt programm"
+ "%J - Hüppa kohta programmis";
// Tutvustus
static final String tutvustav_tekst = "Tere!";
static final String tutvustav_tekst = "Tere!"
+ System.lineSeparator()
+ "See siin on maatriksitega tehete programm."
+ System.lineSeparator()
+ "Kui pole kindel, mida teha, kirjuta %?";
// Suvaliste mõõtmetega maatriksi alam- ja ülempiir
private int[] suva_mõõtmed = {1,6};
......@@ -134,12 +152,15 @@ public class Kasutajaliides{
System.out.print("> ");
String sisend = scan.nextLine();
switch (sisend){
s = sisend.toUpperCase()
switch (s){
s = sisend.toUpperCase()
switch (s){
case "%?": help(); return "%"; // Ava abi aken
case "%A": next = 1; return "%"; // Mine tagasi algusesse
case "%L": next = -1; return "%"; // Lahku programmist
case "%J": hüpe(); return "%";
case "%LIST": teade(next,väärtusedList()); return "%";
default: return sisend;
}
......@@ -316,7 +337,9 @@ public class Kasutajaliides{
next = 6; // 6: Maatriksi mõõtmed
}
}
/**
* Tagastab sõne kõikide muutujate väärtustega
*/
private String väärtusedList(){
String väljund = "";
for (String nimi : maatriksid.keySet()){
......@@ -328,6 +351,9 @@ public class Kasutajaliides{
return väljund;
}
/**
* Parsib ohutult sõne
*/
private Value parse_wrap(String võrrand){
try {
......@@ -339,7 +365,10 @@ public class Kasutajaliides{
}
}
/**
* Annab muutujale <nimi> väärtuse, mille saav <võrrand> lugedes
* Kui <nimi> ei sobi muutuja nimeks, teatab veast.
*/
private void väärtusta(String nimi, String võrrand){
if (sobivNimiP(nimi)){
Value n = parse_wrap(võrrand);
......@@ -353,7 +382,7 @@ public class Kasutajaliides{
private void tehted(){
String sisend = prompt("> Sisesta tehe"+ System.lineSeparator()
+"| %list - Annab loetelu olemasolevates nimedest"
+"| %LIST - Annab loetelu olemasolevates nimedest"
+ System.lineSeparator()
+"| %set <nimi> <tehe> - Seab <nimi> väärtuseks <tehe> tulemuse");
String[] s = sisend.split(" ");
......@@ -362,8 +391,6 @@ public class Kasutajaliides{
// Ei tee midagi
} else if (s[0].equals("%")){
return;
} else if (s[0].equals("%list")){
teade(next,väärtusedList());
} else if (s[0].equals("%set")){ // Sea väärtuseks
väärtusta(s[1],sisend.split(" ",3)[2]);
} else { // Soorita tehe
......@@ -378,12 +405,10 @@ public class Kasutajaliides{
private void vaata(){
String sisend = prompt("> Sisesta maatriksi nimi, et seda vaadata"
+ System.lineSeparator()
+ "> Sisesta '%N', et näha loetelu olemasolevatest maatriksitest");
+ "> Sisesta '%LIST', et näha loetelu olemasolevatest maatriksitest");
if (sisend.equals("%")){
return;
} else if (sisend.equals("%N")){ // Loetelu nimedest
teade(next,väärtusedList());
return;
} else if (olemasP(sisend)){
// Loob sõne ja lisab maatriksi read
String väljund = "Nimi: " + sisend + System.lineSeparator();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment