Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2013, 01:25   #1
screammassacre
Пользователь
 
Регистрация: 14.11.2013
Сообщений: 12
По умолчанию Одноименные массивы С++

Друзья, виснет после ввода кол-ва элементов массива
Код:
#include <iostream>
#include <locale>
#include <cstdlib>
 
using namespace std;
void Func_into(int arr[], int SIZE);
void Func_out_one(int arr[], int SIZE);
void Func_out_two(int arr[], int SIZE);
void MyFunc(int arr[], int SIZE) ;
 
int main(int arr[], int SIZE)
{
    Func_into(arr,SIZE);
    Func_out_one(arr,SIZE);
    Func_out_two(arr,SIZE);
    MyFunc(arr,SIZE);
    system("PAUSE");
    return 0;
}
void Func_into(int arr[], int SIZE)
{
    cout<<"Enter the num of the massive";
    std::cin>>arr[SIZE];
	SIZE = sizeof(arr)/sizeof(int); // Подсчет количества элементов в массиве
    setlocale(0, "rus");
    cout << " Массив:\n" << endl;
}
void Func_out_one(int arr[], int SIZE)
{
    for(int i = 0; i < SIZE; i++)
    cout << " " << arr[i];
    cout << endl;
}
void Func_out_two(int arr[], int SIZE)
{
    for(int i = 0; i < SIZE; i++)
    cout << " " << arr[i];
    cout << endl;
}
void MyFunc(int arr[], int SIZE) 
{
    int x, y, z;
    cout << " Введите промежуток [x,y]:" << endl;
    cout << " x = "; 
    cin >> x;
    cout << " y = "; 
    cin >> y;
    cout << " Введите значение z:";
    cin >> z;
    for(int i = 0; i < SIZE; i++) 
    {
        if(arr[i] < x || arr[i] > y) 
        {
            arr[i] = z;
        }
        if(i=0)
        {
        cout<<"Мимо промежутка";
        }
        if(i=SIZE)
        {
            cout<<"Все в промежутке";
		}
    }
    return;
}

Последний раз редактировалось Stilet; 18.11.2013 в 12:02.
screammassacre вне форума Ответить с цитированием
Старый 18.11.2013, 01:48   #2
Igor95
Форумчанин
 
Регистрация: 03.01.2013
Сообщений: 388
По умолчанию

Код:
int main(int arr[], int SIZE)
Что ж это за параметры в в main передаете? Перегрузить что-ли пытались? Не пройдет такое
Igor95 вне форума Ответить с цитированием
Старый 18.11.2013, 02:09   #3
screammassacre
Пользователь
 
Регистрация: 14.11.2013
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Igor95 Посмотреть сообщение
Код:
int main(int arr[], int SIZE)
Что ж это за параметры в в main передаете? Перегрузить что-ли пытались? Не пройдет такое
выводит error C2133: arr: неизвестный размер
Код:
#include <iostream>
#include <locale>
#include <cstdlib>
 
using namespace std;
void Func_into(int arr[], int SIZE);
void Func_out_one(int arr[], int SIZE);
void Func_out_two(int arr[], int SIZE);
void MyFunc(int arr[], int SIZE) ;
 
int main()
{
	int *arr[];
	int SIZE;
    Func_into(*arr,SIZE);
    Func_out_one(*arr,SIZE);
    Func_out_two(*arr,SIZE);
    MyFunc(*arr,SIZE);
    system("PAUSE");
    return 0;
}
void Func_into(int arr[], int SIZE)
{
    cout<<"Enter the num of the massive";
    std::cin>>arr[SIZE];
	SIZE = sizeof(arr)/sizeof(int); // Подсчет количества элементов в массиве
    setlocale(0, "rus");
    cout << " Массив:\n" << endl;
}
void Func_out_one(int arr[], int SIZE)
{
    for(int i = 0; i < SIZE; i++)
    cout << " " << arr[i];
    cout << endl;
}
void Func_out_two(int arr[], int SIZE)
{
    for(int i = 0; i < SIZE; i++)
    cout << " " << arr[i];
    cout << endl;
}
void MyFunc(int arr[], int SIZE) 
{
    int x, y, z;
    cout << " Введите промежуток [x,y]:" << endl;
    cout << " x = "; 
    cin >> x;
    cout << " y = "; 
    cin >> y;
    cout << " Введите значение z:";
    cin >> z;
    for(int i = 0; i < SIZE; i++) 
    {
        if(arr[i] < x || arr[i] > y) 
        {
            arr[i] = z;
        }
        if(i=0)
        {
        cout<<"Мимо промежутка";
        }
        if(i=SIZE)
        {
            cout<<"Все в промежутке";
		}
    }
    return;
}

Последний раз редактировалось Stilet; 18.11.2013 в 12:03.
screammassacre вне форума Ответить с цитированием
Старый 18.11.2013, 06:03   #4
nikmoon
Форумчанин
 
Регистрация: 13.11.2013
Сообщений: 149
По умолчанию

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

Последний раз редактировалось nikmoon; 18.11.2013 в 06:22.
nikmoon вне форума Ответить с цитированием
Старый 18.11.2013, 20:38   #5
screammassacre
Пользователь
 
Регистрация: 14.11.2013
Сообщений: 12
Восклицание

Цитата:
Сообщение от nikmoon Посмотреть сообщение
Пипец какая-же каша в голове у человека, писавшего этот код.
Так, для размышления, в каком месте у тебя выделяется память под массив?
Код:
#include <iostream>
#include <locale>
#include <cstdlib>
 
using namespace std;
void Func_into(int arr[], int SIZE);
void Func_out_one(int arr[], int SIZE);
void Func_out_two(int arr[], int SIZE);
void MyFunc(int arr[], int SIZE) ;
 
int main()
{
	int i;
	int *arr[];
	int SIZE;
	int * a;
	new int[i];
    Func_into(*arr,SIZE);
    Func_out_one(*arr,SIZE);
    MyFunc(*arr,SIZE);
	Func_out_two(*arr,SIZE);
	delete [] a;
    system("PAUSE");
    return 0;
}
void Func_into(int arr[], int SIZE)
{
    cout<<"Enter the num of the massive";
    std::cin>>arr[SIZE-1];
	SIZE = sizeof(arr)/sizeof(int); // Подсчет количества элементов в массиве
    setlocale(0, "rus");
    cout << " Массив:\n" << endl;
}
void Func_out_one(int arr[], int SIZE)
{
    for(int i = 0; i < SIZE; i++)
    cout << " " << arr[i];
    cout << endl;
}
void Func_out_two(int arr[], int SIZE)
{
    for(int i = 0; i < SIZE; i++)
    cout << " " << arr[i];
    cout << endl;
}
void MyFunc(int arr[], int SIZE) 
{
    int x, y, z;
    cout << " Введите промежуток [x,y]:" << endl;
    cout << " x = "; 
    cin >> x;
    cout << " y = "; 
    cin >> y;
    cout << " Введите значение z:";
    cin >> z;
    for(int i = 0; i < SIZE; i++) 
    {
        if(arr[i] < x || arr[i] > y) 
        {
            arr[i] = z;
        }
		if(i==0)
        {
        cout<<"Мимо промежутка";
        }
		if(i==SIZE)
        {
            cout<<"Все в промежутке";
		}
    }
    return;
}

Последний раз редактировалось Stilet; 19.11.2013 в 23:23.
screammassacre вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одноименные массивы С++ screammassacre Общие вопросы C/C++ 5 15.11.2013 21:30
Двумерные массивы(матрица) 2)Строковые массивы(строки): 3)Структуры nuriyat Помощь студентам 1 21.01.2012 16:16
Двумерные массивы(массивы указателей на массивы) krytishka99 Помощь студентам 1 29.12.2011 19:51
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
одноименные функции Bayazet Общие вопросы Delphi 8 05.02.2009 17:42