Форум программистов, компьютерный форум CyberForum.ru

Рекурсивная функция - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отделить корни уравнения графически. http://www.cyberforum.ru/cpp-beginners/thread90932.html
Ребята помогите решить такую задачку на си, если несложно. отделить корень уравнения графически. x*2^x=1.
C++ строка что здесь не правильно подскажите пожалуйста!!!при запуске программа сразу закрывается!! #include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> int main(){ char *str, str1 = "gotoxy(52,,y) y++; printf(\"%1.1f\",s)", *stemp; char *m = " , ", *m1="y++", *m2="y+=1"; int n; http://www.cyberforum.ru/cpp-beginners/thread90907.html
Прога на СИ!! C++
Надо написать задачку на Си!!! Даны целые числа n, m и вещественное число Х. Используя директиву #define для нахождения наибольшего из чисел, вычислить: S = max(n+m+x,n*m*x)+3*max(n*m^,x^) ^ - это квдрат незнаю как писать маленькую 2=( Если не трудно можете выслать на почту!! или вылажить Здесь... Кто поможет буду очень рад и благодарен...
C++ Подскажите программу
Здравствуйте. Изучаю си++. Уже есть опыт написания консольных приложений, хорошо знаю синтаксис. Все советуют изучать программирование с написания РЕАЛЬНОЙ программы. Подскажите пожалуйста, какую написать программу для виндоус, чтобы я смог с ней справиться (не очень тяжелую). Пожалуйста.
C++ Сдвиги http://www.cyberforum.ru/cpp-beginners/thread90825.html
Необходимо сдвинуть массив беззнаковых целых чисел, как единое число. Обычные сдвиги и циклические ... Подскажите, пожалуйста :) Добавлено через 20 минут void wshr(WORD32 * X, int s, int size) { WORD32 t = 0, c = 0; for(int i = 0; i < size; i++) { t = X;
C++ Сортировка в С++Борланд в.6 Подскажите кто нибудь как написать сортировку, ну чтоб из главного меню можно было поставить сортировать А-Я или Я-А предприятия Добавлено через 2 минуты то есть как отсортировать список :) подробнее

Показать сообщение отдельно
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2294 / 1664 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
29.01.2010, 21:28     Рекурсивная функция
belii0987, на C++ поставленную задачу можно решить так:
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
#include <iostream>
 
int Sum(const int* arr, int size, int index = 0)
{
  if(index == size)
    return 0;
 
  return (arr[index] % 2 == 0)? arr[index] + Sum(arr, size, index + 1) : Sum(arr, size, index + 1);
}
 
void Replace(int* arr, int size, int n, int index = 0)
{
  if(index == size)
    return;
 
  if(arr[index] < 0)
    arr[index] = n;
 
  Replace(arr, size, n, index + 1);
}
 
void Output(const int* arr, int size, int index = 0)
{
  if(index == size)
    return;
 
  std::cout << arr[index] << " ";
 
  Output(arr, size, index + 1);
}
 
int main()
{
  int       arr[] = {1, 2, -3, 4, 5, 6};
  const int size  = sizeof(arr) / sizeof(arr[0]);
 
  int sum = Sum(arr, size);
  
  Replace(arr, size, sum);
 
  Output(arr, size);
 
  return 0; 
}
Результат: http://codepad.org/w74H4J6I
На Си так:
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
#include <stdio.h>
 
int Sum(int* arr, int size, int index)
{
  if(index == size)
    return 0;
 
  return (arr[index] % 2 == 0)? arr[index] + Sum(arr, size, index + 1) : Sum(arr, size, index + 1);
}
 
void Replace(int* arr, int size, int n, int index)
{
  if(index == size)
    return;
 
  if(arr[index] < 0)
    arr[index] = n;
 
  Replace(arr, size, n, index + 1);
}
 
void Output(int* arr, int size, int index)
{
  if(index == size)
    return;
 
  printf("%d ", arr[index]);
 
  Output(arr, size, index + 1);
}
 
int main()
{
  int arr[] = {1, 2, -3, 4, 5, 6};
  int size  = sizeof(arr) / sizeof(arr[0]);
 
  int sum = Sum(arr, size, 0);
  
  Replace(arr, size, sum, 0);
 
  Output(arr, size, 0);
 
  return 0; 
}
Результат: http://codepad.org/YfbG4uTS
 
Текущее время: 06:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru