Mikä tässä koodissa mättää kun MOOC tarkistus antaa vain 88% pisteistä.
Ulos tulee virhe: Komennon ratkaise sammuta, tulee ohjata robotti työntämään laatikko kohdealueelle. Eli mitä se tarkoittaa?
-------------------------------------------------------------------------------------------------------
import java.util.Scanner;
import robotti.Ohjain;
public class Paaohjelma {
public static void main(String[] args) {
Scanner lukija = new Scanner(System.in);
Ohjain.asetaLaatikkoSatunnaisesti();
Ohjain.kaynnista();
// kertoo robotin x- ja y-koordinaatit
int robottiX = Ohjain.robottiX();
int robottiY = Ohjain.robottiY();
// kertoo laatikon x- ja y-koordinaatit
int laatikkoX = Ohjain.laatikkoX();
int laatikkoY = Ohjain.laatikkoY();
// kertoo rahtialueen x- ja y-koordinaatit
int tavoiteX = Ohjain.tavoiteX();
int tavoiteY = Ohjain.tavoiteY();
while (true) {
System.out.print("Komento (sammuta, vasen, oikea, liiku, liikuMonta, ratkaise): ");
String komento = lukija.nextLine();
if (komento.equals("sammuta")) {
Ohjain.sammuta();
break;
} else if (komento.equals("vasen")) {
Ohjain.vasen();
} else if (komento.equals("oikea")) {
Ohjain.oikea();
} else if (komento.equals("liiku")) {
Ohjain.liiku();
} else if (komento.equals("liikuMonta")) {
System.out.print("Kuinka monta askelta: ");
int askel = Integer.parseInt(lukija.nextLine());
Ohjain.liikuMonta(askel);
} else if (komento.equals("ratkaise")) {
Ohjain.vasen();
int laatikolleY = laatikkoY - robottiY;
int laatikolleX = laatikkoX - robottiX;
int tavoitteelleY = tavoiteY - laatikkoY;
int tavoitteelleX = tavoiteX - laatikkoX - 1;
Ohjain.liikuMonta(laatikolleY);
Ohjain.oikea();
Ohjain.liikuMonta(laatikolleX);
Ohjain.liikuMonta(tavoitteelleX);
Ohjain.vasen();
Ohjain.liiku();
Ohjain.oikea();
Ohjain.liiku();
Ohjain.oikea();
Ohjain.liikuMonta(tavoitteelleY);
Ohjain.liiku();
Ohjain.liikuMonta(tavoitteelleX);
}
}
}
}
MOOC tehtävä 24 mättää!
10
2019
Vastaukset
- paakalloohjelma
Muistuttaa aika paljon C-kieltä JAVA kyllä, tiedän erään ammattikorkean yliopettajan joka tietäisi noista, itse en JAVA:a en juurikaan tunne, C:tä sekä Assemblyä kyllä.
Muuta funktion nimeksi "Paakalloohjelma" - Javaw
Sulla on break-lause tossa ekassa if-lauseessa, jolloin metodin suoritus loppuu.
Break vain switch...caseihin ja looppeihin.- 3Timo
Ja en nyt me varmaks sanomaan, mut yleensä hyviin btapoihin kuuluu alustaa muuttujat (yleensä nollaks) ennenkuin niitä aletaan käyttämään? Nythän tossa pelkästään luetaan noi robotin ajurin antamat koordinaatit, jotka voi alkutilanteessaan olla ihan mitä tahansa!?
- aloittelija
Vastaus tulee hiukan myöhässä. Itsekkin jonkun aikaa tehtävää pähkäilin, mutta kokeile tuolla (ellet jo ole ratkaisua keksinyt) :
// Robotin ohjaus
int laatikolleY = laatikkoY - robottiY;
int laatikolleX = laatikkoX - robottiX;
int tavoitteelleY = laatikkoY - tavoiteY;
int tavoitteelleX = tavoiteX - laatikkoX;
Ohjain.vasen();
Ohjain.liikuMonta(laatikolleY);
Ohjain.oikea();
Ohjain.liikuMonta(laatikolleX);
Ohjain.liikuMonta(tavoitteelleX - 1);
Ohjain.vasen();
Ohjain.liiku();
Ohjain.oikea();
Ohjain.liiku();
Ohjain.oikea();
Ohjain.liikuMonta(tavoitteelleY);- Koodaajaksiko
Ei toimi näin, sillä jos robotti lähtee vierestä, niin se tekee saman kaavan ylempänä. Tämä tehtävä on vaikea...
- poweruser
ei vitun takkutukka
- ayyadf
Onko kellää 100% koodia?
- ystävällinen_herrasmies
100% koodi
https://tmc.mooc.fi/mooc/paste/JvPjIDrgfaRYRu4VLb8lyQ - jolan
YLEMPI EI TOIMIKKAAN SORI; UUSI
http://pastebin.com/raw/KEtVAhRz- close
Tuo oli ihan hyvä yritys, mutta ei kuitenkaan oikea vastaus. Vaikka järjestelmä sen hyväksyisikin niin tehtävänannossa on sanottu, että "Komennon "ratkaise" tulee toimia myös silloin, kun se annetaan komennon "viereen" jälkeen.", jota tämä kyseisen koodi ei toteuta.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Näitä venäjä-faneja tuntuu edelleen vaan riittävän - kummallista
ja lähinnä siis ihan suomalaisia. Mitä hienoa ja hyvää he näkevät maassa joka on diktatuuri, maassa jossa ei ole sananv4123249Sanna on pakottaja, domina
Pakotti sadistisessti työttömät hakemaan töitä, josta seurasi hirmuinen työttömyys. Näin on asia, jos uskomme Hesarin k1002426Ulkoistin makuaistini Yleisradiolle
Nyt voimme luottaa siihen, että Virallinen Totuus tekee maistelutyön puolestamme. Me persulandiassa arvostamme priimaa,12339On ilmiselvää, että väärä maahanmuutto on Suomea pilannut jo paljon
Väärä maahanmuutto tarkoittaa siis tulijoita Lähi-Idän ja Afrikan islamilaisista maista, eli muslimeita. He ovat kiistat402264Skodan hankintaan painostaminen toi potkut
Kylläpä on kovat keinot käytössä, kun on yritetty pakottaa hankkimaan Skoda painostuskeinoilla. Kyllä valinnan pitää oll242032Niinistö neliraajajarrutteli Natoon liittymistä vielä sodan alettua
Myöntää nyt itsekin, mikä jo aikaisemmin tiedettiin. Marin vei Suomen ja Ruotsin Natoon. "”Myönnän auliisti jarruttelle1901544Kokoomus on Suomen kommunistisin puolue
"Hallituksessa on erimielisyyttä siitä, kuinka suuri osa veronkiristyksestä hyvitetään datakeskuksille uudella erillisel121362Sukupuolen merkitys elämässäsi?
Jäin tuossa toista ketjua lukiessani miettimään seuraavaa ... Kuinka paljon koet sukupuolesi vaikuttavan/vaikuttaneen el2021160Kyllä minua hävettää nainen tämä tilanne
niin kuin se teki silloin aiemminkin. Monellakin tasolla ei minulta sopivaa. Herätät minussa vain niin vahvoja tunteita,441112- 931041