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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с массивами 
:(
    Опции темы
Енер
Дата 3.5.2011, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Доброго времени суток.
Есть задание написать программу с массивами.
Код

#include<iostream.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
#define i 4
#define j 4
#define N=4
void main()
{clrscr();
int mas[i][j];
    for (i=0;i<N;i++)
    for (j=0;j<N;j++)
        cin>>mas[i][j];
        cout<<mas[i][j];
    getch();
}

Но при компилировании выдает ошибки, подскажите, что я не так сделал и где ошибки у меня?
PM MAIL WWW ICQ   Вверх
xvr
Дата 3.5.2011, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

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



Цитата(Енер @  3.5.2011,  21:32 Найти цитируемый пост)
что я не так сделал и где ошибки у меня? 

Тут
Цитата(Енер @  3.5.2011,  21:32 Найти цитируемый пост)
#define N=4
Знак '=' лишний


PM MAIL   Вверх
Енер
Дата 3.5.2011, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Убрал, все равно ошибки, и не компилирует =(
PM MAIL WWW ICQ   Вверх
borisbn
Дата 3.5.2011, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

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



Цитата(Енер @  3.5.2011,  21:32 Найти цитируемый пост)
#define i 4

#define тупо заменяет в коде левую часть на правую. смотри, что получится с этим кодом
Цитата(Енер @  3.5.2011,  21:32 Найти цитируемый пост)
for (i=0;i<N;i++)

Код

for (4=0;4<N;4++)




--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Енер
Дата 3.5.2011, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



А как тогда правильно прописать? Мне просто нужно вывести на экран массив вида 4х4 (матрица).
PM MAIL WWW ICQ   Вверх
smalcom
Дата 4.5.2011, 03:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



забавный код. кто-то хорошо пошутил.

Цитата

Но при компилировании выдает ошибки, подскажите, что я не так сделал и где ошибки у меня? 

Поскольку не указан вывод компилятор, то предполагаеца наличие ошибок в организме ТС... Сходи к доктору, он тебе ответит на этот вопрос.

Цитата

А как тогда правильно прописать?

Учи матчасть. И напиши прогу или на C, или на C++, а не на обоих сразу.


--------------------
What DA F...???
PM MAIL WWW Skype Jabber   Вверх
OlegSK
Дата 4.5.2011, 07:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Код

#include<iostream>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
#define N 4

int main(int argc, char *argv[])
{
    system("CLS");

    int mas[N][N];
    for (int i=0; i<N; i++)
    {
        for (int j=0; j<N; j++)
        {
            std::cout << "mas[" << i << "][" << j << "] = ";
            std::cin>>mas[i][j];
        }
    }

    std::cout<<"\n";
    for (int i=0; i<N; i++)
    {
        for (int j=0; j<N; j++)
        {
            std::cout<<mas[i][j] << "\t";
        }
        std::cout<<"\n";
    }

    getch();
    return 0;
}

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


Эксперт
****


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

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



Цитата(OlegSK @  4.5.2011,  07:14 Найти цитируемый пост)
#include<iostream>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
Ты тоже определись сначала с языком программирования. Или Си (тогда убирай все потоки С++) или С++ (тогда хидеры надо менять на math.h -> cmath, stdlib -> cstdlib)
Цитата(OlegSK @  4.5.2011,  07:14 Найти цитируемый пост)
system("CLS");

ну и зачем это? Если используешь conio.h, то тогда пользуйся clrscr().
Цитата(OlegSK @  4.5.2011,  07:14 Найти цитируемый пост)
getch();

почему не std::cin.get()?
PM   Вверх
bems
Дата 4.5.2011, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

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



Цитата(smalcom @  4.5.2011,  03:52 Найти цитируемый пост)
И напиши прогу или на C, или на C++, а не на обоих сразу. 
почему?



--------------------
Обижено школьников: 8
PM MAIL   Вверх
mrbrooks
Дата 4.5.2011, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Цитата(bems @  4.5.2011,  10:38 Найти цитируемый пост)
почему?

потому что это признак плохого тона. если интересно глубже - почитайте Stephen C. Dewhurst'a. 
PM MAIL   Вверх
bems
Дата 4.5.2011, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

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



mrbrooks, то есть писать на С но иногда использовать простые классы без виртуальных методов это хуже чем писать на С и передавать указатель на структуру первым параметром в кучу функций которые не работают ни с чем кроме полей структуры?


--------------------
Обижено школьников: 8
PM MAIL   Вверх
mrbrooks
Дата 4.5.2011, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



bems, для такого рода вещей есть Object C
PM MAIL   Вверх
bsa
Дата 4.5.2011, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(bems @  4.5.2011,  10:50 Найти цитируемый пост)
писать на С но иногда использовать простые классы без виртуальных методов это хуже чем писать на С и передавать указатель на структуру первым параметром в кучу функций которые не работают ни с чем кроме полей структуры?

Так и скажи: "Знаю язык С, но из С++ понял только что такое классы". Лично я не вижу смысла в подобном использовании языков. Так как в данном случае теряется простора С, а все плюшки С++, которые делают код меньше, не используются. Какой смысл?

Кстати, когда я пишу программы на С, то в публичном хидере объявляю "классы" так:
Код
struct MyClass;
typedef struct MyClass MyClass;
MyClass* mcNew(void);
void mcDelete(MyClass *mc);
void mcMethod1(MyClass *mc, int data);
int mcMethod2(MyClass *mc);
...
Соответственно пользователь класса не знает всех подробностей реализации (инкапсуляция). Единственное, чего мне не хватает в С - это деструкторов, чтобы не городить кучу функций очистки в случае ветвлений...
PM   Вверх
bems
Дата 4.5.2011, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

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



Цитата(bsa @  4.5.2011,  16:58 Найти цитируемый пост)
Знаю язык С, но из С++ понял только что такое классы
Использовать Си мне приходится из-за того что пишу ядерный код, а там с полноценными плюсами не сложилось (ну кое-что есть, но "не то"), а нормальные языки требуют перевода тучи сишных хидеров. А ты подменяешь понятия. Я спрашивал лучше ли чистый С чем С с классами, и ничего не говорил о полноценном С++
И если бы не такое неприятное окружения, то я разумеется не стал бы писать ни на одном из этих языков, так что про "неосилил С++" речь не идет - он мне не нужен весь. Да и никому, лол

Цитата(bsa @  4.5.2011,  16:58 Найти цитируемый пост)
Так как в данном случае теряется простора С, а все плюшки С++, которые делают код меньше, не используются

Простота остаётся, это точно. Про плюшки - смотри выше.


--------------------
Обижено школьников: 8
PM MAIL   Вверх
smalcom
Дата 5.5.2011, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

почему?

потому что разруха в головах, а не сортирах (с) известный прохфесор



--------------------
What DA F...???
PM MAIL WWW Skype Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

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

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

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

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


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

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


 




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


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

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