Задачка

Тема в разделе "C/C++/C#", создана пользователем ferrum, 30 сен 2013.

  1. ferrum

    ferrum New Member

    Регистрация:
    30 сен 2013
    Сообщения:
    1
    Симпатии:
    0
    Добрый день,дорогие форумчане!Я битый час сижу над задачкой и никак не могу ее сделать...Надеюсь найдется тот,кто сможет сделать ее..буду очень очень благодарен.. даны 4 числа:a,b,c,d.Если среди них одно положительное,то наименьшее из этих чисел увеличить на полусумму оставшихся.если среди них ровно три положительных,то наибольшее из этих чисел возвести в квадрат.В противном случае минимальное число заменить на максимальное из отрицательных.вывести все числа
     
  2. Whatka

    Whatka Well-Known Member

    Регистрация:
    9 окт 2011
    Сообщения:
    433
    Симпатии:
    4
    Код (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";
    //
    не проверял
     
Загрузка...
Похожие Темы - Задачка
  1. Hehabr
    Ответов:
    1
    Просмотров:
    482
  2. dmalsh
    Ответов:
    1
    Просмотров:
    1.005
  3. varenbko
    Ответов:
    0
    Просмотров:
    1.040
  4. Fillya
    Ответов:
    0
    Просмотров:
    1.091
  5. Gepard26
    Ответов:
    0
    Просмотров:
    1.113

Поделиться этой страницей