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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2013, 21:22   #1
CHELOVEKPAUK
Новичок
Джуниор
 
Регистрация: 20.10.2013
Сообщений: 1
По умолчанию C++ Указатели и массивы

Здравствуйте!
Такая проблема: при полном заполнении массива (т.е 5 значениями) программа зависает, и выскакивает ошибка (см.вложение). Также там описано задание, и соответственно листинг 7.7, который это задание требует.

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

Код:
#include <iostream>
#include <Windows.h>
using namespace std;
 
#define rus setlocale(0,"rus");SetConsoleCP(1251);SetConsoleOutputCP(1251);

double* fill_array(double*,int);
void show_array(const double*,double*);
void revalue(int,double*,double*);

int main()
{
	rus;
	cout << "Введите коэффициент переоценки: ";
	int factor;
	cin >> factor;
	double arr[5] = {0};
	double* pt = fill_array(arr,5);
	revalue(factor, arr, pt);
	show_array(arr,pt);
	system("pause");
	return 0;
}

double* fill_array(double* arr, int n)
{
	int i = 0;
	rus;
	for (i; i < 5; i++)
	{
		cout << "Введите значение №" << i+1 << " : ";
		cin >> arr[i];
		if (!cin)
		{
			cout << "Ввод прекращен. Введено неверное значение." << endl;
			break;
		}
	}
	return &arr[i];
}

void show_array(const double* arr, double* end)
{
	for (int i = 0; arr[i] != *end; i++)
		cout << "Значение №" << i+1 << ": " << arr[i] << endl;
}

void revalue(int factor, double* arr, double* end)
{
	for (int i = 0; arr != end; i++)
		arr[i] *= factor;
}
Изображения
Тип файла: jpg 1.jpg (73.1 Кб, 141 просмотров)
Тип файла: jpg 3.jpg (45.4 Кб, 54 просмотров)
Тип файла: jpg 2.jpg (42.9 Кб, 53 просмотров)
CHELOVEKPAUK вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы и Указатели (Си) Segatron Помощь студентам 3 12.12.2011 13:17
указатели на массивы и массивы указателей blacktener Общие вопросы C/C++ 16 13.06.2011 20:45
Массивы и указатели (С++) slavy Помощь студентам 4 26.08.2009 23:33
[C] массивы, указатели, двойные указатели. Iggel Общие вопросы C/C++ 5 05.05.2009 12:39
Указатели и массивы. (С++) Eddie Помощь студентам 8 24.04.2009 19:48