Питанка за Arithmetics

Здравейте!

Решавам си аз задачката със Маth pow…
И ми я приема на 20%?

Кодът е тук - https://pastebin.pl/view/b801a4c3

Задачката тук - https://learn.telerikacademy.com/mod/page/view.php?id=5363

Има ли нещо, което пропускам или правя грешно?

1 Like

Здравей,

на ред 10 си разменил местата на num1 и num2
System.out.println(num2 - num1);
трябва да е
System.out.println(num1-num2);

Поздрави,
Ники

1 Like

Привет!
Хммм, аз явно съм се забатачил от обяснението че трябва да извадя b от а (a is subtracted from b).
Много благодаря, Ники!

Поздрави,
Павел

Здравей. Не ми позволява да отворя линка със задачата, но ако съдя по името Й я имам и ето решението Й: https://pastebin.com/TeKrtmmS

Здравейте!

На мен отговорите ми се получават, но ми дава Wrong answer. Не мога да си обясня защо. Може ли някой да погледне ? :slight_smile:

Това е твоя код, но с коментари от мен:

package com.company;

import java.util.Scanner;

public class Aritmetics {
public static void main (String [] args) {
Scanner scanner = new Scanner(System.in);
Scanner scanner1 = new Scanner(System.in); <— защо слагаш два скенера? Няма нужда, един си е достатъчен.

    String a = scanner.nextLine();<--| няма нужда от този String

    String b = scanner.nextLine();<--| няма нужда от този String

    int a1 = Integer.parseInt(a); -> Това го напиши така: int a1 = Integer.parseInt(scanner.nextLine());
    int b1 = Integer.parseInt(b);  -> Това го напиши така: int b1 = Integer.parseInt(scanner.nextLine());

    int sum = a1 + b1;
    int difference = a1 - b1;
    int product = a1 * b1;
    int remainder = a1%b1;
    int result = a1*b1; <--- тук имаш грешка, трябва да е double result = Math.pow(a,b) <--- защото търсиш a1 вдигнато на степен b1

    System.out.printf ("%d%n", sum);
    System.out.printf ("%d%n", difference);
    System.out.printf ("%d%n", product);
    System.out.printf ("%d%n", remainder);
    System.out.printf ("%d%n", result); <--- след като сме сменили променливата на double, ще  трябва да сменим и записа с printf и той ще стане така: System.out.printf ("%.0f", result);
    
}

}

С други думи трябва да стане това (това е твоя код, поправен от мен):

import java.util.Scanner;

public class Arithmetics {
public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
      

        int a1 = Integer.parseInt(scanner.nextLine());
        int b1 = Integer.parseInt(scanner.nextLine());

        int sum = a1 + b1;
        int difference = a1 - b1;
        int product = a1 * b1;
        int remainder = a1%b1;
        double result = Math.pow(a1,b1);

        System.out.printf ("%d%n", sum);
        System.out.printf ("%d%n", difference);
        System.out.printf ("%d%n", product);
        System.out.printf ("%d%n", remainder);
        System.out.printf ("%.0f", result);

    }
}

Надявам се да помогнах, ако има нещо, пиши (:

2 Likes

Може да използваш този сайт, за да ти помогне в тази задача: List of Arithmetic and Common Math Symbols | Math Vault

Благодаря на отзовалите се!
Ники беше прав, объркал съм местата на цифрите.
@galintodorov.it Интересно е как си го направил, ще го разуча.

E супер, много благодаря! :slight_smile: определено ми се изясниха някои неща.

Радвам се, че успях да помогна.

1 Like