Scholarship
#include <iostream>
using namespace std;
int main()
{
double income;
double results;
double minSalary;
cin >> income >> results >> minSalary;
double scholarshipS = minSalary*35/100;
double scholarshipE = results*25;
if (results >= 5.5)
{
if (scholarshipE >= scholarshipS || income>minSalary){
cout << "You get a scholarship for excellent results " << scholarshipE << " BGN";
}
else {
cout << "You get a Social scholarship " << scholarshipS << " BGN";
}
}
else if (income < minSalary && results > 4.5 )
{
cout << "You get a Social scholarship " << scholarshipS << " BGN";
}
else {
cout << "You cannot get a scholarship!";
}
}
Учениците могат да кандидатстват за социална стипендия или за стипендия за отличен успех. Изискване за
социална стипендия - доход на член от семейството по-малък от минималната работна заплата и успех над
4.5. Размер на социалната стипендия - 35% от минималната работна заплата. Изискване за стипендия за
отличен успех - успех над 5.5, включително. Размер на стипендията за отличен успех - успехът на ученика,
умножен по коефициент 25.
Напишете програма, която при въведени доход, успех и минимална работна заплата, дава информация дали
ученик има право да получава стипендия, и стойността на стипендията, която е по-висока за него.
Вход
Потребителят въвежда 3 числа, по едно на ред:
1. Доход в лева - реално число в интервала [0.00..6000.00]
2. Среден успех - реално число в интервала [2.00...6.00]
3. Минимална работна заплата - реално число в интервала [0.00..1000.00]
Изход
Ако ученикът няма право да получава стипендия, се извежда:
"You cannot get a scholarship!"
Ако ученикът има право да получава само социална стипендия:
"You get a Social scholarship {стойност на стипендия} BGN"
Ако ученикът има право да получава само стипендия за отличен успех:
"You get a scholarship for excellent results {стойност на стипендията} BGN"
Ако ученикът има право да получава и двата типа стипендии, ще получи по-голямата по сума, а ако
са равни ще получи тази за отличен успех.
Резултатът се закръгля до по-малкото цяло число.
Примерен вход и изход
Вход Изход Обяснения
© Software University Foundation. This work is licensed under the CC-BY-NC-SA license.
Follow us: Page 11 of 11
480.00
4.60
450.00
You cannot get a
scholarship!
Доходът от 480 лв. е по-висок от минималната работна
заплата 450 лв. → ученикът не може да получава
социална стипендия.
Успех 4.60 < 5.50 → ученикът не може да получава
стипендия за отличен успех.
Ще ми трябва малко помощ!
Това е моето решение:
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int main()
{
double income, gpa, minWage;
cin >> income >> gpa >> minWage;
//cin >> gpa;
//cin >> minWage;
double scholarshipSoc = floor(0.35 * minWage);
double scholarshipExc = floor(25 * gpa);
if (income > minWage && gpa < 5.5)
{
cout << "You cannot get a scholarship!";
}
else if (income < minWage && gpa < 4.5)
{
cout << "You cannot get a scholarship!";
}
else if (income < minWage && gpa >= 4.5 && gpa < 5.5)
{
cout << "You get a Social scholarship " << scholarshipSoc << " BGN";
}
else if (gpa >= 5.5)
{
cout << "You get a scholarship for excellent results " << scholarshipExc << " BGN";
}
else if (scholarshipExc >= scholarshipSoc)
{
cout << "You get a scholarship for excellent results " << scholarshipExc << " BGN";
}
else if (scholarshipExc < scholarshipSoc)
{
cout << "You get a Social scholarship " << scholarshipSoc << " BGN";
}
return 0;
}