1. Мегаконкурс в апреле "Приведи друзей на codeby". Дарим деньги, подписку на журнал хакер и выдаем статус "Paid Access". Подробнее ...

    Скрыть объявление

Нелинейные и циклические алгоритмы

Тема в разделе "C/C++/C#", создана пользователем Mauricio, 24 ноя 2010.

Наш партнер Genesis Hackspace
Статус темы:
Закрыта.
  1. Mauricio

    Mauricio Гость

    Для массива вещественных чисел X[L]={x | i= } (L<100) и вещественных чисел p и t найти произведение и сумму членов последовательности x[0], x[1], ... x[L-1] удовлетворяющих неравенству p < f( x ) < t, где

    f(x)=x[sup][/sup]3 для x<0
    x[sup][/sup]2 для x>=0
    Решал и чет никак задача вроде протая :)( но прям завяз
     
  2. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.339
    Симпатии:
    0
    Что то я условие вообще не понял.. Опиши по понятнее и покажи как пробовал.
     
  3. BashOrgRu

    BashOrgRu Well-Known Member

    Регистрация:
    15 мар 2009
    Сообщения:
    78
    Симпатии:
    0
    Как я понял, дан массив x[0]...x[L], сотоящий из вещественных чисел, и два вещ-ых числа p и t, надо найти сумму и произведение элeментов массива, которые удовлетворяют условию: p<f(x)<t, где f(x)=x^3 если x<0, и f(x)=x^2 при х>=0.
     
  4. BashOrgRu

    BashOrgRu Well-Known Member

    Регистрация:
    15 мар 2009
    Сообщения:
    78
    Симпатии:
    0
    Если ничего не попутал в операция с вещ-ыми числами.
    Писал щас прям в окне редактирования, не тестировал. Просьба отписаться о работе)

    Код (C++):
    #include <stdio.h>
    #include <stdlib.h>

    int IsFunc(double x,double p, double t){
    double f;

    if (x>=0) f=x*x;
    if (x<0) f=x*x*x;
    if (f>p && f<t) return 1;
    return 0;
    }

    int main(){
    const L=10;
    double x[L],p,t,Sum=0,Mply=1,Co=0;
    int i;
    /* читаем массив и числа p,t
    */

    for (i=0;i<L;i++)
    if (IsFunc(x[i],p,t){
    Co++;
    Sun+=x[i];
    Mply*=x[i];
    }
    if (Co==0) printf("Нету чисел, удовлетворяющих условию.\n");
    else printf("Сумма чисел=%f\nПроизведение чисел=%f\n",Sum,Mply);
    return 0;
    }
     
  5. Mauricio

    Mauricio Гость

    Спасибо большое BashOrg !!Сори что не заходил прост инета не было :rolleyes: Все правильно поняли))
     
Статус темы:
Закрыта.

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