0 / 0 / 1
Регистрация: 02.02.2014
Сообщений: 4
1

Рекурсивная функция нахождения максимального положительного элемента одномерного массива

02.02.2014, 18:38. Показов 1437. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите с решением задачи.
Код приведен ниже, но в результате выходит непонятно что
Не могу сам разобраться
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*   Описать рекурсивную функцию max_pol(x,N)     */
/* которая находит максимальный из положительных  */
/*  элементовдействительного вектора х размером N */
 
#include <stdio.h>
#include <conio.h>
#define N 5
int main()
  {
    int x[N];
    int max_pol;
    /*    prototipi   */
    void inp_mas(int []);
    int job(int [],int j);
    void uslovie();
/*    osnovnoy algoritm */
    uslovie();
    inp_mas(x);
    max_pol=job(x, N);
 
    printf("\nmaksimalniy polozhitelniy element %d\n", max_pol);
    getch();
    return 0;
}
/* ===== vspomogatel'nie algoritmi: ===== */
void uslovie()
  {
  printf("Nayti maksimalniy polozhitelniy element.\n");
  }
/* === vvod icxodnogo massiva i vivod ego sostoyaniya === */
void inp_mas(int x[])
  { int i;
    printf("Vvedite elementi massiva (%d elementov):\n", N);
    for (i=0; i<N; i++)
    scanf("%d", &x[i]);
    getch();
    printf("Icxodniy massiv:\n");
    for (i=0; i<N; i++)
    printf("%5d", x[i]);
    getch();
  }
/* ==== recursivniy algoritm ==== */
int job(int x[], int j)
 {
  if(j<0)            /* uslovie zavercheniya recursii */
     return 0;
  else
    if(x[j]>x[j-1])
        return job(x, j-1)+1;   /* recurcivniy vizov */
    else
     return job(x, j-1);     /* recurcivniy vizov */
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.02.2014, 18:38
Ответы с готовыми решениями:

Вывести номер предпоследнего положительного элемента из одномерного массива
Нада вывести номер предпоследнего положительного элемента из одномерного массива

Функция для нахождения максимального и минимального элемента в строке
Написать функцию для нахождение максимального и минимального значений в строке матрицы. Вывести на...

Вычислить номер максимального элемента одномерного массива
В одномерном массиве, состоящем из n целых элементов, вычислить номер максимального элемента...

Нужны комментарии к программе нахождения индекса первого максимального элемента массива
Объясните как работает каждая строчка пожалуйста . Двумерный массив имеет n строк и М столбцов (...

1
Временно недоступен
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
02.02.2014, 23:35 2
Вроде работает
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <stdlib.h>
 
void rec(int n, int a[], int *max) ;
int main()
{
  int a[] = {10, -3, 6, 4,-7, 100, -1000};
  int max = -1;
  rec(7, a, &max);
    printf("max: %d\n", max);
    return 0;
}
void rec(int n, int a[], int *max) {
  if (n < 0) {
    return;
  }
  if (a[n] > 0 && a[n] > *max) {
    *max = a[n];
  }
  rec(n - 1, a, max);
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.02.2014, 23:35
Помогаю со студенческими работами здесь

Функция нахождения минимального элемента массива
Написать функцию нахождения минимального значения элемента массива.#include &lt;stdio.h&gt; #include...

Рекурсивная функция нахождения суммы цифр числа
Помогите, пожалуйста, написать рекурсивную функцию нахождения суммы цифр числа прототип функции...

Функция поиска максимального и минимального эл. одномерного масива
Ребят помогите написать программу УСЛОВИЕ:Написать функцию поиска максимального и минимального...

Объясните код нахождения максимального элемента матрицы
Объясните пожалуйста этот код. Желательно детально #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru