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

Ф-ции с рекурсиями - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Программа имитирует раздачу карт http://www.cyberforum.ru/cpp-beginners/thread82495.html
Программа имитирует раздачу карт. Если я переношу содержимое функции card_draw в main, то всё работет. Но задание надо выполнить используя функцию! Компилятор на предпоследней строчке, (cout<<...) выдаёт ошибку... #include <iostream> #include <conio.h> #include <math.h> #include <stdio.h> #include <stdlib.h> #include <time.h> using namespace std; int rand_0toN1(int n)
C++ Получить третий массив той же размерности, каждый элемент которого равен большему из соответствующих элементов данного массива Плиз, помогите решить задачу!!! Скоро сессия, не успеваю решить все задачи!!! Выручайте!!! Даны два целочисленных массива одинаковой размерности n. Получить третий массив той же размерности, каждый элемент которого равен большему из соответствующих элементов данного массива. Например, даны массивы А и В, получим массив С: i 0 1 2 3 4 a 14 2 7 8 9 B 3 6 ... http://www.cyberforum.ru/cpp-beginners/thread82482.html
Указатели C++
очень прошу, объясните пожалуста для чего нужны указатели? я знаю что это такое, но не могу понять зачем они нужны и как пользоваться!! и вот если можно задачка Дан целочисленный массив размера N. Вывести все содержащиеся в данном массиве нечетные числа в порядке возрастания их индексов, а также их количество K. мне сказали писать эту программу надо как раз с помощью указателей....
C++ Билет (Visual C++)
помогите решить билет Учусь на программиста, но за семестр много пропустил и не рублю вообще в этом и вылететь не хочу....вот билет... решить нужно через Visual C++ ( и желательно с пояснениями) пожалуйста не удаляйте...помогите... Вариант 7 Описать класс с именем MARSH, содержащий следующие элементы: • Поля: название начального пункта маршрута, название конечного пункта маршрута, номер ...
C++ перевести код на С++ в блок схему. http://www.cyberforum.ru/cpp-beginners/thread82433.html
На С++ написал прогу,а препод не верит,что писал её сам и требует блок схему к проге,а я в блок-схемах не шарю ... если кто сможет помочь буду премного благодарен ... код вроде не сложный ... #include<iostream.h> #include<math.h> void swap(int &x, int &y); void razbros(int *A, int n); void namesta(int *A, int n); void main() { int i, n,w,q;
C++ Turbo C++(матрица змейкой) Здравствуйте уважаемые программисты!!!Помогите с решением задачи на матрицу. Нужно просто ввести n колличество цифр и разполодить их в массиве в виде змейки. Например: 1 2 3 4 5 109 8 7 6 Заранее большое спасибо!!!! подробнее

Показать сообщение отдельно
SashaPinsk
 Аватар для SashaPinsk
39 / 37 / 2
Регистрация: 27.12.2009
Сообщений: 73
04.01.2010, 19:05     Ф-ции с рекурсиями
Ребята в этой проге реверс первой строки делается без проблем, но почему-то в последующих строках ф-ция реверс работает не правильно. Уже голову поломал на этом деле(так прога элементарная), так что буду очень признателен, если у кого-то найдётся время посмотреть эту прогу.
с уважением, начинающий программист,
который очень хочет научиться




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
53
//  Делает реверс строк, используя рекурсию.
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale.h>
#define numstring 3
#define numletter 20
void revers(char*,int);
int mylen(char*);
void main()
{
    int n,i;
    char **str;
    setlocale(LC_ALL, "Russian");
    str=(char**)malloc(numstring*sizeof(char*));
    for(i=0; i<numstring; i++)
    {
        str[i]=(char*)malloc(numletter*sizeof(char));
        printf("\nВведите строку: ");
        fflush(stdin);
        gets(str[i]);
        n=mylen(str[i]);
        if(n>numletter) 
        {
            printf("Ошибка");
            continue;
        }
        printf("\nСтрока %d до перевода: %s", i+1, str[i]);
        revers(str[i],n);
        printf("\nСтрока %d после перевода: %s", i+1, str[i]);
        printf("\ndlina %d =%d", i+1, mylen(str[i]));
    }
    
    getch();
}
 
void revers(char *str, int n)                  //ф-ция выполняющая переворот строки
{
    static int j=0;
    char a;
    a=*(str+j);
    *(str+j)=*(str+n-1-j);
    *(str+n-1-j++)=a;
    if(j<n/2) revers(str,n);
    else return;
}
 
int mylen(char *str)
{
    int j=0;
    while(str[j++]);
    return j-1;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru