Когато в конзолата за вход въведа дума, програмата показва грешка. Някой би ли споделил начин, по който да преодолея проблема?
Ето го и кода https://pastebin.com/0Z9XxSEE
Пробвай да четеш символи с nextChar() В момента ти гърми четенето от конзолата.
Само едноцифрени числа ли ще четеш? Защото, ако имаш двуцифрени ще трябва да прочетеш string, да го превърнеш в масив от символи и с foreach например да минеш през всеки символ.
Пробвай с InputMismatchException;
import;java.util.InputMismatchException; - преди класа
try{ switch case
};(InputMismatchException ex){
System.out.println(“not a digit.”);
При мен работи но judge системата не го приема = предполагам, защото не съм изключила празен ред от входните данни. Ако знаеш как - сподели.
Числата, които ще чета са от 0-9 включително [0-9] , а при всяко друго извън този диапазон. или при въведена дума. трябва да ми покаже “not a digit” в като отговор в конзолата. Програмата ми гърми, когато въведа дума, и вместо да изпише not a dogit, ми показва грешка Exception in thread “main” java.util.InputMismatchException
Здравей
Реално ти получаваш някакъв текст(string) с различен брой символи. И ако получиш 0, като текст, трябва да отпечаташ “zero”… и така минаваш през целия switch и ако получения текст не отговаря на 0, 1… връщаш default “not a digit”.
Просто работи със стрингове
Диди
Здравей:slight_smile:
би ли ми казала, защо този код не минава в judge. https://pastebin.com/sQLSg6D3
Предварително благодаря.
Може ли да дадеш повече информация какъв точно е проблема в judge?
Здравей,
На case 4 ми дава Your output (clipped) not a digit и след това не ми дава резултат от case 5 до case 20 .
В catсh-a имаш “not a digit.”, с точка накрая. Предполагам се очаква “not a digit”, без точка.
Благодаря много. Точно това беше проблема:slight_smile:
Здравейте колеги!
може ли някой да ми погледне кода и да каже къде греша?
https://pastebin.com/5PEumkzC
Hey, избери дали ще сравниш int num с “==” , или string digit с .equals(“1”). Ти хем parse-ваш int num = Integer.parseInt(digit.trim()), хем после не го ползваш : )
например
if(num == 0){
System.out.println(“zero”);
}else if(digit.equals(“1”)){
System.out.println(“one”);
…
Ще ти е по-лесно да ползваш само string и case с default с него, защото иначе ще ти се усложни доста сравнението за това дали имаш дума на входа или различни цифри.
Благодаря!
Здравей,
Програмата не разпознава 0 като цифра.
Здравейте,
Може ли съвет защо Judge не ми приема решението?
Благодаря!
Здравей,
промени си променливата от тип стринг, за да може да прочита и отрицателните числа и би трябвало да стане.
Получи се, благодаря