Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сложение двух массивов. 
:(
    Опции темы
ATAMAN200
Дата 21.11.2010, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 26.9.2010

Репутация: нет
Всего: нет



Что то я не как не пойму если я пишу вот такой код

Код

#include "stdafx.h"
#include "conio.h"
 
int aaa[3] = {2,3,4},
        bbb[3] = {5,6,7},
        ccc[9];
 
int main()
{
        for (int ddd=0; ddd < 3; ddd++)
        {
                for (int eee=0; eee < 3; eee++)
                {
                        ccc[eee] = aaa[eee] + bbb[ddd];
                }
        }
 
        for (int fff=0; fff < 9; fff++)
        {
                printf("%i\n",ccc[fff]);
        }
        getch();
        return 0;
}



то результат должен быть вот такой

7
8
9
8
9
10
9
10
11

но что то не то, а что не то не понятно потому что выходит так

9
10
11
0
0
0
0
0
0 
PM MAIL   Вверх
mes
Дата 21.11.2010, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(ATAMAN200 @  21.11.2010,  19:38 Найти цитируемый пост)
ccc[eee] = 

eee изменяется от 0 до 2х

можно так : 
Код

ccc[ddd+3*eee]
//или
ccc[ddd*3+eee]


Добавлено через 4 минуты и 54 секунды
Цитата(ATAMAN200 @  21.11.2010,  19:38 Найти цитируемый пост)
 ccc[9];

или объявить ccc двухмерным массивом, тогда:
Код

ccc[3][3];

...
ccc[ddd][eee]=


Это сообщение отредактировал(а) mes - 21.11.2010, 20:55


--------------------
PM MAIL WWW   Вверх
bsa
Дата 22.11.2010, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



ATAMAN200, переменный давай осмысленные названия.
PM   Вверх
nyar
Дата 23.11.2010, 02:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 23.11.2010

Репутация: нет
Всего: нет



Кто тебя учил так переменные обозначатьsmile , переменный должны отображать суть хранимых данных, а в циклах for и т.д. обычно используют переменный i и j. И вообще тебе нужно не сложение записать, сложение есть сложение(извините за тавтологию) всех соответствующих элементов массивов между собой.
скажу лишь что ошибка в ccc[] сам разберёшься лучше усвоишь)))
Вот рабочий код:(пользоваться в крайнем случае)smile
Код

#include "stdafx.h"
#include "conio.h"
 

 
int main()
{
    int array_1[3]={2,3,4}, array_2[3]={5,6,7}, array_3[9];//array в переводе массив:)

    for (int k=0,i=0; i<=2; i++)
    {
        for (int j=0; j<=2; k++,j++)
        {    
            array_3[k] = array_1[i] + array_2[j];    
        }
    } 

    for (int k=0; k<=8; k++)   
    { 
            printf("%i\n", array_3[k]);   
    } 
    getch(); 
    return 0;
}

PM MAIL   Вверх
ATAMAN200
Дата 23.11.2010, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 26.9.2010

Репутация: нет
Всего: нет



Цитата(nyar @ 23.11.2010,  02:00)
Кто тебя учил так переменные обозначатьsmile , переменный должны отображать суть хранимых данных, а в циклах for и т.д. обычно используют переменный i и j. И вообще тебе нужно не сложение записать, сложение есть сложение(извините за тавтологию) всех соответствующих элементов массивов между собой.
скажу лишь что ошибка в ccc[] сам разберёшься лучше усвоишь)))
Вот рабочий код:(пользоваться в крайнем случае)smile
Код

#include "stdafx.h"
#include "conio.h"
 

 
int main()
{
    int array_1[3]={2,3,4}, array_2[3]={5,6,7}, array_3[9];//array в переводе массив:)

    for (int k=0,i=0; i<=2; i++)
    {
        for (int j=0; j<=2; k++,j++)
        {    
            array_3[k] = array_1[i] + array_2[j];    
        }
    } 

    for (int k=0; k<=8; k++)   
    { 
            printf("%i\n", array_3[k]);   
    } 
    getch(); 
    return 0;
}

То есть из твоего премера я понял что в моём примере цикл for (int eee=0; eee < 3; eee++)
перечесляется в цикле for (int ddd=0; ddd < 3; ddd++) три раза подряд и каждый раз int eee=0 начисляется с нуля просто int eee=0 не когда не выдет больше трёх.
Похоже твой урок прошол не впустую.
СПС

Добавлено через 10 минут и 31 секунду
Цитата(bsa @ 22.11.2010,  01:18)
ATAMAN200, переменный давай осмысленные названия.

Я читал гниги "программирование С++" там в примерах кто как обзывает переменные.
PM MAIL   Вверх
bsa
Дата 24.11.2010, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(ATAMAN200 @  23.11.2010,  19:27 Найти цитируемый пост)
Я читал гниги "программирование С++" там в примерах кто как обзывает переменные. 

Ты не только читай книги, но и слушай бывалых. Умный от глупого тем и отличается, что учится не только на своих ошибках.  smile 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0573 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.