[JS] Operators and Expressions - All homework tasks


33

   Понеже не за всички задачи има пуснати теми, а имаше коментари от онлайн учасници, че им е трудно, а и за да не се пуска тема за всяка една задача по отделно, реших да пусна всички задачи за темата Operators and Expressions тук накуп.

Javascript файла за конзолата като и css файла можете да видите или свалите също от моето хранилище в git.hub


1. Write an expression that checks if given integer is odd or even.
Demo.
Source code.
    2. Write a boolean expression that checks for given integer if it can be divided (without remainder) by 7 and 5 in the same time.
Demo.
Source code.
    3. Write an expression that calculates rectangle’s area by given width and height.
Demo.
Source code.
    4. Write an expression that checks for given integer if its third digit (right-to-left) is 7. E. g. 1732 -> true.
Demo.
Source code.
    5. Write a boolean expression for finding if the bit 3 (counting from 0) of a given integer is 1 or 0.
Demo.
Source code.
    6. Write an expression that checks if given print (x,  y) is within a circle K(O, 5).
Demo.
Source code.
Използвам питагорова теорема (x^2 + y^2 < r^2) за проверката дали числото е в или извън окръжността.
    7. Write an expression that checks if given positive integer number n (n <= 100) is prime. E.g. 37 is prime.
Demo.
Source code.
Въртя цикъл по i и проверявам дали числото % i е 0, ако е 0 значи не е просто. Трябва да не се дели с остатък 0 на нито едно друго число освен на себеси.
    8. Write an expression that calculates trapezoid's area by given sides a and b and height h.
Demo.
Source code.
    9. Write an expression that checks for given point (x, y) if it is within the circle K( (1,1), 3) and out of the rectangle R(top=1, left=-1, width=6, height=2).
Demo.
Source code.
Проверявам дали точката е в окръжността както на зад.6 и дали е  в правоъгълника. Ако пътвото условие е true, а второто false, значи задачата е изпълнена.

Надявам се този мой пост да е полезен за някого, а не да се възприеме като спам.




Отговори



3

Моето решение на зад.4:TirthDigitIs7OrNot e тук:https://github.com/stoyanovalexander/TheRepositoryOfAlexanderStoyanov/blob/master/01.OperatorsAndExpressions/OperatorsAndExpressions/04.IsThirdDigitSeven.html

Основната разлика е че аз извеждам като резултат TRUE/FALSE. Виж ред 20.

Моето решение на зад.3: RectangleArea е тук:https://github.com/stoyanovalexander/TheRepositoryOfAlexanderStoyanov/blob/master/01.OperatorsAndExpressions/OperatorsAndExpressions/03.RectangleArea.html

Разликата е че аз нямам функции бутони и така на татък, следователно твоето решение е по-изпипано.

Моето решение на зад.2:DivadedBy5And7 e тук:https://github.com/stoyanovalexander/TheRepositoryOfAlexanderStoyanov/blob/master/01.OperatorsAndExpressions/OperatorsAndExpressions/02.dividedBy5And7.html

Разликата е че аз проверявам дирецтно да ли числото се дели на 35  ЗАЩОТО 5 и 7 са прости числа.

 


от alexander (147 точки)


0

На задача 5. има грешка:

number: 8 

Third bit of number 1000 is:1

-------------------------------------------------------------------------------------------------------

 

Аз го реших със стринг:

bin = num.toString(2); 

third = bin.slice(2,3); 

нататък вече е ясно 

smiley


от ivailomd (0 точки)


0
не е грешно - в условието пише the bit 3 (counting from 0), ако бройм от 0 3-тия бит е 4-тия, в твоя пример 1000 е точно 1

от AsenVal (3487 точки)

0
верно моя грешка

от ivailomd (0 точки)


1

"Надявам се този мой пост да е полезен за някого, а не да се възприеме като спам."

Със сигурност е много полезен за всички, които тепърва навлизат в дебрите на програмирането (като мен :) ). Аз поне съм ти благодарна!




2

На първа задача си разменил odd и even, което сигурно е техническа грешка. На мен също ми е полезно домашното!

edit: Ето и моето демо и код.


от shristoff (747 точки)


0
мерси колега, оправено е

от AsenVal (3487 точки)


1

В 8-ма нямаш ли грешка? Нали формулата е a+b/2 * h или се бъркам нещо? А и самия ти код не смята правилно... при мене се получва същото и мисля, че е от това кой оператор е с привилегии... само, че не знам как точно да го напиша, че да го смята правилно...


от pe6eto (222 точки)


0
дай пример, кога не смята правилно, аз като го гледам си е ок. Формулата е: (a+b)/2 * h.

от AsenVal (3487 точки)

0
Ми на мене не ми го смята правилно, написал съм jsConsole.writeLine(sideA + sideB) * height / 2 и вместо да ми събере цифрите, ми ги слепя една до друга... например: 2 +2 не ми го смята да е 4, а ми го прави да е 22. Имаш ли идея как се оправя това?

от pe6eto (222 точки)



2

Здравейте, Още един пълен комплект задачи. Правил съм ги на VS като solution(asp empty project). Кодът с леки изключения е същият както този от C# домашните

 

https://github.com/luzterin/JavaScript1/tree/master/04.OperatorsExpressionsStatements




4

1

http://jsfiddle.net/F569G/

Ето ги и моите решения.

Сложил съм ги в един файл, като всяка задача е в отделна функция, която връща резултат, който се изписва на страницата.

 


от ipenev (1013 точки)


2
Всичко е супер, само не разбирам този скрипт за конзолата откъде идва? Какво би ми било необходимо като знания, за да мога да го пиша сам, а не да го копирам.

от rodi1i (237 точки)


0
Трябват ти основни знания по HTML и CSS. :)


0
За HTML документа ми е ясно, за CSS също, но този външен js файл ме притеснява. Защо се пише? Каква функция има?

от rodi1i (237 точки)


1

Здравейте,

Колега rodi1i, скриптът не изисква особенни познания. Мисля, че е авторски на Дончо. Най-вероятно не му е допаднало да демонстрира през конзолата. Във втората част на js ще придобиеш уменията да си я направиш сам.

Ето моите решения по темата.

За по-голяма четливост съм ги отделил на файлове.

Поздрави!


от nikolaikolarov (2177 точки)