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

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

Войти
Регистрация
Восстановить пароль
 
VВладимир
1 / 1 / 0
Регистрация: 08.10.2012
Сообщений: 50
#1

Применение циклов в расчетах с матрицами - C++

20.10.2012, 13:00. Просмотров 270. Ответов 3
Метки нет (Все метки)

Здравствуйте! Помогите, пожалуйста разобраться в следующей проблеме: пытаюсь прибавить к каждому элементу матрицы одно и тоже число, для чего создаю цикл. Но после компиляци выводится какой-то непонятный результат. Подскажите, пожалуйста, в чем проблема. Заранее благодарен
Ниже привожу код программы:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for (k1=1; k1<=20; k1++)
double dkiMatrix[size][size] = {120+k1, 20+k1, 100+k1, 50+k1,
                                      110+k1, 20+k1, 90+k1, 45+k1,
                                      105+k1, 18+k1, 85+k1, 43+k1,
                                      100+k1, 16+k1, 83+k1, 40+k1};
 
cout << Rus("Вывод значений матрицы желаемого электропотребления dki для январей 2010, 2011, 2012, 2013 годов на i шаге")<< endl;   
dkiMatrix[1][4] = 0;
 
for(i = 0; i < size; i++)
{
for(j = 0; j < size; j++)
{
cout << dkiMatrix[i][j] << ", ";
}
cout << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2012, 13:00     Применение циклов в расчетах с матрицами
Посмотрите здесь:

C++ Применение циклов, условных операторов
C++ Кролики и гуси (применение циклов)
C++ класс с матрицами
C++ Линейный Метод Наименьших Квадратов, ошибка в расчетах
Потеря значений переменных при расчетах C++
Операции с матрицами C++
C++ Ошибка в расчетах
C++ Применение циклов для расчета параметров объектов на С++
Анимация через применение вложенных циклов C++
Программа с матрицами C++
C++ Работа с матрицами
C++ Операции с матрицами

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rexer
163 / 162 / 20
Регистрация: 10.10.2010
Сообщений: 724
20.10.2012, 13:16     Применение циклов в расчетах с матрицами #2
не правильно так
вы в цикле 20 раз создаете матрицу и что-то в нее пишите,причем каждый раз новую матрицу.
это же бред
сначала объявите массив,ДО цикла
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
double matrix[size][size];
for(int i = 0; i < size; i++)
{
for(int j = 0; j < size; j++)
matrix[i][j] += 1 //или там что вы прибавить хотите
}
//дальше не просто вывод,а вывод такой
for(int i = 0; i < size; i++)
{
     for(int j = 0; j < size; j++)
           cout << matrix[i][j] << " ";
cout << endl;
}
что-то подобное надо
VВладимир
1 / 1 / 0
Регистрация: 08.10.2012
Сообщений: 50
20.10.2012, 15:21  [ТС]     Применение циклов в расчетах с матрицами #3
Спасибо за помощь, я понял общий принцип прибавления числа к матрице. Однако Ваша программа прибавляет заданное число только один раз. Поэтому я в цикл задания счетчика добавил еще цикл
f
C++
1
2
or (k=1; k<=23; k++)
{dkiMatrix[i][j] += 1; }
, который как раз наращивает сумму столько раз, сколько задано в цикле.
Результат получился приемлемый. Выкладываю получившийся код

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
//задание цикла: объявление массива 
double dkiMatrix[size][size] = {120, 20, 100, 50,
                                      110, 20, 90, 45,
                                      105, 18, 85, 43,
                                      100, 16, 83, 40};
 
 
//задание цикла: задание счетчика 
//double dkiMatrix[size][size];
for(int i = 0; i < size; i++)
{
for(int j = 0; j < size; j++)
  for (k=1; k<=23; k++)
{dkiMatrix[i][j] += 1; 
}}
//задание цикла: вывод данных
cout << Rus("Вывод значений матрицы желаемого электропотребления dki для январей 2010, 2011, 2012, 2013 годов на i шаге")<< endl;   
dkiMatrix[1][4] = 0;
for(int i = 0; i < size; i++)
{
     for(int j = 0; j < size; j++)
           cout << dkiMatrix[i][j] << " ";
cout << endl;
}
Rexer
163 / 162 / 20
Регистрация: 10.10.2010
Сообщений: 724
21.10.2012, 00:28     Применение циклов в расчетах с матрицами #4
Ну я же написал примерно как,а дальше вы сами модифицируйте его.
Главное запомните,что массив надо инициализировать ДО циклов,потому что там свои правила,потом почитаете про области видимости и поймете.
Свой код заключайте в теги форматирования,чтобы было удобней читать на форуме,это кнопочка c++,под надписью шрифты и B.
Удачи в дальнейшем!
Yandex
Объявления
21.10.2012, 00:28     Применение циклов в расчетах с матрицами
Ответ Создать тему
Опции темы

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