Професионална програма
Loading...
+ Нов въпрос
revero avatar revero 0 Точки

09. Multiply by 2 от More Exercises

Добър ден колеги, може ли някакви насоки. Решавам го с input.shift(), джъдж хвърля грешка. Входа не е с масив доколкото го разбирам. а поне на мен не ми е известно как по друг начин да се вземат n пъти преди да се стигне до негативно число,

(  TypeError: input.shift is not a function )

Това е моето решение в VS code поне работи.

https://pastebin.com/u9fQ62GR

willystyle avatar willystyle 2130 Точки
function multiplay(...input){ 
    let command = Number(input.shift());
    let sum = 0; 
    while(true){
        if(command < 0){
            console.log("Negative number!");
            break;
        } 
        sum = command * 2;
        console.log(`Result: ${sum.toFixed(2)}`);
        command = input.shift();
    }
}

това е като използваш spread operator ..., другия ти вариант е да ползваш arguments, това вътре във функция ти дава масив от подадените аргументи.

0
revero avatar revero 0 Точки

Благодаря за насоките. тоя матерял мисля .че не сме го вземали още... Ще видя да намеря допълнителна информация как точно се прави.

0
quasimodo avatar quasimodo 1 Точки
Ето ти и решение с arguments.

function solve(area) {
    let args = Array.from(arguments)
    let result = 0;
    let i = 0;
    let n = args[i];

    while (n >= 0) {
        result = n * 2;
        console.log(`Result: ${result.toFixed(2)}`);
        n = args[++i];
    }

    if (n < 0) {
        console.log('Negative number!');
    }
}
0
revero avatar revero 0 Точки

Благодаря

0
NikiKa avatar NikiKa 15 Точки

import java.util.Scanner;

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

        double x = 0;
        Scanner scanner = new Scanner(System.in);
        for (int i = 1; i> 0; i++) {

            x = Double.parseDouble(scanner.nextLine());

            if (x < 0) {
                System.out.println("Negative number!");
                break;
            } else {
                System.out.printf("Result: %.2f%n",x*2);
            }

        }
    }
}
 

0