+ 4

Помогите, пожалуйста!

Задача: Измените один знак в математической операции так, чтобы в ответе получилось число 5. Код: int a = 5; int b = 1; int c = a / (20 + 4) * b; System.out.println(c); Никак не соображу 🤦‍♀️ Ответ: int c = a % (20 + 4) * b; Спасибо за помощь Aaron Lee объяснение: a % b == a — a / b 3 % 7 == 3 — 3 / 7 == 3 — 0 == 3

3rd Oct 2023, 2:36 PM
Ruzilya
Ruzilya - avatar
24 Antworten
+ 1
Ответ верный, а вот объяснение гораздо проще: "если делимое по модулю число меньше делителя, то результат всегда будет равен делимому числу". То есть: 5%24=5;
5th Oct 2023, 8:36 PM
Solo
Solo - avatar
+ 4
"If numerator is less than denominator then % will give output as the numerator only." a % b returns the remainder of dividing a by b. So when b is greater than a, the remainder will be a. https://www.google.com/amp/s/www.geeksforgeeks.org/modulo-or-remainder-operator-in-java/amp/?espv=1
4th Oct 2023, 8:28 PM
Aaron Lee
Aaron Lee - avatar
+ 3
Exercise is complete and correct. Think of it as a java program, not just math. How many operators does Java have?
4th Oct 2023, 5:41 AM
zemiak
+ 3
Ruzilya даа, ощущение, что не хватает какого-то условия, потому что то, что ты показала, похоже на некорректное задание, ну, либо мы две тупицы))😂
4th Oct 2023, 7:00 AM
Tatyana Mironova
Tatyana Mironova - avatar
+ 2
Your output is "c", so "c" needs to equal 5. How can you change: a / (20 + 4) * b to equal 5? If a = 5 and b = 1 5 / (20 + 4) * 1 or, simplified: 5 / (20 +4) Which of those two signs (/, +) can you change to make it equal 5?
4th Oct 2023, 1:33 AM
Aaron Lee
Aaron Lee - avatar
+ 2
Tatyana Mironova задание точно полное, но как решить, не пойму пока😅
4th Oct 2023, 6:12 AM
Ruzilya
Ruzilya - avatar
+ 2
Aaron Lee yeah, I get the task but what I do not get is how is it possible to make 'c' value equal 5. I can change the plus sign to division and it'll be 1 then. Do you know how to get 5? 😯
4th Oct 2023, 6:59 AM
Tatyana Mironova
Tatyana Mironova - avatar
+ 2
Change the "/" to "%": 5 % (20 + 4) * 1 = 5
4th Oct 2023, 8:00 PM
Aaron Lee
Aaron Lee - avatar
+ 2
Воооу, вот это очень полезное знание 😯 Знать не знала про эту фишку у деления по модулю
4th Oct 2023, 8:34 PM
Tatyana Mironova
Tatyana Mironova - avatar
+ 1
Что-то как-то странно 🤔 Тут получается 1, а 5, кажется, малость невыполнимо в данном случае. А это полное задание? Точное? Мне аж интересно теперь, как там можно получить 5)
4th Oct 2023, 4:35 AM
Tatyana Mironova
Tatyana Mironova - avatar
+ 1
Tatyana there is in fact one sign you can change to get it to equal 5.
4th Oct 2023, 5:07 AM
Aaron Lee
Aaron Lee - avatar
+ 1
Aaron Lee спасибо за подробный ответ! Но я никак не пойму(( можно ли использовать оператор if? Только он пришел на ум
4th Oct 2023, 6:15 AM
Ruzilya
Ruzilya - avatar
+ 1
Tatyana Mironova второе более правдоподобнее 🤣 нет мышления как java разработчика🫣 у меня в голове лишь: + - / * ++ - - % И никак не могу получить 5🤦‍♀️
4th Oct 2023, 7:10 AM
Ruzilya
Ruzilya - avatar
+ 1
Tatyana Mironova а задание дейсвительно такое, но тут будто не просто математика, а что-то еще 🤪
4th Oct 2023, 7:11 AM
Ruzilya
Ruzilya - avatar
+ 1
Aaron Lee thanks for the answer! can you please explain, why 5%24=5?
4th Oct 2023, 8:14 PM
Ruzilya
Ruzilya - avatar
+ 1
Нашла объяснение! Спасибо за помощь Aaron Lee a % b == a — a / b 3 % 7 == 3 — 3 / 7 == 3 — 0 == 3
4th Oct 2023, 8:27 PM
Ruzilya
Ruzilya - avatar
+ 1
Aaron Lee thank you very much for your help and explanation!!!🙏🏼🥳
4th Oct 2023, 8:31 PM
Ruzilya
Ruzilya - avatar
+ 1
Tatyana Mironova анологично🙈
4th Oct 2023, 8:42 PM
Ruzilya
Ruzilya - avatar
+ 1
in java 21 specification (chapter 15.17.3.) "The remainder operation for operands that are integers /.../ produces a result value such that (a/b)*b+(a%b) is equal to a." it means a % b = a - a / b * b; where ex. int(5/3) = not 1.666 but 1 and backward 1 * 3 = 3 and 2 is remainder then 3 + 2 = 5
4th Oct 2023, 10:13 PM
zemiak
+ 1
Solo спасибо😌
11th Oct 2023, 11:26 AM
Ruzilya
Ruzilya - avatar