Loading...
Iskren.1990 avatar Iskren.1990 6 Точки

Задача 8 упражнение: Условни конструкции

Здравейте,

Изкарвам 86 точки на задачата (Тест 6 и 8 са грешни).

Знам и видях решения на задачата, искам да разбера къде греша.

function solve(input) {

let income = Number(input.shift());

let midRes = Number(input.shift());

let minSal = Number(input.shift());

 

let Scol = midRes * 25

let socScol = minSal * 0.35

 

if (midRes < 4.5) {

console.log(`You cannot get a scholarship!`);

}

 

if (midRes >= 5.5) {

if (income > minSal) {

console.log(`You get a scholarship for excellent results ${Math.floor(Scol)} BGN`);

} else if (Scol >= socScol) {

console.log(`You get a scholarship for excellent results ${Math.floor(Scol)} BGN`);

} else {

console.log(`You get a Social scholarship ${Math.floor(socScol)} BGN`);

}{

 

}

}

 

if (midRes < 5.5) {

if (income > minSal) {

console.log(`You cannot get a scholarship!`);

}

else {

console.log(`You get a Social scholarship ${Math.floor(socScol)} BGN`);

}

}

}

Тагове:
0
Programming Basics with JavaScript 05/08/2019 10:24:50
mark79 avatar mark79 639 Точки

Здравей,

макар да не е най-елегантното решение и това ще мине.

Трябва да се добави малка проверка в третия if, иначе при стойност под 4.5 ще влиза и в него.

    if (midRes >= 4.5 && midRes < 5.5) {

Друг вариант е да използваш if .. else конструкция на проверките, което също ще поправи нещата.

Поздрави :)

PS -> Тук може да разгледаш и едно по-кратко решение без толкова проверки.

0
05/08/2019 14:41:13
Iskren.1990 avatar Iskren.1990 6 Точки

Имаш в предвид :

if (midRes >= 5.5) {

if (income > minSal) {

console.log(`You get a scholarship for excellent results ${Math.floor(scol)} BGN`);

} else if (scol >= socScol) {

console.log(`You get a scholarship for excellent results ${Math.floor(scol)} BGN`);

} else {

console.log(`You get a Social scholarship ${Math.floor(socScol)} BGN`);

}

Не използвам && понеже се предполага, че до този момент не би трябвало да ги знам.

 

Благодаря, очевидно имам пропуски :)

0
05/08/2019 16:07:58
mark79 avatar mark79 639 Точки

Е, то не се предполага, че си запознат и с вложени условни конструкции, но ги ползваш.

Ето нагледно какво имам предвид.

    if (midRes < 4.5) {
        console.log(`You cannot get a scholarship!`);
    } else if (midRes >= 5.5) {
        if (income > minSal) {
            console.log(`You get a scholarship for excellent results ${Math.floor(Scol)} BGN`);
        } else if (Scol >= socScol) {
            console.log(`You get a scholarship for excellent results ${Math.floor(Scol)} BGN`);
        } else {
            console.log(`You get a Social scholarship ${Math.floor(socScol)} BGN`);
        }
    } else if (midRes < 5.5) {
        if (income > minSal) {
            console.log(`You cannot get a scholarship!`);
        } else {
            console.log(`You get a Social scholarship ${Math.floor(socScol)} BGN`);
        }
    }

Ако има нещо, което не е съвсем ясно - сега му е времето да питаш.

1
05/08/2019 16:51:19
Iskren.1990 avatar Iskren.1990 6 Точки

Бях го направил със същата логика и последователност, но с грешки в синтаксиса.

Вложената конструкция докарах по логика, затова съм я използвал.

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

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.