Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
KorolevaE
2 / 2 / 0
Регистрация: 24.11.2012
Сообщений: 34
1

не могу разобраться с ошибкой

22.12.2012, 12:06. Просмотров 300. Ответов 5
Метки нет (Все метки)

Нарушение прав доступа при записи "0x001a0fc0". не могу понять где ошибка. программа на рекурсию

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
int F(int n, int m){
    if ((n*m)%2==1)  return min(n+m, m*n);
    return F((n*m)/2,m)+F(n,(n*m)/2);}
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale (LC_ALL, "RUS");
    int m, n;
    printf ("Введите n=");
    scanf ("%d", &n);
    printf ("Введите m=");
    scanf("%d", &m);
    printf ("F=%.2d\n", F(n,m));
    system ("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2012, 12:06
Ответы с готовыми решениями:

Не могу разобраться с ошибкой
В общем такой код Source.cpp #include &lt;iostream&gt; using namespace std;...

Не могу разобраться с ошибкой
Всю голову переломал почему он ругается на cout в 11 строке. Подскажите...

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

Не могу разобраться с ошибкой в проге
#include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;ctype.h&gt;...

Никак не могу разобраться с ошибкой.
Задание: Имеются числа х1,х2,...,хn.Расставить их в таблице размером (nхn)...

5
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 51
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
22.12.2012, 12:09 2
Цитата Сообщение от KorolevaE Посмотреть сообщение
return F((n*m)/2,m)+F(n,(n*m)/2);
Очень подозрительная строчка
0
ValeryS
Модератор
7313 / 5556 / 704
Регистрация: 14.02.2011
Сообщений: 18,836
22.12.2012, 12:10 3
Цитата Сообщение от KorolevaE Посмотреть сообщение
Нарушение прав доступа при записи "0x001a0fc0". не могу понять где ошибка. программа на рекурсию
рекурсия зацикливается
попробуй проанализировать при аргументах 2 2
0
KorolevaE
2 / 2 / 0
Регистрация: 24.11.2012
Сообщений: 34
22.12.2012, 12:23  [ТС] 4
при нечетных аргументах все работает, а вот при любых четных ошибка(

Добавлено через 5 минут
сама рекурсия выглядит так:
{min(n+m,m*n), если (n*m) - нечетно,
F(n,m) =
{F(n*m/2,m) + F(n,n*m/2) в остальных случаях
0
ValeryS
Модератор
7313 / 5556 / 704
Регистрация: 14.02.2011
Сообщений: 18,836
22.12.2012, 12:24 5
Цитата Сообщение от KorolevaE Посмотреть сообщение
при нечетных аргументах все работает, а вот при любых четных ошибка(
так у тебя зацикливание происходит вот стека и не хватает
смотри
C++
1
int F(int n, int m){
F(2,2)
C++
1
 if ((n*m)%2==1)  return min(n+m, m*n);
if ((2*2)%2==1)ложь идем ниже
C++
1
  return F((n*m)/2,m)
return F((2*2)/2,2)
return F(2,2) вернулись к первому зацикливание
C++
1
+F(n,(n*m)/2);}
до сюда даже не дойдет, а если случайно и дойдет
то тоже F(2,2)

Добавлено через 46 секунд
меняй алгоритм
0
KorolevaE
2 / 2 / 0
Регистрация: 24.11.2012
Сообщений: 34
22.12.2012, 12:32  [ТС] 6
Поняла, спасибо огромное!))
0
22.12.2012, 12:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2012, 12:32

Создайте класс, имитирующий работу биллинговой системы сотового оператора (Не могу разобраться с ошибкой)
вот текст программы Создайте класс, имитирующий работу биллинговой системы...

пом0гите разобраться с ошибкой
expected identifier before '(' token expected `;' before '(' token вот...

разобраться с ошибкой с3867 (msvs 2012)
#include &quot;stdafx.h&quot; #include &quot;Menu.h&quot; #include &quot;Labs.h&quot; void...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru