• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Задачка

  • Автор темы Автор темы ferrum
  • Дата начала Дата начала
F

ferrum

Добрый день,дорогие форумчане!Я битый час сижу над задачкой и никак не могу ее сделать...Надеюсь найдется тот,кто сможет сделать ее..буду очень очень благодарен.. даны 4 числа:a,b,c,d.Если среди них одно положительное,то наименьшее из этих чисел увеличить на полусумму оставшихся.если среди них ровно три положительных,то наибольшее из этих чисел возвести в квадрат.В противном случае минимальное число заменить на максимальное из отрицательных.вывести все числа
 
C++:
//
std::vector<float> Num4;
float temp;
for(int i=0;i<4;i++)
{
std::cin>>temp;
Num4.push_back(temp);
}
std::sort(Num4.begin(),Num4.end());
if(Num4[3]>0 && Num4[2]<0)
{
temp=0;
for(int i=1;i<4;i++)
temp+=Num4[i];
Num4[0]+=temp/2;
}
else
{
if(Num4[0]<0 && Num4[1]>0)
Num4[3]*=Num4[3];
else 
{
if(Num4[3]<0)
std::swap(Num4[0],Num4[3]);
else
std::swap(Num4[0],Num4[1]);
}
}
for(int i=0;i<4;++i)
std::cout<<Num4[i]<<" ";
std::cout<<"\n";
//
не проверял
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab