2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 12:24 


13/08/15
98
Здравствуйте! Имеется вот такое задание:
Изображение


Делаем первое задание (12.207. а) в Visual Studio и всё работает. Теперь нужно, чтобы оно заработало в программе NetBeans. Копирую туда и ужасаюсь: огромное количество ошибок, которых я не понимаю. Помогите, пожалуйста, я только начинаю изучать программирование. Вот код, который мы с товарищем настрадали в VS:

Код:
include <locale>
#include <iostream>
#include <ctime>
#include <iomanip>
using namespace std;

int main()
{

    setlocale(LC_ALL, "rus");
    srand(time(0));

    int N;
    int M;

    cout << "Введите N - количество строк" << endl;
    cin >> N; //Ввод количества строк массива
    cout << "Введите M - количество столбцов" << endl;
    cin >> M;//Ввод количества столбцов массива

    int **arr = new int*[N];//объявление массива

    for (int count = 0; count < N; count++)//выделение памяти под массив
        arr[count] = new int[M];

    for (int row = 0; row < N; row++) //заполнение элементами
    {
        for (int col = 0; col < M; col++)
        {
            cin>>arr[row][col];
        }
    }
    for (int row = 0; row < N; row++)
    {
        for (int col = 0; col < M; col++)
        {
            if ((arr[row][col]) % 2 == 1)
                arr[row][col] -= arr[N-1][col];
        }
    }
    cout << endl << "наш массив" << endl;
    for (int row = 0; row < N; row++)// вывод на экран
    {
        for (int col = 0; col < M; col++)
        {
            cout << setw(4) << arr[row][col];
        }
        cout << endl;
    }

    for (int count = 0; count < N; count++)
        delete[] arr[count];

    delete[] arr;

    system("pause");
    return 0;
}

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 12:42 
Заслуженный участник
Аватара пользователя


06/10/08
6422
У Вас потерялся # в начале.

something strange в сообщении #1215691 писал(а):
Копирую туда и ужасаюсь: огромное количество ошибок, которых я не понимаю. Помогите, пожалуйста, я только начинаю изучать программирование.
Приведите текст ошибок.

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 12:45 


13/08/15
98
Это я не скопировал сюда случайно, прошу прощения.
Текст ошибок:

Код:
main.c:10:18: locale: No such file or directory
main.c:11:20: iostream: No such file or directory
main.c:12:17: ctime: No such file or directory
main.c:13:19: iomanip: No such file or directory
main.c:14: error: parse error before "namespace"
main.c:14: warning: data definition has no type or storage class
main.c: In function `main':
main.c:19: error: `LC_ALL' undeclared (first use in this function)
main.c:19: error: (Each undeclared identifier is reported only once
main.c:19: error: for each function it appears in.)
main.c:25: error: `cout' undeclared (first use in this function)
main.c:25: error: `endl' undeclared (first use in this function)
main.c:26: error: `cin' undeclared (first use in this function)
main.c:30: error: `new' undeclared (first use in this function)
main.c:30: error: parse error before "int"
main.c:32: error: 'for' loop initial declaration used outside C99 mode
main.c:33: error: parse error before "int"
main.c:35: error: 'for' loop initial declaration used outside C99 mode
main.c:37: error: 'for' loop initial declaration used outside C99 mode
main.c:42: error: redefinition of 'row'
main.c:35: error: previous definition of 'row' was here
main.c:42: error: 'for' loop initial declaration used outside C99 mode
main.c:44: error: 'for' loop initial declaration used outside C99 mode
main.c:51: error: redefinition of 'row'
main.c:42: error: previous definition of 'row' was here
main.c:51: error: 'for' loop initial declaration used outside C99 mode
main.c:53: error: 'for' loop initial declaration used outside C99 mode
main.c:60: error: redefinition of 'count'
main.c:32: error: previous definition of 'count' was here
main.c:60: error: 'for' loop initial declaration used outside C99 mode
main.c:61: error: `delete' undeclared (first use in this function)
main.c:61: error: parse error before ']' token
main.c:63: error: parse error before ']' token
make[2]: *** [build/Debug/Cygwin-Windows/main.o] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 12:49 
Заслуженный участник
Аватара пользователя


06/10/08
6422
У Вас файл компилируется как программа на C, а не на C++. Возможно, хватит переименовать его из main.c в main.cpp.

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 12:51 
Заслуженный участник


28/04/09
1933
Также забыт заголовочный файл cstdlib, который скорее всего подключается в стандартной библиотеке vc++ в один из перечисленных в программе заголовочных файлов. Если подключить этот файл, компиляция проходит успешно с использованием g++ 7.1 и clang++ 4.0.0.

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 13:16 


13/08/15
98
Я пока ещё плохо понимаю разницу между С и С++ :-( Но вроде бы этот NetBeans как раз в С работает...

-- 11.05.2017, 17:18 --

EtCetera в сообщении #1215702 писал(а):
Если подключить этот файл, компиляция проходит успешно с использованием g++ 7.1 и clang++ 4.0.0.

Это что такое? Дополнительные пакеты? Вы говорите про компиляцию в NetBeans? Я в данный момент не за тем компьютером... Проверю вечером, спасибо!

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 15:08 
Заслуженный участник


28/04/09
1933
Ваш код написан на C++ (используются потоки ввода/вывода, new/delete).

something strange в сообщении #1215709 писал(а):
EtCetera в сообщении #1215702 писал(а):
Если подключить этот файл, компиляция проходит успешно с использованием g++ 7.1 и clang++ 4.0.0.

Это что такое? Дополнительные пакеты? Вы говорите про компиляцию в NetBeans?
Это компиляторы C++. NetBeans — всего лишь оболочка, IDE. В качестве компилятора у Вас скорее всего используется gcc/g++. Но это так, всего лишь телепатическая разминка с моей стороны. Вам лучше знать, что используется для сборки проекта (загляните в его настройки и настройки среды).

Также замечу, что код Ваш, хотя и использует возможности C++, но написан в "стиле C". Вместо обычных динамических массивов лучше использовать какой-нибудь контейнер стандартной библиотеки (например, std::vector) или специализацию умного указателя std::unique_ptr, поддерживающую работу с динамическими массивами. Для генерации псевдослучайных чисел лучше использовать возможности соответствующей библиотеки (заголовочный файл random). Код лучше разбивать на смысловые части, оформляемые в виде функций и/или методов классов, и т.д.

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение11.05.2017, 16:39 


13/08/15
98
Спасибо за помощь и за рекомендации! Мне это всё ещё предстоит освоить, это только моя вторая программа в жизни :D

-- 11.05.2017, 21:18 --

Не работает. Снова всё красным. Подключение файла этого не помогло...

-- 11.05.2017, 21:19 --

А как убрать отсюда эти возможности С++? Где они? Может в этом дело? Как сделать просто С?

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение12.05.2017, 00:42 
Заслуженный участник


31/12/05
1529
something strange в сообщении #1215749 писал(а):
Не работает. Снова всё красным. Подключение файла этого не помогло...
А файл из main.c в main.cpp переименовали?

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение12.05.2017, 08:41 


13/08/15
98
Файла main там нет вообще... Но есть файлы с расширением .cpp

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение12.05.2017, 16:27 
Заслуженный участник


31/12/05
1529
something strange в сообщении #1215893 писал(а):
Файла main там нет вообще... Но есть файлы с расширением .cpp
А это что?

Код:
main.c:10:18: locale: No such file or directory
main.c:11:20: iostream: No such file or directory
main.c:12:17: ctime: No such file or directory
main.c:13:19: iomanip: No such file or directory

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение12.05.2017, 18:10 


13/08/15
98
Не понимаю... В папке с программой нет файла с именем main... :shock:

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение12.05.2017, 20:01 
Заслуженный участник


31/12/05
1529
something strange в сообщении #1216025 писал(а):
Не понимаю... В папке с программой нет файла с именем main... :shock:
В какой папке? С какой программой? Посмотрите на экран и скажите имя текущего редактируемого файла. Оно вверху на активной закладке над окном редактора. На той, которая с желтенькой (по умолчанию) полоской.

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение12.05.2017, 20:15 


13/08/15
98
Dermo1.cpp

 Профиль  
                  
 
 Re: Нужна помощь с С++ и NetBeans
Сообщение13.05.2017, 01:27 
Заслуженный участник


31/12/05
1529
something strange в сообщении #1216058 писал(а):
Dermo1.cpp
Дайте скриншот, где открыт файл с этим именем и видны те сообщения об ошибках, о которых вы писали.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: granit201z


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group