Найти максимальное среди значений функций, имеющих нечетную целую часть и количество таких значений - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Найти максимальное среди значений функций, имеющих нечетную целую часть и количество таких значений. Очень нужна помощь в решении этой задачки ... если не сложно, с объяснением пожалуйста

Решение задачи: «Найти максимальное среди значений функций, имеющих нечетную целую часть и количество таких значений»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <memory.h>
 
#define LEN 1024
 
typedef struct _FuncVal
{
    double x;
    double y;
}FVAL;
 
int main(int argc, char* argv[])
{
    FVAL* pFVal = new FVAL[LEN];
    memset((void*)pFVal, 0x00, sizeof(FVAL) * LEN);
 
    int d = 0;
    while (d < LEN) { pFVal[d].x = -1; pFVal[d].y = -1; d++; }
 
    int i = 0;
    for (double x = -0.99; x <= 1; x+=0.01)
        pFVal[i++].x = x;
 
    for (int n = 0; pFVal[n].x != -1; n++)
        pFVal[n].y = 10 * (1 + tanh(pFVal[n].x));
 
    for (int t = 0; pFVal[t].x != -1; t++)
        printf("x = %lf y = %lf\n",pFVal[t].x, pFVal[t].y);
 
    int max = 0;
    for (int k = 0; pFVal[k].x != -1; k++)
        max = (((int)pFVal[k].y % 2) != 0 && 
            pFVal[k].y > pFVal[max].y) ? k : max;
 
    int count = 0;
    for (int l = 0; pFVal[l].x != -1; l++)
        if ((int)pFVal[l].y == (int)pFVal[max].y) count++;
 
    printf("\nx = %lf y = %lf count = %d\n",pFVal[max].x, pFVal[max].y, count);
 
    _getch();
 
    return 0;
}

Объяснение кода листинга программы

В этом коде:

  1. Создается массив структур FVAL размером 1024.
  2. Все элементы массива инициализируются нулевыми значениями.
  3. В цикле заполняется первая компонента (x) массива структур FVAL значениями от -0.99 до 1 с шагом 0.01.
  4. Во втором цикле вычисляется вторая компонента (y) каждой структуры FVAL исходя из значения первой компоненты (x) и функции tanh.
  5. В третьем цикле выводятся значения x и y каждой структуры FVAL на экран.
  6. В четвертом цикле находится максимальное значение y среди нечетных целых значений y.
  7. В пятом цикле подсчитывается количество структур FVAL с максимальным значением y.
  8. Выводятся значения x, y и count на экран.
  9. В конце программы ожидается нажатие клавиши. Список переменных:
  10. LEN - размер массива.
  11. FVAL - структура, описывающая значения функций.
  12. pFVal - указатель на массив структур FVAL.
  13. d - счетчик заполнения массива.
  14. i - счетчик вывода значений функций на экран.
  15. x - текущее значение первой компоненты структуры FVAL.
  16. y - текущее значение второй компоненты структуры FVAL.
  17. max - номер структуры FVAL с максимальным значением y среди нечетных целых значений.
  18. count - количество структур FVAL с максимальным значением y.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.357 из 5
Похожие ответы