13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
|
1 | |
Неинициализированные локальные переменные03.03.2011, 23:34. Просмотров 38846. Ответов 22
Метки нет Все метки)
(
Меня интересует как обходить данные ошибки. В чем соль ошибок?
Проблема даже не в том что они есть, а то что компилятор останавливается и предлагает "продолжить" или "прервать" компиляцию, конечно если жать продолжить то программа выполняет код (в моём случае цикла) и выдаёт совершенно "не результат вычислений" а -1.#INFOO и -1.#INDOO что это означает??
0
|
|
03.03.2011, 23:34 | |
Неинициализированные локальные переменные warning C4700 Неинициализированные переменные Ошибка: неинициализированные переменные Ошибка, указывающая на неинициализированные переменные |
|
1998 / 1598 / 488
Регистрация: 31.05.2009
Сообщений: 2,990
|
|||||||||||
04.03.2011, 00:25 | 2 | ||||||||||
Инициализировать переменные.
В том, что в неинициализированных переменных содержится мусор.
2
|
13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
||||||
04.03.2011, 00:42 [ТС] | 3 | |||||
Спасибо. Ясно. Но допустим у меня есть код:
Код не рабочий я к нему факториал приклеиваю сейчас... Вот вся формула: Помогите добиться правильных вычислений.
0
|
13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
|
04.03.2011, 01:17 [ТС] | 4 |
Точнее при неправильном коде бесконечный пересчет, сейчас код более менее отрегулирован... и работает, но с ответами что то не так...
0
|
4849 / 3270 / 466
Регистрация: 10.12.2008
Сообщений: 10,569
|
||||||
04.03.2011, 02:54 | 5 | |||||
![]()
1
|
13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
||||||
04.03.2011, 03:03 [ТС] | 6 | |||||
Там не чего не инициализировано... Просто не решает в любых вариантах.
Вот инициализировано всё)) А в цикле смысл значение ставить?
Может у меня какая то неведомая хрень в самой формуле?... Не вроде, он даже y = 2; не считает...
0
|
4849 / 3270 / 466
Регистрация: 10.12.2008
Сообщений: 10,569
|
|||||||||||
04.03.2011, 03:37 | 7 | ||||||||||
fact(n);
что, правда думаешь, что эта штука может вычислять факториалы 100, 200 и так далее ? int допускает 32767
Добавлено через 3 минуты
1
|
13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
|
04.03.2011, 04:11 [ТС] | 8 |
А ну да, теперь ясно... длинная арифметика это что?
Добавлено через 12 минут Я вот это совсем не понял... знаю длинные типы long int, но про арифметику длинную...
0
|
4849 / 3270 / 466
Регистрация: 10.12.2008
Сообщений: 10,569
|
||||||
04.03.2011, 06:29 | 9 | |||||
ещё примеры
2^64 - unsigned long long int - fact(20) длинная арифметика - это когда число хранится в виде массива для длинной арифметики есть сторонние библиотеки (которые не входят в стандарт языка) wiki. длинная арифметика wiki. en. Arbitrary-precision_arithmetic
0
|
13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
||||||
04.03.2011, 12:48 [ТС] | 10 | |||||
Не длинная арифметика не выход. long int увеличил до 19 факториал... Вобщем стал использовать long double факториал 100 есть, ограничение поставлю... Мне не особо важна точность вычислений, главное что бы все работало и модули вызывались.
Добавлено через 1 час 42 минуты У меня должно срабатывать ограничение по EPS там и 10! не будет, может я его не правильно пишу? Или не понимаю что такое EPS? 10^-6 точность это EPS 1.e-6? или как...
0
|
В астрале
![]() 8028 / 4785 / 654
Регистрация: 24.06.2010
Сообщений: 10,558
|
|
05.03.2011, 02:41 | 11 |
Leningradeс, double не затащит факториал от 100. И long double. И ни один тип в С/С++.
1
|
4849 / 3270 / 466
Регистрация: 10.12.2008
Сообщений: 10,569
|
||||||
05.03.2011, 02:50 | 12 | |||||
![]() вполне
Код
[guest@localhost tests]$ ./t 9.332622e+157 9.425948e+159 [guest@localhost tests]$ но у него там фигурирует n в 500 я там ещё постил границы (видать у double дробная часть гарантирует 15 знаков, а целая гораздо больше хотя могу ошибаться, с этим ещё не разбирался)
2
|
13 / 13 / 3
Регистрация: 03.03.2011
Сообщений: 435
|
|
05.03.2011, 04:14 [ТС] | 13 |
Конечно double 500 не потащит, но 100 считает, а для моего уравнения много не надо, точность не позволяет)) int даёт факториал 19 высчитывать.
Спасиб всем за помощь) Я уже разобрался. Добавлено через 14 минут double 170! высчитывает.
0
|
4849 / 3270 / 466
Регистрация: 10.12.2008
Сообщений: 10,569
|
||||||||||||||||
05.03.2011, 04:41 | 14 | |||||||||||||||
0
|
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 23
|
||||||
20.04.2012, 19:07 | 15 | |||||
Проблема с warning C4700: использована неинициализированная локальная переменная "mas"
Посмотрите пожалуйста Найти сумму таких элементов, которые больше всех предшествующих им элементов. Пример: -2 6 7 5 14 5 2 16 -8 18; результат: -2+6+7+14+16+18=59.
0
|
1998 / 1598 / 488
Регистрация: 31.05.2009
Сообщений: 2,990
|
|
20.04.2012, 20:25 | 16 |
Дело в том, что вы инициализируете переменную sum первым элементом массива mas, которому ещё не присвоены никакие значения. Объявите и инициализируйте sum уже после ввода элементов массива.
1
|
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 23
|
|
22.04.2012, 21:12 | 17 |
long int mas[9]; // объявляем целочисленный массив
cout << "Enter elementi massiva: " << endl; for ( int i = 0; i <10; i++ ) // цикл для считывания чисел cin >> mas[i]; // считываем вводимые с клавиатуры числа cout << "mas = {"; for ( int i = 0; i<10; i++ ) // цикл для вывода элементов массива cout << mas[i] << " "; // выводим элементы массива на стандартное устройство вывода int sum=0; for ( int i = 9; i<=0; i-- ) for ( int j = 1; j<i-1; j++ ) { if (mas[i]> mas[j]) sum=sum+mas[i];}; // суммируем элементы массива cout << "}\nsum = " << sum << endl; } не работает. посмотрите пожалуйста
0
|
1998 / 1598 / 488
Регистрация: 31.05.2009
Сообщений: 2,990
|
||||||
22.04.2012, 22:42 | 18 | |||||
1
|
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 23
|
|
23.04.2012, 17:32 | 19 |
А без goto никак??(((
без него можно сделать? просто мы его не проходили
0
|
1998 / 1598 / 488
Регистрация: 31.05.2009
Сообщений: 2,990
|
||||||
23.04.2012, 17:50 | 20 | |||||
0
|
23.04.2012, 17:50 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Локальные переменные С++ ООП локальные переменные Неиспользуемые локальные переменные Локальные переменные-классы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |