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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 61
#1

Бесконечный цикл - C++

18.01.2011, 03:07. Просмотров 1928. Ответов 5
Метки нет (Все метки)

Задача: Ввести количество камней, ввести вес каждого камня, сложить камни в 2 кучки так чтобы разница между общими массами кучек были наименьшими.
Я решил сделать так: Сравнить вес перваого камня с суммой следующих, затем сравнить сумму первых 2х и сумму следующих и так далее.
Проблемма: Бесконечный цикл.
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
#include <iostream>
 
using namespace std;
 
main ()
{
     int i, j, n;
     cout << "n=";
     cin >> n;
     cout << "\n";
     int v[n];  
     
     for (i=0; i<n; ++i)
         {cout << "v[" << i << "]=";
          cin >> v[i];}
 
     int s1, s2, r;  
     s1 = 0;
     for (i=0; i<n-1; ++i)
         {s1 = s1 + v[i];
         cout << s1;
          s2 = 0;
          j=0;
          for (j = i+1; j<n; ++j) {s2 = v[j] + s2;}
         cout << s2; 
          if ( i = 0 ) {r = abs (s1 - s2);}
          if ( abs (s1 - s2)<r) {r = abs (s1 - s2);}} 
          
     cout << "Difference= " << r << "\n";
          
     system ( "Pause" );
     
     return 0;          
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2011, 03:07     Бесконечный цикл
Посмотрите здесь:

бесконечный цикл C++
C++ Бесконечный цикл
Бесконечный цикл C++
Бесконечный цикл C++
Бесконечный цикл C++
C++ Бесконечный цикл
Бесконечный цикл C++
C++ Бесконечный цикл
C++ Бесконечный цикл
C++ Бесконечный цикл for
C++ Бесконечный цикл
C++ Бесконечный цикл While

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
18.01.2011, 04:34     Бесконечный цикл #2
здесь нужно выделять динамическую память для массива либо использовать вектор
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 61
18.01.2011, 08:01  [ТС]     Бесконечный цикл #3
Ну я вектор то вроде задал
C++
1
int v[n];
или нужно vector v[n] как то?
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.01.2011, 08:23     Бесконечный цикл #4
GSUR, Бесконечный цикл у Вас из-за:
Внутри цикла по i:
Цитата Сообщение от GSUR Посмотреть сообщение
if ( i = 0 ) {r = abs (s1 - s2);}
Вы i присваиваете значение 0.
Наверное хотели написать: if(i==0)
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 61
02.02.2011, 18:52  [ТС]     Бесконечный цикл #5
Блин тут же другой символ проверки на равенство нежели в паскале, спасииибо. =) Невнимательность...
dampir_sanek
150 / 148 / 21
Регистрация: 09.02.2010
Сообщений: 407
02.02.2011, 20:33     Бесконечный цикл #6
GSUR, для невнимательности существует для начала f7, f8 (C++ Builder)
Yandex
Объявления
02.02.2011, 20:33     Бесконечный цикл
Ответ Создать тему
Опции темы

Текущее время: 19:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru